Различия
Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.
wiki:ustanovka_programm_avtozapusk_programm_pravila_iptables [2013/04/07 11:33] zyxmon |
wiki:ustanovka_programm_avtozapusk_programm_pravila_iptables [2013/10/10 18:32] (текущий) c61 [Правила файрвола iptables] |
||
---|---|---|---|
Строка 47: | Строка 47: | ||
===== Правила файрвола iptables ===== | ===== Правила файрвола iptables ===== | ||
- | Если к установленным демонам нужно дать доступ из интернета (WAN), то потребуется создать дополнительные правила проброса портов, используя установленный в Keenetic файрвол ''iptables''. Правила проброса могут быть расположены непосредственно в скриптах ''S??*'' или в скриптах, расположенных в папке ''/media/DISK_A1/system/etc/firewall.d''. | + | Обычно к установленным демонам (сервисам) нужно дать доступ из сети интернет. Для этого потребуется создать дополнительные правила проброса портов, используя установленный в Keenetic файрвол ''iptables''. Правила проброса могут быть расположены непосредственно в скриптах запуска сервисов ''S??*'' и/или в скриптах, расположенных в папке ''/media/DISK_A1/system/etc/firewall.d''. |
- | Правильнее такие правила размещать в скрипте в папке ''firewall.d''. Дело в том, что при разрыве сессии соединения с Интренет правила iptables сбрасываются, и создаются заново при подъеме соединения. Правила при подъеме соединения в скриптах ''S??*'' не выполняются, а в скриптах в папке ''firewall.d'' выполняются. | + | При разрыве подключения к сети интернет правила ''iptables'' сбрасываются и создаются заново при восстановлении подключения. Если правило ''iptables'' находится в скрипте ''S??*'', то заново оно не будет создано. Поэтому правила правильнее размещать в скрипте в папке ''firewall.d''. Скрипты из папки ''firewall.d'' будут вызваны при восстановлении соединения. |
+ | |||
+ | Учтите, что скрипты в папке ''firewall.d'' не будут выполнены, когда Вы подключаете носитель к USB (при этом выполнятся скрипты ''S??*'' из папки ''init.d''), а только в момент подключения к сети интернет. | ||
Очень часто нужно, чтобы установленные на кинетике программы взаимодействовали между собой по сети. Для этого необходимо выполнение правила | Очень часто нужно, чтобы установленные на кинетике программы взаимодействовали между собой по сети. Для этого необходимо выполнение правила | ||
Строка 60: | Строка 62: | ||
# Разрешаем внутрисетевой обмен | # Разрешаем внутрисетевой обмен | ||
iptables -I INPUT -i lo -j ACCEPT | iptables -I INPUT -i lo -j ACCEPT | ||
- | # Разрешаем доступ по ssh из интернет | + | # Разрешаем доступ по ssh из интернет на порт tcp 22 |
iptables -A INPUT -p tcp --dport 22 -j ACCEPT | iptables -A INPUT -p tcp --dport 22 -j ACCEPT | ||
Файл ''fw.sh'' должен иметь атрибут исполнения и заканчиваться символом конец строки. | Файл ''fw.sh'' должен иметь атрибут исполнения и заканчиваться символом конец строки. | ||
+ | |||
+ | Поскольку некоторые сервисы Вы наверняка будете перезапускать вручную, проводя эксперименты по изменению настроек, правила iptables имеет смысл дублировать в ''fw.sh''. Так, например, для ''lighttpd'' запись в ''S50lighttpd'' (если ''$PORT_F'' равен 80): | ||
+ | |||
+ | iptables -A INPUT -p tcp --dport $PORT_F -j ACCEPT | ||
+ | |||
+ | требует добавления записи в ''fw.sh'': | ||
+ | |||
+ | # Разрешаем доступ по http из интернет на порт tcp 80 | ||
+ | iptables -A INPUT -p tcp --dport 80 -j ACCEPT | ||
+ | |||
+ | Если этого не сделать, высока вероятность того, что Ваш сервер ''lighttpd'' окажется недоступен из интернет при медленном установлении соединения с провайдером во время старта или после разрыва и последующего восстановления соединения. | ||
+ |