Сетевые интерфейсы в debian — настройка

В предыдущей части я установил операционную систему на свой домашний сервер, теперь необходимо настроить сетевые интерфейсы и фаервол.

Сетевые интерфейсы: DHCP и статический адрес

Первым делом установим IP — адреса на сетевые карты
— для первой сетевой карты устанавливаем DHCP (в большинстве случаев IP адрес выдает провайдер)
— для сетевой карты устанавливаем IP адрес для нашей внутренней сети, чаше всего используются сеть класса C 192.168.1.0 с маской 255.255.255.0 если роутер провайдера выдает адреса из этой  сети то у нас могут возникнуть проблемы между сетями, поэтому выберем сеть 192.168.2.0 с маской 255.255.255.0 и назначим первый адрес в сети нашему роутеру 192.168.2.1

Проверяем как определились сетевые интерфейсы в системе с помощью команды

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
ip address

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:3f:50:2c brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.25/24 brd 192.168.1.255 scope global enp0s3
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe3f:502c/64 scope link
       valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 08:00:27:b1:6f:f8 brd ff:ff:ff:ff:ff:ff

Видим что сетевая карта enp0s3 получила ip-адрес от провайдера, а enp0s8 нет — это сетевая карта которая подключена к нашей локальной сети, ей необходимо задать ip-адресс
В файле /etc/network/interfaces добавляем следующую запись

1
2
3
4
5
6
nano /etc/network/interfaces

auto enp0s8
iface enp0s8 inet static
    address 192.168.2.1
    netmask 255.255.255.0

Сохраняем сочетанием ctrl-O и выходим ctlr-X
далее перезапускаем сеть командой и проверяем

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
service networking restart
id address
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:3f:50:2c brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.25/24 brd 192.168.1.255 scope global enp0s3
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:fe3f:502c/64 scope link
       valid_lft forever preferred_lft forever
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 08:00:27:b1:6f:f8 brd ff:ff:ff:ff:ff:ff
    inet 192.168.2.1/24 brd 192.168.2.255 scope global enp0s8
       valid_lft forever preferred_lft forever
    inet6 fe80::a00:27ff:feb1:6ff8/64 scope link
       valid_lft forever preferred_lft forever

Сетевые интерфейсы локальной сети — DHCP-сервер

Теперь нам необходимо установить dhcp сервер для раздачи адресов в локальной сети

1
apt install dnsmasq -y

После установки создаем файл конфигурации.

1
nano /etc/dnsmasq.d/lan.conf

Добавляем строки:

1
2
3
interface=enp0s8
bind-interfaces
dhcp-range=192.168.2.50,192.168.2.150,255.255.255.0,12h

Перезапускаем dnsmasq

1
service dnsmasq restart

проверяем выданные адреса на клиентах:
сетевые интерфейсы в ОС Linux Debian

Включаем маршрутизацию между интерфейсами

1
nano /etc/sysctl.conf

находим и комментируем строку

1
net.ipv4.ip_forward=1

Сохраняем и применяем измененный файл конфигурации

1
2
3
root@router:~# sysctl -p

net.ipv4.ip_forward = 1

Затем нам необходимо установить фаервол в автозапуск и задать правила, для этого станавливаем iptables-persistent

1
apt install iptables-persistent -y

Устанавливаем правила для трансляции адресов, для этого я использую программу iptables

1
2
iptables -t nat -I POSTROUTING -o enp0s3 -j MASQUERADE
service netfilter-persistent save

Теперь на клиентском ПК должен появиться интернет.
Теперь необходимо настроить фаервол для предотвращения атак из вне

1
2
3
4
5
6
7
8
9
10
11
12
#Разрешаем уже установленные соединения
iptables -I FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
#разрешаем устанавливать соединения только из локальной сети
iptables -I FORWARD -m conntrack --ctstate NEW -i enp0s8 -j ACCEPT
#Устанавливаем политику по умолчанию для маршрутизации <strong>DROP</strong>
iptables -P FORWARD DROP
#Разрешаем подключаться к серверу только из локальной сети
iptables -I INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
iptables -I INPUT -m conntrack --ctstate NEW -i enp0s8 -j ACCEPT
iptables -P INPUT DROP
#Сохраняем правила
service netfilter-persistent save

Таким образом мы настроили доступ в интернет через наш роутер и настроили фаервол.

Добавить комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.