Рейтинг:  5 / 5

Звезда активнаЗвезда активнаЗвезда активнаЗвезда активнаЗвезда активна
 

Настройка интернет шлюза на основе iptables

Первоначально что необходимо сделать это добавить строку 

net.ipv4.ip_forward=1

в файл /etc/sysctl.conf и перезагрузить операционную систему.

123

Очистим все правила iptables командой

iptables -F

сохраним настройки iptables командой

service iptables save

предположем что на материнской плате имеется два сетевых адаптера, один смотрит в интернет, а другой смотрит в локальную сеть

настройки eth0(в моём случаи данный адаптер смотрит в интернет) выглядят вот так

настройки eth1(которые смотрят в локальную сеть) выглядят вот так

Настроим значения по умолчанию цепочки INPUT OUTPUT FORWARD на действие DROP

iptables -P INPUT DROP

iptables -P OUTPUT DROP

iptables -P FORWARD DROP

разрешим в этих цепочках прохождения пакетов и соеденений которые относятся к уже созданным соеденениям

iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

iptables -A OUTPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

iptables -A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED- j ACCEPT

настроим исходящие соеденения для возможности пингования, установки обновлений и установки пакетов

iptables -I OUTPUT -p icmp -j ACCEPT

iptables -I OUTPUT -p tcp -m multiport --dport 53,80,21,443 -j ACCEPT

iptables -I OUTPUT -p udp --dport 53 -j ACCEPT

разрешим подключение к серверу по SSH с конкретного ip

iptables -I INPUT -p tcp --dport 22 -s XXX.XXX.XXX.XXX -j ACCEPT

XXX.XXX.XXX.XXX - ip адрес с которого необходимо разрешить доступ к серверу

Разрешим подсети 192.168.1.0/24 проходить в цепочки FORWARD

iptables -I FORWARD -m conntrack --ctstate NEW -i eth1 -s 192.168.1.0/24 -j ACCEPT

"пронатируем" соеденения из 192.168.1.0/24 на ip 192.168.0.103

iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 192.168.0.103

если у вас динамический адрес(тоесть меняется при каждой новой сессии), тогда необходимо произвести действие MASQUERADE

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

сохраним настройки iptables

service iptables save

Интернет шлюз готов.

В локальной сети в качестве шлюза неоходимо указывать адрес сетевого адаптера eth1(в данном примере это 192.168.1.1)

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


Защитный код
Обновить