Задать вопрос

Как настроить IPTABLE с первого раза?

Знания по линуксу есть, но не на твердую пятерку. Поставили задачу, закрыть все порты на сервере Debian, а 3306 и 22 - их разрешить только определенным IP. Какие и как выполнить команды по SSH, что бы подключение не закрылось? Сервер удаленный, в далеких заморских землях.
  • Вопрос задан
  • 2766 просмотров
Подписаться 3 Оценить Комментировать
Решения вопроса 1
3vi1_0n3
@3vi1_0n3
Вкратце:
Сначала разрешаешь входящие на 22 порт с определенного адреса и разрешаешь все исходящие
iptables -A INPUT -s <твой IP> -p tcp -m tcp --dport 22 -j ACCEPT

Затем закрываешь все входящие по всем портам
iptables -P INPUT REJECT
После этого соединение отвалиться не должно
После этого разрешаешь входящие по необходимым адресам и портам:
iptables -A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
iptables -A INPUT -p tcp -m tcp -s <некоторый IP> --dport 22 -j ACCEPT

И так далее
После разрешения необходимых входящих портов можно закрывать исходящие точно так же.
Можно писать это всё в скрипт, а в кроне выставить очистку таблиц каждые 15 минут на случай, если что-то пойдет не так.
Ответ написан
Пригласить эксперта
Ответы на вопрос 5
edinorog
@edinorog
Троллей не кормить!
короче так. берешь мануал по iptable и читаешь. потом настраиваешь на тестовом стенде. потом еще раз и еще раз. а потом уже где-то в тридевятом царстве. тогда с "первого раза".
Ответ написан
Вот все советуют использовать iptables , а я посоветую посмотреть на FERM , в дебиан есть такой пакет.
По сути - это удобная надстройка над iptables с некоторыми фичами , например если вы укажете неправильные настройки и потеряеете связь с сервером - ferm их откатит ( ключ --interactive )

Документации по ferm полно, например: habrahabr.ru/post/127184
Ответ написан
Комментировать
vvpoloskin
@vvpoloskin
Инженер связи
Придумать какой-нибудь механизм отката:
1) перезагрузить компьютер через 15 минут, а в эти 15 минут по очереди вбивать правила
2) применить дефолтную конфигурацию iptables-apply или iptables-restore также через 15 минут
Ответ написан
Комментировать
leahch
@leahch Куратор тега Linux
3D специалист. Dолго, Dорого, Dерьмово.
Не парить могзк и взять генератор правил для iptables, мне очень нравится firehol, просто и надежно! firehol.org
Вот например конфиг для pptp и локалки с маскарадингом и открытыми нужными портами
interface eth0 mylan
    policy accept

interface ppp+ internet
    server smtp accept
    server http accept
    server ftp  accept
    server ssh  accept src example.firehol.org

    client all  accept

router mylan2internet inface eth0 outface ppp+
    masquerade
    route all accept
Ответ написан
Комментировать
@AVKor
3306 это порт для MySQL. Будет он закрыт или открыт - для доступа по SSH вообще значения не имеет.

А для SSH не обязательно использовать 22. Можно любой свободный. Меняйте его, а потом как угодно экспериментируйте с 22.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы