# Отчет о проделанной работе.
> Автор: Юденков Алексей
## Занятие 1
- [x] PNET lab (eve ng) импортирована и запущена. Доступ к веб-интерфейсу получен

- [x] Создана лаборатория, в ней расположены виртуальные машины (на свой вкус, проба пера)

- [x] Wireshark работает!!!

## Занятие 2
- [x] Созданна топология на первом уроке

- [x] Присвоены IP адреса виртуальным ПК в стенде. ПК пингуются.
Windows 7

Windows Server 2016

Kali Linux

## Занятие 3
- [x] Коммутатор настроен (Имя и другие настройки с урока) (скрин части конфига)
switch1
show startup-config


switch2
show startup-config


- [x] Проведена атака arp-spoofing
#### Способ 1
На машине Kali linux в терминале запускаем arpspoofing для целевых ip

Запускаем wireshark, настраиваем фильтр по целевым ip и ждем трафик.
Запускаем команду ping на 1-й машине в сторону 2-й.

Трафик будет пойман wireshark на Kali linux.

#### Способ 2
На машине Kali linux открываем Ethercap и запускаем сканирование сети.

В качестве первой и второй цели выбираем ip 1-й и 2-й машины.

Запускаем Wireshark, настраиваем фильтр на целевые ip и слушаем трафик.

В меню Ethercap нажимаем arp-poisoning

В настройках запуска оставляем "Отслеживание удаленных подключений" включенным и снимаем галочку с "Отравление в одну сторону" для того, чтобы выполнять ARP отравление в обе стороны.

В консоли видим успешное проведение атаки.

В Wireshark также видим успешный перехват трафика

- [x] MITM-атака при авторизации на http сайте
В Kali linux запустить wireshark в режиме прослушивания трафика целевой машины.

Запустить arpsoof-атаку на целевую машину из терминала Kali Linux.

На целевой машине зайти на http сайт и ввести логин/пароль для авторизации в форме.

Wireshark перехватывает трафик, в POST запросе которого мы видим введенные пару логин/пароль в открытом виде.

- [x] MITM-атака между смартфоном, подключенным к домашнему роутеру, и непосредственно, самим домашним роутером.
На машине Kali linux запустить Wireshark в режиме прослушивания трафика целевого ip.

Произвести ARP-атаку на целевые ip (смартфон и роутер)

На смартфоне перейти на http сайт с формой авторизации и ввести пару логин/пароль.

При отправке данных Wireshark успешно их перехватывает в открытом виде.

## Занятие 4
- [x] Настроен DHCP для основной сети на роутере
Конфиг настроенного DHCP на роутере:



Получение IP адреса посредством DHCP на virtual PC:

## Занятие 5
- [x] С помощью wireshark найден STP трафик (с использованием фильтра)

- [x] (Вне зачёта) Проведена атака CAM-table overflow
Основной задачей STP является устранение петель в топологии произвольной сети Ethernet, в которой есть один или более сетевых мостов, связанных избыточными соединениями. STP решает эту задачу, автоматически блокируя соединения, которые в данный момент для полной связности коммутаторов являются избыточными.
На текущий момент локальная сеть работает корректно:

Если на коммутаторе отключена реализация протокола STP - PVST, то с помощью одной команды в терминале Kali linux можно положить всю локальную сеть:


- [x] Проведено сканирование узла с помощью nmap

- [x] (Вне зачёта) Настроен DNS сервер на cisco роутере
Конфиг роутера в части настроек DNS сервера:

Проверка работы DNS сервера:

## Занятие 6
Адресация начинается с 10.0.0.0 Выделить последовательно (без пропусков подсетей, когда есть возможность) подсети для отделов так, чтобы в подсети поместилось указанное количество ПК. Выделять подсети в следующем порядке:
Сеть админов
Сеть программистов
Сеть VIP
Сеть технологов
Сеть серверов
- [x] Создана топология по заданию

