У меня есть VPS с хостинговой компанией, поэтому я получаю к нему удаленный доступ через SSH. Я пытаюсь сбросить все правила iptables и начать с нуля ... Проблема в том, что когда я набираю # iptables INPUT DROP (поскольку я не хочу блокировать все входящие и белые списки), PuTTY выпадает, и я не могу подключиться.
Как я могу сделать это без загрузки CentOS, когда я набираю эту команду.
Или есть другой способ сделать это.
Спасибо
Если вы работаете удаленно, я настоятельно рекомендую вам использовать такой инструмент, как firehol.
Firehol - это интерфейс iptables / netfilter. Он включает код, чтобы убедиться, что вы не заблокированы. Вы используете firehol try
команда запустит новый набор правил, а затем предложит вам ввести фиксацию. Если вы не совершите фиксацию в течение 30 секунд, он будет считать, что вы что-то сломали, и вернется к старому набору правил.
Iptables работает с победами в первом матче, поэтому вам нужно будет поместить свой catch all DROP в конец вашего списка.
Взгляните на /etc/sysconfig/iptables
файл. В системе CentOS он обычно имеет базовую конфигурацию, которая позволяет вам использовать ssh в коробке и многое другое - это будет хорошей отправной точкой.
Вам необходимо убедиться, что ваши существующие подключения остаются открытыми, когда вы добавляете это правило.
-A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
Затем добавьте свой список разрешений под этим и, наконец, добавьте строку в конец цепочки INPUT
-A INPUT -j DROP
Хорошее чтение / руководство для вас для начала: Вот
Напишите скрипт cron и добавьте правила для iptables, чтобы разрешить вам доступ, и настройте его на запуск через 5/10 минут после сброса вашей команды. Таким образом, вы снова получите доступ через 5 минут.
Я куплю сценарий, который заносит некоторые вещи в белый список, а потом все отбрасывает. Итак, сначала создайте правила белого списка, а затем добавьте оператор drop в конец цепочки.