Я пытаюсь разрешить доступ к определенным портам на сервере только через один из IP-адресов сервера.
Например, если у сервера два IP-адреса: 1.1.1.1 1.1.1.2
Например, я хочу, чтобы порты 25, 26 были доступны через 1.1.1.2. Я не пытаюсь запретить внешним IP-адресам получать доступ к портам, а просто хочу убедиться, что они могут получать доступ только к портам на определенном IP-адресе на сервере.
Я пытался написать это с помощью iptables, но пока безуспешно. Интересно, может ли кто-нибудь помочь?
решение1
Если у вас нет существующих правил для этих двух портов или каких-либо общих правил приема, то приведенные ниже строки являются хорошим примером.
Эти 2 строки заблокируют доступ к портам 25 и 26 на порту 1.1.1.1. Предполагая, что политика по умолчанию — принимать пакеты.
iptables -A INPUT -p tcp --dport 25 -d 1.1.1.1 -j REJECT
iptables -A INPUT -p tcp --dport 26 -d 1.1.1.1 -j REJECT
Однако обычно я бы использовал политику по умолчанию «отклонить» или «сбросить», а затем явно разрешил бы 2 порта на втором IP-адресе.
iptables -P INPUT REJECT
iptables -A INPUT -p tcp --dport 25 -d 1.1.1.2 -j ACCEPT
iptables -A INPUT -p tcp --dport 26 -d 1.1.1.2 -j ACCEPT