- [x] Настроен интерфейс роутера
Настроить интерфейс роутера е0/0 (внутренний интерфейс): включить его, задать ip адрес 192.168.10.254/24;
enable
conf t
int e0/0
ip address 192.168.10.254 255.255.255.0
no shutdown
du fu
exit
write
- [x] Подсети просчитаны
| Наименование подсети | Пул адресов |
| -------- | -------- |
| Сеть администраторов | 10.0.0.0-10.0.0.15 |
| Сеть VIP | 10.0.0.32-10.0.0.63 |
| Сеть технологов | 10.0.0.128-10.0.0.255 |
| Сеть программистов | 10.0.1.0-10.0.1.255 |
| Сеть серверов | 10.0.2.0-10.0.2.255 |
- [x] DHCP пулы сконфигурированы для всех подсетей
На роутере настроить DHCP пулы в соответствии с расчитанными IP подсетями;
Для каждого пуля настроить адрес шлюза по умолчанию (gateway) как последний доступный адрес хоста подсети этого пула;
- [x] Настроен DNS
В каждом пуле должен быть адрес dns сервера, равный 192.168.10.254;
В каждом пуле должно быть имя домена, равное cyber-ed.local
en
conf t
ip dhcp pool dhcp-pool-admins
network 10.0.0.0 255.255.255.240
default-router 10.0.0.14
dns-server 192.168.10.254
domain-name cyber-ed.local
exit
ip dhcp pool dhcp-pool-vip
network 10.0.0.32 255.255.255.224
default-router 10.0.0.62
dns-server 192.168.10.254
domain-name cyber-ed.local
exit
ip dhcp pool dhcp-pool-tech
network 10.0.0.128 255.255.255.128
default-router 10.0.0.254
dns-server 192.168.10.254
domain-name cyber-ed.local
exit
ip dhcp pool dhcp-pool-programmers
network 10.0.1.0 255.255.255.0
default-router 10.0.1.254
dns-server 192.168.10.254
domain-name cyber-ed.local
exit
ip dhcp pool dhcp-pool-servers
network 10.0.2.0 255.255.255.0
default-router 10.0.2.254
dns-server 192.168.10.254
domain-name cyber-ed.local
exit
exit
write
show running-config




## Занятие 7
- [x] Настроены Trunk & Access
- [x] Настроены VLAN
- [x] Настроены сабинтерфейсы
- [ ] (Вне зачёта)Проведена атака VLAN Hopping
- [x] Настроен VTP
Конфиг switch1:


Конфиг switch2:


Конфиг switch3:


Конфиг switch4:


Конфиг switch5:


Конфиг server-switch:


Конфиг роутера:




## Занятие 8
- [x] Сконфигурирован Port security
**Switch1**:
en
conf t
int e1/0
switchport port-security mac-address sticky
switchport port-security maximum 2
switchport port-security violation restrict
switchport port-security
int e0/1
switchport mode access
switchport port-security maximum 2
switchport port-security mac-address sticky
switchport port-security
int e1/1
switchport port-security mac-address sticky
switchport port-security maximum 2
switchport port-security violation restrict
switchport port-security
do wr

**Switch2**:
en
conf t
int e1/0
switchport port-security mac-address sticky
switchport port-security maximum 2
switchport port-security violation restrict
switchport port-security
do wr

**Switch3**:
en
conf t
int e1/0
switchport port-security mac-address sticky
switchport port-security maximum 2
switchport port-security violation restrict
switchport port-security
int e0/2
switchport mode access
switchport port-security mac-address sticky
switchport port-security maximum 2
switchport port-security
do wr

**Switch4**:
en
conf t
int e1/0
switchport port-security mac-address sticky
switchport port-security maximum 2
switchport port-security violation restrict
switchport port-security
int e1/1
switchport port-security mac-address sticky
switchport port-security maximum 2
switchport port-security violation restrict
switchport port-security
do wr

**Switch5**:
en
conf t
int e1/0
switchport port-security mac-address sticky
switchport port-security maximum 2
switchport port-security violation restrict
switchport port-security
int e1/1
switchport port-security mac-address sticky
switchport port-security maximum 2
switchport port-security violation restrict
switchport port-security
do wr

**Server-switch**:
en
conf t
int e1/1
switchport port-security mac-address sticky
switchport port-security maximum 1
switchport port-security
do wr

- [x] Настроен список контроля доступа, как на уроке
Main-router:
en
conf t
ip access-list extended tech-block
permit udp any eq 68 host 255.255.255.255 eq 67
permit ip 10.0.0.128 0.0.0.127 host 10.0.2.200
permit ip 10.0.0.128 0.0.0.127 host 10.0.0.254
deny ip any any
exit
int e0/0.2
ip access-group tech-block in
ip access-list extended block8844
deny ip any host 8.8.4.4
permit ip any any
exit
int e0/1
ip access-group block8844 out
do wr


## Занятие 9
- [x] Настроен NAT для каждой VLAN, кроме сети технологов
- VLAN5:
access-list 99 permit 10.0.1.0 0.0.0.255
ip nat inside source list 99 interface e0/1 overload
int e0/1
ip nat outside
int e0/0.5
ip nat inside
- VLAN6:
access-list 98 permit 10.0.0.0 0.0.0.15
ip nat inside source list 98 interface e0/1 overload
int e0/1
ip nat outside
int e0/0.6
ip nat inside
- VLAN7:
access-list 97 permit 10.0.0.32 0.0.0.31
ip nat inside source list 97 interface e0/1 overload
int e0/1
ip nat outside
int e0/0.7
ip nat inside
- VLAN3:
access-list 96 permit 10.0.2.0 0.0.0.255
ip nat inside source list 96 interface e0/1 overload
int e0/1
ip nat outside
int e0/0.3
ip nat inside
exit
do wr
do sh running-config

