diff --git a/Настройка_инфраструктуры_локальной_сети_с_выходом_в_интернет.md b/Настройка_инфраструктуры_локальной_сети_с_выходом_в_интернет.md new file mode 100644 index 0000000..6048694 --- /dev/null +++ b/Настройка_инфраструктуры_локальной_сети_с_выходом_в_интернет.md @@ -0,0 +1,97 @@ +# Настройка инфраструктуры локальной сети с выходом в интернет + +*Создано 20.12.2025* + + +## Хост маршрутизатор, 192.168.1.1 + +Настройки сетевых интерфейсов, хост маршрутизатор, файл **/etc/newtwork/interfaces** + +ссылки: +- https://wiki.debian.org/ru/NetworkConfiguration +- https://rtfm.wiki/linux/debian/etc-network-interfaces + +``` +source /etc/network/interfaces.d/* + +# The loopback network interface +auto lo +iface lo inet loopback + +# The primary network interface +allow-hotplug eth0 +auto eth0 +iface eth0 inet static + address 193.203.51.138/24 + gateway 193.203.51.1 + dns-nameservers 193.203.50.254 8.8.8.8 + +# LAN +allow-hotplug eth1 +auto eth1 +iface eth1 inet static + address 192.168.1.1 + netmask 255.255.255.0 + +``` + +### Включение пересылки IP (IP Forwarding), /etc/sysctl.conf + +```ini +net.ipv4.ip_forward=1 +``` + +Для вступления в силу изменений в **/etc/sysctl.conf** выполнить команду + +```bash +sysctl -p +``` + +### Настройка iptables (классический способ) + +Предположим, что внешний интерфейс (eth0) смотрит в интернет, а внутренний (eth1) — в LAN. +Тогда: + +- разрешить трафику из LAN + ```bash + iptables -A INPUT -i eth1 -j ACCEPT + ``` +- разрешить трафик из интернета, который является ответом на запросы из LAN + ```bash + iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT + ``` +- включить NAT (Masquerading) для трафика, уходящего из LAN в интернет + ```bash + iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE + ``` +- сохраните правила (использовать iptables-persistent или аналогичный пакет, чтобы они сохранялись после перезагрузки): + - установка iptables-persistent + ```bash + apt install iptables-persistent + ``` + - сохранение измененных правил iptables: + ```bash + netfilter-persistent save + ``` + +### НЕ ПРОВЕРЯЛ !!! Настройка nftables (современный способ, если используется в Debian 13) + +#### Настройте правила в /etc/nftables.conf, чтобы разрешить пересылку и NAT (примерные правила для NAT) + +``` +table ip nat { + chain postrouting { + type nat hook postrouting priority 100; + oifname "eth0" masquerade + } +} +``` + +#### Настройка DNS + +Клиенты в LAN должны использовать IP-адрес Debian-сервера как DNS-сервер. +Или можно развернуть на сервере DNS-сервер (например, dnsmasq), чтобы он кэшировал запросы. + +#### Настройка клиентов LAN: + +Настройте IP-адреса, маску подсети и основной шлюз (gateway) для устройств в LAN, чтобы они указывали на IP-адрес вашего Debian-сервера.