Переносить маршрутизацию портов с 80 до 8080

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

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

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

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

22 голоса | спросил Ph0en1x 28 FebruaryEurope/MoscowbFri, 28 Feb 2014 20:52:49 +0400000000pmFri, 28 Feb 2014 20:52:49 +040014 2014, 20:52:49

4 ответа


18

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

ответил nux 28 FebruaryEurope/MoscowbFri, 28 Feb 2014 21:17:09 +0400000000pmFri, 28 Feb 2014 21:17:09 +040014 2014, 21:17:09
15

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

ответил MeOMy 29 PMpWed, 29 Apr 2015 20:54:41 +030054Wednesday 2015, 20:54:41
4

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

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

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

ответил Stavarengo 19 62016vEurope/Moscow11bEurope/MoscowSat, 19 Nov 2016 19:55:46 +0300 2016, 19:55:46
0

Я обнаружил набор каталогов на 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-preu-up.d/restore:

#!/bin/sh

iptables-restore < /etc/iptables.rules

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

$ sudo chmod 755 /etc/network/if-pre-up.d/restore
ответил mikebridge 7 AMpFri, 07 Apr 2017 00:18:56 +030018Friday 2017, 00:18:56

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

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132