- [x] Настроен SSH
- Для начала создадим management сеть.
main-router:
conf t
int e0/0.99
encapsulation dot1Q 99
ip address 10.0.3.254 255.255.255.0
exit
do wr
switch1:
vtp primary force
conf t
vlan 99
name MGMT
exit
do wr
- Создадим пользователя и пароль для него:
conf t
username user privelege 15 password 123456
aaa new-model
line vty 0 4
transport input ssh
logging synchronous
exec-timeout 5 0
exit
do wr
- сгенерируем ключ для ssh необходимой сложности и перейдем на версию ssh 2:
crypto key generate rsa
#сложность выбираем "2048"
ip ssh version 2
- авторизуемся на машине linux и зайдем по ssh на роутер:
ssh user@10.0.3.254

## Занятие 10
- [x] Настроена технология Port security по заданию
Настроить Port-security на всех коммутаторах на активных портах, к которым подключены клиентские ПК. Выставить максимум мак-адресов на активных портах = 2. Режим работы Port-security выставить для логирования событий (без блокировки портов). В конфигурации выключить неактивные интерфейсы.
Switch1:


Switch2:

Switch3:


Switch4:


Switch5:


Server-switch:


- [x] Настроены списки контроля доступа по заданию
- Программисты имеют доступ до контроллера домена (WS16-DC) (без ограничений по портам), VLAN серверов, сети админов и сети интернет.
en
conf t
ip access-list extended prog-block
permit udp any host 255.255.255.255 eq bootpc bootps
10 permit ip 10.0.1.0 0.0.0.255 10.0.2.0 0.0.0.255
permit ip 10.0.1.0 0.0.0.255 host 10.0.2.200
permit ip 10.0.1.0 0.0.0.255 10.0.0.0 0.0.0.15
permit tcp any 10.0.1.0 0.0.0.255 established
deny ip any any
exit
int e0/0.5
ip access-group prog-block in
- Технологи имеют доступ только до домен-контроллера, а также своего шлюза по умолчанию.
en
conf t
ip access-list extended tech-block
permit udp any eq bootpc host 255.255.255.255 eq bootps
permit ip 10.0.0.128 0.0.0.127 host 10.0.2.200
permit ip 10.0.0.128 0.0.0.127 host 10.0.0.254
deny ip any any
exit
int e0/0.2
ip access-group tech-block in
- Разрешим выход в интернет программистам
- Адрес 8.8.4.4 в черном списке (недоступен для всех сетей компании)
object-group service internet-ports
tcp eq www
tcp eq 8080
tcp eq 443
en
conf t
ip access-list extended inet-out
deny ip any host 8.8.4.4
permit object-group internet-ports 10.0.1.0 0.0.0.255 any
exit
int e0/1
ip access-group inet-out out
- Предусмотреть, что все ПК во всех сетях могут получать адрес по DHCP.
en
conf t
ip access-list extended dhcp-to-all
permit udp any eq 68 host 255.255.255.255 eq 67
exit
int e0/0
ip access-group dhcp-to-all in
int e0/0.6
ip access-group dhcp-to-all in
int e0/0.3
ip access-group dhcp-to-all in
int e0/0.7
ip access-group dhcp-to-all in
- Проверка
PC5 -> PC4

PC4 -> WS16-DC1(ping не пройдёт, нужна проверка с помощью telnet или ssh)
Windows Server 2016 не дает пинговать себя. Добавил в файервол правило для порта 23 на telnet, но подключиться к сожалению не смог.
PC17 -> PC4

PC14 -> 8.8.4.4

PC15 -> PC5

WS16-DC1 -> 8.8.8.8
Интернет через bridge не настраивается. Вероятно причина в моем роутере (проблема обсуждалась с преподавателем).

## Занятие 11
- [x] Настроен VPN
Скачаем и установим openvpn-server на машине kali linux:



При установке указываем IP address, номер порта OpenVPN (по дефолту 1194), используемый протокол (по дефолту UDP), DNS resolver (В моем случае AdGuard DNS), решаем будем ли применять сжатие данных или нет (по дефолту не применяется) и кастомное шифрование.
После установки указать имя профиля клиента и пароль (если нужно). В моей случае имя профиля "rpi3"
Внести правки в файл /etc/openvpn/server.conf

перезапустить сервис openvpn: #service openvpn restart
Внести правки в файл rpi3.ovpn:

С помощью команды scp скопируем конфиг на клиентскую машину:

На клиентской машине устанавливаем пакет openvpn:
sudo apt install openvpn
Выполним дополнительные настройки на машине kali linux:
- перейдем в папку /etc/openvpn/ccd, создадим файл rpi3 и внесем в него следующие строки:

- в route добавим адрес локальной сети клиента

На клиентской машине также выполним дополнительные настройки:
- установим пакет bridge-utils:

- внесем правки в /etc/network/interfaces

- получим ip адрес:

- разрешим ip forwarding:


- внесем правки в iptables:

На машине клиента запустить vpn-клиент с полученным конфигом:
sudo openvpn rpi3.ovpn

На машине kali linux из внешней сети видно, что мы можем пинговать машину windows 7, находящуюся во внутренней сети предприятия:
