Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
Также в круг задач iptables входит фильтрация сетевых пакетов по заданным критериям. Это необходимо в целях безопасности. Используя iptables, можно оградить доступ к локальным службам извне. А также запретить прохождение локальных сетевых пакетов по внешним сетевым интерфейсам.
Фильтрацию пакетов можно организовать двумя способами. Запрещать все пакеты и разрешать только необходимые. А можно пропускать все пакеты, запрещая явно только те пакеты, которые являются нежелательными. Однако вторая политика чревата очень большими неприятностями.
Утилита iptables управляется из командной строки и имеет огромное число параметров. Для удобства администрирования создается скрипт, в котором содержатся все необходимые команды. Скрипт помещается в каталог /etc/ppp/ip-up.d. Это гарантирует запуск скрипта после соединения с сетью Интернет.
Чтобы получить возможность передачи пакетов между сетевыми интерфейсами (маршрутизация), дается следующая команда:
# echo "1" > /proc/sys/net/ipv4/ip_forward
Данная команда записывает 1 в файл, находящийся в виртуальной файловой системе /proc.
Перед использованием iptables необходимо отменить все ранее указанные правила (если таковые существовали). Для этого запускаем утилиту с ключом -F:
# iptables -F
Теперь можно приступать к созданию правил. Здесь необходимо выбрать критерии, по которым фильтруются пакеты. Чаще всего это сетевой адрес отправителя/получателя, порт и сетевой интерфейс. Для того чтобы запретить все пакеты, адресуемые извне на порт 3306 (MySQL), дается следующая команда:
# iptables -A INPUT -p tcp -s ! 192.168.0.0/16 -d 195.5.28.227 --destination-port 3306 -j DROP
Здесь:
n в параметре -p указывается протокол (tcp);
n в параметре -s указывается адрес отправителя (в данном случае все адреса, не принадлежащие подсети 192.168.0.0./16);
n в параметре -d указывается адрес получателя (здесь адрес, получаемый от провайдера при подключении);
n в параметре --destination-port указывается номер порта (3306);
n в параметре -j указываем действие, которое необходимо совершить с пакетом, который удовлетворяет описанным критериям (в данном случае уничтожить).