постоянная маршрутизация портов от 80 до 8080

Я использую экземпляр amazon EC2, который работает через Ubuntu. По умолчанию в соответствии с ограничениями безопасности я не могу привязать свое приложение к порту 80, поэтому я просто привязываю его к порту 8080, а затем устанавливаю перенаправление маршрутизации с порта 80 на 8080 с помощью следующей команды:

iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to 8080

Но я нашел что, когда я перезагружаю сервер, эти настройки больше не активны, пока я не вызову эту команду снова.

Итак, мой вопрос, как включить работу перенаправления порта, даже если система была перезагружена?

23
задан 28 February 2014 в 20:52

4 ответа

Можно добавить эту команду в /etc/rc.local, таким образом, она будет выполняться автоматически после перезагрузки.

0
ответ дан 28 February 2014 в 20:52

Используйте команду iptables-сохранения вместо этого. Правила брандмауэра никогда не должны входить в rc.local сценарий. rc.local является последней вещью, которая будет выполняться. Если правило блока было помещено в rc.local существует маленький период времени, где взломщик может использовать правило, не существующее. В то время как это, вероятно, не имеет значения с этой ситуацией, все еще лучше не войти в дурную привычку, которая может укусить Вас позже.

0
ответ дан 28 February 2014 в 20:52

Вот то, как документация официального ipttable учит нас. Видят здесь

, Добавляют эти две строки в/etc/network/interfaces:
pre-up iptables-restore < /etc/iptables.rules post-down iptables-save > /etc/iptables.rules

строка "поствниз iptables-сохраняет>/etc/iptables.rules", сохранит правила, которые будут использоваться на следующей начальной загрузке.

0
ответ дан 1 March 2014 в 07:52
  • 1
    Извините, но этот didn' t работа, я сталкиваюсь с той же проблемой. – Steven White 19 August 2015 в 10:28

Я обнаружил ряд каталогов на Ubuntu 16.04 в /etc/network, который запустит скрипты неоднократно во время сетевой инициализации и завершения работы:

if-down.d
if-post-down.d  
if-pre-up.d  
if-up.d
interfaces.d

, Таким образом, я нашел, что мог вывести конфигурацию, как обычно:

$ sudo sh -c "iptables-save > /etc/iptables.rules"

Затем я создал файл '/etc/network/if-pre-up.d/restore:

#!/bin/sh

iptables-restore < /etc/iptables.rules

... и отмеченный это исполняемый файл

$ sudo chmod 755 /etc/network/if-pre-up.d/restore
0
ответ дан 1 March 2014 в 07:52
  • 1
    @StevenWhite может Вы предоставлять снимки экрана ошибки, с которой Вы сталкиваетесь. – Subhasis Bose 19 August 2015 в 13:17

Другие вопросы по тегам:

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