iptables блокируют доступ к порту 8000 за исключением IP-адреса



Я никогда не использовал iptables, и документация в интернете кажется немного непрозрачной.



Я хотел бы заблокировать все запросы на порт 8000 на моем сервере, кроме тех, которые поступают с определенного IP-адреса. Как это сделать с помощью iptables?

408   3  

3 ответов:

этот вопрос должен быть на Ошибка Сервера. Тем не менее, следующее должно сделать трюк, предполагая, что вы говорите о TCP, а IP, который вы хотите разрешить, - 1.2.3.4:

iptables -A INPUT -p tcp --dport 8000 -s 1.2.3.4 -j ACCEPT
iptables -A INPUT -p tcp --dport 8000 -j DROP

другая альтернатива;

sudo iptables -A INPUT -p tcp --dport 8000 -s ! 1.2.3.4 -j DROP

у меня была аналогичная проблема, что 3 bridged virtualmachine просто нужен доступ друг к другу с другой комбинацией, поэтому я протестировал эту команду, и она хорошо работает.

редактировать**

согласно комментарию Фернандо и это ссылке восклицательный знак (!) будет помещен перед чем

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

iptables-save > myfile

vi чтобы отредактировать их из строки похвалы. Просто используйте "dd", чтобы удалить строки, которые вы больше не хотите.

iptables-load < myfile and you're good to go.  

ПОМНИТЕ, ЧТО ЕСЛИ ВЫ НЕ НАСТРОИТЕ СВОЮ ОС ДЛЯ СОХРАНЕНИЯ ПРАВИЛ В ФАЙЛ, А ЗАТЕМ ЗАГРУЗИТЕ ФАЙЛ ВО ВРЕМЯ ЗАГРУЗКИ, ВАШИ ПРАВИЛА БУДУТ ПОТЕРЯНЫ.

Comments

    Ничего не найдено.