Протокол. 1. На основе предоставленных вм или шаблонов вм создайте отсутствующие виртуальные машины в соответствии со схемой
Скачать 336 Kb.
|
1. На основе предоставленных ВМ или шаблонов ВМ создайте отсутствующие виртуальные машины в соответствии со схемой. Убедитесь что все ВМ созданы в соотведствии со схемой 2. Имена хостов в созданных ВМ должны быть установлены в соответствии со схемой. RTR-L en conf t hostname RTR-L do wr RTR-R en conf t hostname RTR-R do wr SRV hostnamectl set-hostname SRV WEB-L hostnamectl set-hostname WEB-L WEB-R hostnamectl set-hostname WEB-R ISP hostnamectl set-hostname ISP CLI hostnamectl set-hostname CLI 3. Адресация должна быть выполнена в соответствии с Таблицей 1; RTR-L int e0/0 ip address 4.4.4.100 255.255.255.0 no sh int e0/1 ip address 192.168.100.254 255.255.255.0 no sh ip domain name int.demo.wsr ip name-server 192.168.100.200 RTR-R int e0/0 ip address 5.5.5.100 255.255.255.0 no sh int e0/1 ip address 172.16.100.254 255.255.255.0 no sh ip domain name int.demo.wsr ip name-server 192.168.100.200 SRV Nano /etc/network/interfaces Auto ens3 Iface ens3 inet static Address 192.168.100.200/24 Gateway 192.168.100.254 Dns-domain int.demo.wsr demo.wsr Dns-nameserver 192.168.100.200 3.3.3.1 Apt install resolvconf Nano /etc/resolv.conf nano /etc/apt/source.list deb http://172.16.254.1/debian bullseye main WEB-L Nano /etc/network/interfaces Auto ens3 Iface ens3 inet static Address 192.168.100.100/24 Gateway 192.168.100.254 Dns-domain int.demo.wsr Dns-nameserver 192.168.100.200 Apt install resolvconf Nano /etc/resolv.conf nano /etc/apt/source.list deb http://172.16.254.1/debian bullseye main WEB-R Nano /etc/network/interfaces Auto ens3 Iface ens3 inet static Address 172.16.100.100/24 Gateway 172.16.100.254 Dns-domain int.demo.wsr Dns-nameserver 192.168.100.200 Apt install resolvconf Nano /etc/resolv.conf nano /etc/apt/source.list deb http://172.16.254.1/debian bullseye main ISP Nano /etc/network/interfaces Auto ens3 Iface ens3 inet dhcp Nano /etc/network/interfaces Auto ens4 Iface ens4 inet static Address 4.4.4.1/24 Nano /etc/network/interfaces Auto ens5 Iface ens5 inet static Address 5.5.5.1/24 Nano /etc/network/interfaces Auto ens6 Iface ens6 inet static Address 3.3.3.1/24 Dns-domain demo.wsr Dns-nameserver 3.3.3.1 Apt install resolvconf Nano /etc/resolv.conf nano /etc/apt/source.list deb http://172.16.254.1/debian bullseye main CLI $GetIndex = Get-NetAdapter New-NetIPAddress -InterfaceIndex $GetIndex.ifIndex -IPAddress 3.3.3.10 -PrefixLength 24 -DefaultGateway 3.3.3.1 Set-DnsClientServerAddress -InterfaceIndex $GetIndex.ifIndex -ServerAddresses ("3.3.3.1") 1. Сети, подключенные к ISP, считаются внешними: ISP forward nano /etc/sysctl.conf net.ipv4.ip_forward=1 sysctl -p RTR-L Gitw ip route 0.0.0.0 0.0.0.0 4.4.4.1 RTR-R gitw ip route 0.0.0.0 0.0.0.0 5.5.5.1 2. Платформы контроля трафика, установленные на границах регионов, должны выполнять трансляцию трафика, идущего из соответствующих внутренних сетей во внешние сети стенда и в сеть Интернет. RTR-L NAT на внутр. интерфейсе - ip nat inside на внешн. интерфейсе - ip nat outside int e0/0 ip nat outside ! int e0/1 ip nat inside ! access-list 1 permit 192.168.100.0 0.0.0.255 ip nat inside source list 1 interface e0/0 overload RTR-R NAT int e0/0 ip nat outside ! int e0/1 ip nat inside ! access-list 1 permit 172.16.100.0 0.0.0.255 ip nat inside source list 1 interface e0/0 overload ISP NAT Apt install iptables Nano /etc/iptables.conf nano /etc/iptables.up iptables-restore < /etc/iptables.conf Автозагрузка nano /etc/crontab В самом низу @reboot root . /etc/iptables.up Nat Iptables -t nat -A POSTROUTING -s 4.4.4.0/24 -o ens3 -j MASQUERADE Iptables -t nat -A POSTROUTING -s 5.5.5.0/24 -o ens3 -j MASQUERADE 3. Между платформами должен быть установлен защищенный туннель, позволяющий осуществлять связь между регионами с применением внутренних адресов. RTR-L GRE interface Tunnel 1 ip address 172.16.1.1 255.255.255.0 tunnel mode gre ip tunnel source 4.4.4.100 tunnel destination 5.5.5.100 router ospf 1 network 192.168.100.0 0.0.0.255 area 0 network 172.16.1.0 0.0.0.255 area 0 RTR-R interface Tunne 1 ip address 172.16.1.2 255.255.255.0 tunnel mode gre ip tunnel source 5.5.5.100 tunnel destination 4.4.4.100 router ospf 1 network 172.16.100.0 0.0.0.255 area 0 network 172.16.1.0 0.0.0.255 area 0 RTR-L crypto isakmp policy 1 encr aes authentication pre-share hash sha256 group 14 ! crypto isakmp key mykey address 5.5.5.100 crypto isakmp nat keepalive 5 ! crypto ipsec transform-set TSET esp-aes 256 esp-sha256-hmac mode tunnel ! crypto ipsec profile VTI set transform-set TSET interface Tunnel1 tunnel mode ipsec ipv4 tunnel protection ipsec profile VTI RTR-R conf t crypto isakmp policy 1 encr aes authentication pre-share hash sha256 group 14 ! crypto isakmp key mykey address 4.4.4.100 crypto isakmp nat keepalive 5 ! crypto ipsec transform-set TSET esp-aes 256 esp-sha256-hmac mode tunnel ! crypto ipsec profile VTI set transform-set TSET interface Tunnel1 tunnel mode ipsec ipv4 tunnel protection ipsec profile VTI 4. Платформа управления трафиком RTR-L выполняет контроль входящего трафика согласно следующим правилам: RTR-L ACL ip access-list extended L permit udp host 5.5.5.1 eq 123 any permit tcp any host 4.4.4.100 eq 80 permit tcp any host 4.4.4.100 eq 443 permit tcp any host 4.4.4.100 eq 1111 permit tcp any host 4.4.4.100 eq 111 permit tcp any host 4.4.4.100 eq 2049 permit udp host 5.5.5.100 host 4.4.4.100 eq 500 permit esp any any permit icmp any any permit gre any any permit udp any eq domain any permit udp any eq ntp any deny tcp any any deny udp any any int e0/0 1 ip access-group L in 5. Платформа управления трафиком RTR-R выполняет контроль входящего трафика согласно следующим правилам: RTR-R ACL ip access-list extended R permit tcp any host 5.5.5.100 eq 80 permit tcp any host 5.5.5.100 eq 443 permit tcp any host 5.5.5.100 eq 1112 permit tcp any host 5.5.5.100 eq 111 permit tcp any host 5.5.5.100 eq 2049 permit udp host 4.4.4.100 host 5.5.5.100 eq 500 permit esp any any permit icmp any any permit udp any eq domain any permit udp any eq ntp any deny tcp any any deny udp any any int gi 1 ip access-group R in 6. Обеспечьте настройку служб SSH региона Left: RTR-L SSH ip domain name int.demo.wsr crypto key generate rsa 512 service password-encryption username user privilege 15 password P@ssw0rd aaa new-model line vty 0 4 transport input ssh logging synchronous exec-timeout 60 0 exit ip nat inside source static tcp 192.168.100.100 22 4.4.4.100 2222 RTR-R SSH ip domain name int.demo.wsr crypto key generate rsa 512 service password-encryption username user privilege 15 password P@ssw0rd aaa new-model line vty 0 4 transport input ssh logging synchronous exec-timeout 60 0 ip nat inside source static tcp 172.16.100.100 22 5.5.5.100 2244 SSH WEB-L apt-cdrom add apt install -y openssh-server ssh Port 22 SyslogFacility AUTPRIV PermitRootLogin yes systemctl start sshd systemctl enable ssh SSH WEB-R apt-cdrom add apt install -y openssh-server ssh Port 22 SyslogFacility AUTPRIV PermitRootLogin yes systemctl start sshd systemctl enable ssh Инфраструктурные службы Таблица 2. DNS-записи зон 1. Выполните настройку первого уровня DNS-системы стенда: ISP apt install -y bind9 nano /etc/default/named resolvconf=yes OPTIONS=”-4 -u bind” Cp /etc/bind/db.local /etc/bind/demo.wsr Nano /etc/bind/demo.wsr Nano /etc/bind/named.conf.default-zones Nano /etc/bind/ named.conf.options Systemctl restart bind9 2. Выполните настройку второго уровня DNS-системы стенда; SRV apt install -y bind9 nano /etc/default/named resolvconf=yes OPTIONS=”-4 -u bind” Cp /etc/bind/db.local /etc/bind/int.demo.wsr Cp /etc/bind/db.0 /etc/bind/db.16.172 Cp /etc/bind/db.0 /etc/bind/db.168.192 Nano /etc/bind/int.demo.wsr (без записи fs) Nano /etc/bind/db.16.172 Nano /etc/bind/db.168.192 (без записи fs) Nano /etc/bind/named.conf.default-zones Nano /etc/bind/named.conf.options 3. Выполните настройку первого уровня системы синхронизации времени: ISP NTP apt install chrony nano /etc/chrony/chrony.conf Комментируем pool 2.debian.pool.ntp.org iburst systemctl restart chrony systemctl restart chronyd 4. Выполните конфигурацию службы второго уровня времени на SRV SRV NTP apt install chrony nano /etc/chrony/chrony.conf Комментируем pool 2.debian.pool.ntp.org iburst systemctl restart chrony systemctl restart chronyd CLI NTP Панель управления – часы, язык и регоин – дата и время – время по интернету – изменить параметры - вписываем isp.demo.wsr RTR-L NTP ip domain name int.demo.wsr ip name-server 192.168.100.200 ntp server srv.int.demo.wsr RTR-R NTP ip domain name int.demo.wsr ip name-server 192.168.100.200 ntp server srv.int.demo.wsr WEB-L NTP apt-cdrom add apt install -y chrony nano /etc/chrony/chrony.conf server srv.int.demo.wsr iburst prefer allow 192.168.100.0/24 systemctl restart chrony WEB-R NTP apt-cdrom add apt install -y chrony nano /etc/chrony/chrony.conf server srv.int.demo.wsr iburst prefer allow 192.168.100.0/24 systemctl restart chrony 5. Реализуйте файловый SMB-сервер на базе SRV SRV RAID0 Mdadm –zero-superblock –-force /dev/vd{b,c} mdadm --create /dev/md1 --level=0 --raid-devices=2 /dev/vdb /dev/vdc mkfs.ext4 -F /dev/md1 /dev/md0 /opt/raid/md0 ext4 defaults,nofail,discard 0 0 SRV SMB Apt install nfs-kernel-server Mkdir /mnt/storage Chmod 777 /mnt/storage Nano /etc/exports /mnt/storage *(rw,sync,no_root_squash,no_subtree_check) 6. Сервера WEB-L и WEB-R должны использовать службу, настроенную на SRV, для обмена файлами между собой: WEB-L SMB apt install nfs-common nano /etc/fstab srv.int.demo.wsr:/mnt/storage /opt/share nfs nofail,_netdev 0 0 mkdir /opt/share mount -a WEB-R SMB apt install -y cifs-utils nano /etc/fstab srv.int.demo.wsr:/mnt/storage /opt/share nfs nofail,_netdev 0 0 mkdir /opt/share mount -a 7. Выполните настройку центра сертификации на базе SRV: SRV ADCS Инфраструктура веб-приложения. Данный блок подразумевает установку и настройку доступа к веб-приложению, выполненному в формате контейнера Docker Образ Docker (содержащий веб-приложение) расположен на ISO-образе дополнительных материалов; Выполните установку приложения AppDocker0; Пакеты для установки Docker расположены на дополнительном ISO-образе; Инструкция по работе с приложением расположена на дополнительном ISO-образе; Необходимо реализовать следующую инфраструктуру приложения. Клиентом приложения является CLI (браузер Edge); Хостинг приложения осуществляется на ВМ WEB-L и WEB-R; Доступ к приложению осуществляется по DNS-имени www.demo.wsr; Имя должно разрешаться во “внешние” адреса ВМ управления трафиком в обоих регионах; При необходимости, для доступа к к приложению допускается реализовать реверс-прокси или трансляцию портов; Доступ к приложению должен быть защищен с применением технологии TLS; Необходимо обеспечить корректное доверие сертификату сайта, без применения “исключений” и подобных механизмов; Незащищенное соединение должно переводится на защищенный канал автоматически; Необходимо обеспечить отказоустойчивость приложения; Сайт должен продолжать обслуживание (с задержкой не более 25 секунд) в следующих сценариях: Отказ одной из ВМ Web Отказ одной из ВМ управления трафиком. WEB-L Doc 1. Образ Docker (содержащий веб-приложение) расположен на ISO-образе дополнительных материалов; 2. Пакеты для установки Docker расположены на дополнительном ISO-образе; apt-cdrom add apt install -y docker-ce systemctl start docker systemctl enable docker mkdir /mnt/app mount /dev/sr1 /mnt/app docker load < /mnt/app/app.tar docker images docker run --name app -p 8080:80 -d app docker ps WEB-R Doc apt-cdrom add apt install -y docker-ce systemctl start docker systemctl enable docker mkdir /mnt/app mount /dev/sr1 /mnt/app docker load < /mnt/app/app.tar docker images docker run --name app -p 8080:80 -d app docker ps RTR-L no ip http secure-server wr reload ip nat inside source static tcp 192.168.100.100 80 4.4.4.100 80 ip nat inside source static tcp 192.168.100.100 443 4.4.4.100 443 RTR-R no ip http secure-server wr reload ip nat inside source static tcp 172.16.100.100 80 5.5.5.100 80 ip nat inside source static tcp 172.16.100.100 443 5.5.5.100 443 5. Необходимо обеспечить отказоустойчивость приложения; WEB-L ssl nano /etc/nginx/sites-available/default upstream backend { server 192.168.100.100:80 fail_timeout=25; server 172.16.100.100:80 fail_timeout=25; } server { listen 80 default_server; server_name www.demo.wsr; location / { proxy_pass http://172.17.0.2:5000; } } systemctl reload nginx WEB-R ssl ssh nano /etc/ssh/sshd_config systemctl restart sshd CLI ssl scp -P 2244 'root@5.5.5.100:/opt/share/ca.cer' C:\Users\user\Desktop\ |