Я играл с Dokku в DigitalOcean (следуя этому руководству) и пытаюсь понять текущие настройки брандмауэра.
Итак, вот мои настройки:
Что я не могу вспомнить, так это настройки Chain FORWARD, в частности IP-адреса рядом с tcp dpt:5000
и tcp dpt:postgresql
.
me:~$ sudo iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
fail2ban-ssh tcp -- anywhere anywhere multiport dports ssh
Chain FORWARD (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- anywhere XXX.17.0.50 tcp dpt:5000
ACCEPT tcp -- anywhere XXX.17.0.2 tcp dpt:postgresql
ACCEPT all -- anywhere anywhere ctstate RELATED,ESTABLISHED
ACCEPT all -- anywhere anywhere
ACCEPT all -- anywhere anywhere
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain fail2ban-ssh (1 references)
target prot opt source destination
RETURN all -- anywhere anywhere
me:~$
Я бы предположил, что XXX.17.0.Y
IP-адреса берут начало в моем контейнере Docker - это правильное предположение? Если предположить, что это так, то они, вероятно, недоступны для внешнего мира, верно?
В конечном итоге я пытаюсь установить разумные настройки безопасного межсетевого экрана; например, заблокировать все входные данные, кроме SSH, HTTP и amp; HTTPS. Я просто хочу убедиться, что я понимаю существующие настройки, прежде чем продолжить.
заблокируйте вниз все Вы или закрытие все порты
& только использовать ssh & http & https просто открывают свои порты
сброс, который будет перепутан, что Вы знаете то, что уже определило
$ iptables -F
тогда отбрасывание весь
$ iptables -P INPUT DROP
IPTABLES для сования открытого порта 22
$ iptables -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
позволяет HTTP и Подключения HTTPS отовсюду.
"порты по умолчанию для веб-сайтов" / http 80, https 443.
$ iptables -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
$ iptables -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
$ iptables -A INPUT -j DROP
$ iptables -F
$ -P INPUT DROP
$ iptables -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
$ iptables -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
$ iptables -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
$ iptables -A RH-Firewall-1-INPUT -p icmp -j ACCEPT
$ iptables -A INPUT -j DROP
$ iptables -F
$ iptables -P INPUT DROP
$ iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
$ iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
$ iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
$ iptables -A RH-Firewall-1-INPUT -p icmp -j ACCEPT
$ iptables -A INPUT -j DROP