Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

Для обеспечения большей безопасности необходимо ограничить внешние подключения к серверу ECCM.

...

titleНастройка firewall для ECCM с БД на отдельном сервере

Создайте файл iptables.sh

...

 с

...

правилами:

Сервер ECCM
Блок кода
languagebash
themeRDark
title
iptables.sh
sudo iptables -P INPUT DROP                             # запрет всех входящих соединений
sudo iptables -P FORWARD DROP                           # запрет для всех проходящих через ваш хост соединений
sudo iptables -P OUTPUT ACCEPT

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT      # SSH
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT     # веб-интерфейс ECCM на схеме HTTPS - не используется для Witness

# разрешим исходящие подключения, которые инициировали мы сами
sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# разрешить обращения к localhost
sudo iptables -A INPUT -i lo -j ACCEPT
# опционально, разрешим пинговать себя
sudo iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT

sudo iptables -A INPUT -p udp --dport 67 -j ACCEPT
    # DHCP
sudo iptables -A INPUT -p udp --dport 69 -j ACCEPT
    
# TFTP
sudo iptables -A INPUT -p udp --dport 162 -j ACCEPT   
# SNMP-трапы
sudo iptables -A INPUT -p udp --dport 514 -j ACCEPT
   # Syslog (UDP)
sudo iptables -A INPUT -p tcp --dport 514 -j ACCEPT
   # Syslog (TCP)
sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT  
# загрузка прошивок
На сервере с БД создайте файл iptables.sh со следующими правилами

Примените правила:

Блок кода
languagebash
themeRDark
chmod +x iptables.sh
sudo ./iptables.sh

Для того чтобы правила сохранились после перезагрузки, можно использовать утилиту iptables-persistent (или любые другие доступные методы):

sudo apt-get install iptables-persistent
sudo netfilter-persistent save
Блок кода
languagebash
themeRDark
titleСервер с БД
Раскрыть
titleНастройка firewall для ECCM с БД на отдельном сервере

Создайте файл iptables.sh на сервере с ECCM со следующими правилами:

Блок кода
languagebash
themeRDark
titleСервер ECCM
sudo iptables -P INPUT DROP                             # запрет всех входящих соединений
sudo iptables -P FORWARD DROP                           # запрет для всех проходящих через ваш хост соединений
sudo iptables -P OUTPUT ACCEPT

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT      # SSH
sudo iptables -A INPUT -p tcp -s <IP сервера ECCM> --dport 5432443 -j ACCEPT     # веб-интерфейс доступECCM приложенийна ксхеме БДHTTPS

# разрешим исходящие подключения, которые инициировали мы сами
sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# разрешить обращения к localhost
sudo iptables -A INPUT -i lo -j ACCEPT
# опционально, разрешим пинговать себя
sudo iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
# опционально: доступ администратора к БД
sudo iptables -A INPUT -p tcpudp -s <admin_ip>/32-dport 67 -j ACCEPT      # DHCP
sudo iptables -A INPUT -p udp --dport 543269 -j ACCEPT

Примените правила на каждом сервере:

Блок кода
languagebash
themeRDark
chmod +x iptables.sh      # TFTP
sudo ./iptables.sh

Для того чтобы правила сохранились после перезагрузки, можно использовать утилиту iptables-persistent (или любые другие доступные методы):

Блок кода
languagebash
themeRDark
sudo apt-get install iptables-persistent
sudo netfilter-persistent save
Раскрыть
titleНастройка firewall для отказоустойчивой системы по стандартной схеме

Создайте файл iptables.sh на узлах Master и Slave со следующими правилами:

Блок кода
languagebash
themeRDark
titleУзлы Master и Slave
iptables -A INPUT -p udp --dport 162 -j ACCEPT     # SNMP-трапы
sudo iptables -PA INPUT DROP-p udp --dport 514 -j ACCEPT     # Syslog (UDP)
sudo iptables -A INPUT -p tcp --dport 514 -j ACCEPT     # Syslog (TCP)
sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT    # загрузка прошивок

На сервере с БД создайте файл iptables.sh со следующими правилами:

Блок кода
languagebash
themeRDark
titleСервер с БД
sudo iptables -P INPUT DROP                             # # запрет всех входящих соединений
sudo iptables -P FORWARD DROP                           # запрет для всех проходящих через ваш хост соединений
sudo iptables -P OUTPUT ACCEPT

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT      # SSH
sudo iptables -A INPUT -p tcp --dports 443<IP -jсервера ACCEPTECCM> --dport 5432 -j ACCEPT  # веб-интерфейсдоступ ECCMприложений нак схеме HTTPSБД

# разрешим исходящие подключения, которые инициировали мы сами
sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# разрешить обращения к localhost
sudo iptables -A INPUT -i lo -j ACCEPT
# опционально, разрешим пинговать себя
sudo iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
# опционально: доступ администратора к БД
sudo iptables -A INPUT -p tcp -s <admin_ip>/32 --dport 5432 -j ACCEPT

Примените правила на каждом сервере:

Блок кода
languagebash
themeRDark
chmod +x iptables.sh
sudo ./iptables.sh

Для того чтобы правила сохранились после перезагрузки, можно использовать утилиту iptables-persistent (или любые другие доступные методы):

Блок кода
languagebash
themeRDark
sudo apt-get install iptables-persistent
sudo netfilter-persistent save


Раскрыть
titleНастройка firewall для отказоустойчивой системы по стандартной схеме

Создайте файл iptables.sh на узлах Master и Slave со следующими правилами:

Блок кода
languagebash
themeRDark
titleУзлы Master и Slave
sudo iptables -P INPUT DROP                             # запрет всех входящих соединений
sudo iptables -P FORWARD DROP                           # запрет для всех проходящих через ваш хост соединений
sudo iptables -P OUTPUT ACCEPT


sudo iptables -A INPUT -p udp --dport 67 -j ACCEPT      # DHCP
sudo iptables -A INPUT -p udp --dport 69 -j ACCEPT      # TFTP
sudo iptables -A INPUT -p udp --dport 162 -j ACCEPT     # SNMP-трапы
sudo iptables -A INPUT -p udp --dport 514 -j ACCEPT     # Syslog (UDP)
sudo iptables -A INPUT -p tcp --dport 514 -j ACCEPT     # Syslog (TCP)
sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT    # загрузка прошивок

# PostgreSQL
sudo iptables -A INPUT -p tcp -s <IP Master>  --dport 5432 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Slave>  --dport 5432 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Witness>  --dport 5432 -j ACCEPT

# Redis
sudo iptables -A INPUT -p tcp -s <IP Master>  --dport 6379 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Slave>  --dport 6379 -j ACCEPT

# Sentinel
sudo iptables -A INPUT -p tcp -s <IP Master>  --dport 26379 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Slave>  --dport 26379 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Witness>  --dport 26379 -j ACCEPT

# RabbitMQ
sudo iptables -A INPUT -p tcp -s <IP Master>  --dport 567122 -j ACCEPT      # SSH
sudo iptables -A INPUT -p tcp -s <IP Slave>  --dport 5671443 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Witness>  --dport 5671 -j ACCEPT     # веб-интерфейс ECCM на схеме HTTPS

# разрешим исходящие подключения, которые инициировали мы сами
sudo iptables -A INPUT -pm tcpstate -s <IP Master>  --dport 4369 -j ACCEPT-state ESTABLISHED,RELATED -j ACCEPT
# разрешить обращения к localhost
sudo iptables -A INPUT -pi tcplo -sj <IP Slave>  --dport 4369 -j ACCEPTACCEPT
# опционально, разрешим пинговать себя
sudo iptables -A INPUT -p tcpicmp -s <IP Witness>  -icmp-dporttype 43698 -j ACCEPT
# опционально: доступ администратора к БД
sudo iptables -A INPUT -p tcp -s <IP Master>  <admin_ip>/32 --dport 256725432 -j ACCEPT

sudo iptables -A INPUT -p tcp udp --dport 67 -sj ACCEPT <IP Slave>  --dport 25672 -j# ACCEPTDHCP
sudo iptables -A INPUT -p tcp -s <IP Witness> udp --dport 2567269 -j ACCEPT

      # KeepalivedTFTP
sudo iptables -A INPUT -p vrrp udp --dport 162 -j ACCEPT

На узле Witness создайте файл iptables.sh со следующими правилами:

Блок кода
languagebash
themeRDark
titleУзел Witness
     # SNMP-трапы
sudo iptables -PA INPUT DROP-p udp --dport 514 -j ACCEPT     # Syslog (UDP)
sudo iptables -A INPUT -p tcp --dport 514    -j ACCEPT     # запрет всех входящих соединенийSyslog (TCP)
sudo iptables -PA FORWARDINPUT DROP-p tcp --dport 2222 -j ACCEPT    # загрузка прошивок

# PostgreSQL
sudo iptables -A INPUT -p tcp -s <IP Master>  --dport 5432 -j ACCEPT
sudo iptables #-A запретINPUT для-p всехtcp проходящих-s через<IP вашSlave> хост соединений
sudo iptables --dport 5432 -Pj OUTPUT ACCEPT

sudo iptables -A INPUT -p tcp -s <IP Witness>  --dport 225432 -j ACCEPT

# Redis
sudo iptables -A INPUT -p # SSH

# разрешим исходящие подключения, которые инициировали мы самиtcp -s <IP Master>  --dport 6379 -j ACCEPT
sudo iptables -A INPUT -p tcp -ms <IP Slave> state --statedport ESTABLISHED,RELATED6379 -j ACCEPT

# разрешить обращения к localhostSentinel
sudo iptables -A INPUT -ip lotcp -j ACCEPT
# опционально, разрешим пинговать себяs <IP Master>  --dport 26379 -j ACCEPT
sudo iptables -A INPUT -p icmptcp -s <IP Slave>  -icmp-typedport 826379 -j ACCEPT

# PostgreSQL
sudo iptables -A INPUT -p tcp -s <IP Master>Witness>  --dport 543226379 -j ACCEPT

# RabbitMQ
sudo iptables -A INPUT -p tcp -s <IP Slave>Master>  --dport 54325671 -j ACCEPT

# Sentinel
sudo iptables -A INPUT -p tcp -s <IP Master>Slave>  --dport 263795671 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Slave>Witness>  --dport 263795671 -j ACCEPT

# RabbitMQ
sudo iptables -A INPUT -p tcp -s <IP Master>  --dport 56714369 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Slave>  --dport 56714369 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Master>Witness>  --dport 4369 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Slave>Master>  --dport 436925672 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Master>Slave>  --dport 25672 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Slave>Witness>  --dport 25672 -j ACCEPT

Примените правила на каждом сервере:

Блок кода
languagebash
themeRDark
chmod +x iptables.sh
sudo ./iptables.sh

Для того чтобы правила сохранились после перезагрузки, можно использовать утилиту iptables-persistent (или любые другие доступные методы):

Блок кода
languagebash
themeRDark
sudo apt-get install iptables-persistent
sudo netfilter-persistent save
Раскрыть
titleНастройка firewall для отказоустойчивой системы с БД на отдельном сервере


# Keepalived
sudo iptables -A INPUT -p vrrp -j ACCEPT

На узле Witness создайте файл iptables.sh Создайте файл iptables.sh на узлах Master-app и Slave-app со следующими правилами:

Блок кода
languagebash
themeRDark
titleУзлы Master-app и Slave-appУзел Witness
sudo iptables -P INPUT DROP                             # запрет всех входящих соединений
sudo iptables -P FORWARD DROP                           # запрет для всех проходящих через ваш хост соединений
sudo iptables -P OUTPUT ACCEPT

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPTsudo iptables -P INPUT DROP                            # SSH

# запрет всех входящих соединенийразрешим исходящие подключения, которые инициировали мы сами
sudo iptables -A INPUT -m state -P FORWARD DROP                           # запрет для всех проходящих через ваш хост соединений
sudo iptables -P OUTPUT ACCEPT
-state ESTABLISHED,RELATED -j ACCEPT
# разрешить обращения к localhost
sudo iptables -A INPUT -i lo -j ACCEPT
# опционально, разрешим пинговать себя
sudo iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT

# PostgreSQL
sudo iptables -A INPUT -p tcp -s <IP Master>  --dport 5432 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Slave>  --dport 225432 -j ACCEPT      

# SSHSentinel
sudo iptables -A INPUT -p tcp -s <IP Master>  --dport 44326379 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Slave>  # веб--интерфейсdport ECCM26379 на схеме HTTPS-j ACCEPT

# разрешим исходящие подключения, которые инициировали мы самиRabbitMQ
sudo iptables -A INPUT -p tcp -ms <IP Master> state --statedport ESTABLISHED,RELATED5671 -j ACCEPT
# разрешить обращения к localhost
sudo iptables -A INPUT -ip lotcp -j ACCEPT
# опционально, разрешим пинговать себяs <IP Slave>  --dport 5671 -j ACCEPT
sudo iptables -A INPUT -p icmptcp -s <IP Master>  -icmp-typedport 84369 -j ACCEPT

sudo iptables -A INPUT -p udp tcp -s <IP Slave>  --dport 674369 -j ACCEPT    # DHCP
sudo iptables -A INPUT -p udp tcp -s <IP Master>  --dport 6925672 -j ACCEPT    # TFTP
sudo iptables -A INPUT -p udp tcp -s <IP Slave>  --dport 16225672 -j ACCEPT

Примените правила на каждом сервере:

Блок кода
languagebash
themeRDark
chmod +x iptables.sh
sudo ./iptables.sh

Для того чтобы правила сохранились после перезагрузки, можно использовать утилиту iptables-persistent (или любые другие доступные методы):

Блок кода
languagebash
themeRDark
sudo apt-get install iptables-persistent
sudo netfilter-persistent save


Раскрыть
titleНастройка firewall для отказоустойчивой системы с БД на отдельном сервере

Создайте файл iptables.sh на узлах Master-app и Slave-app со следующими правилами:

Блок кода
languagebash
themeRDark
titleУзлы Master-app и Slave-app
 # SNMP-трапы
sudo iptables -A INPUT -p udp --dport 514 -j ACCEPT   # Syslog (UDP)
sudo iptables -AP INPUT -pDROP tcp --dport 514 -j ACCEPT   # Syslog (TCP)
sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT  # загрузка прошивок

# Redis
sudo iptables -A INPUT -p tcp -s <IP Master-app>  --dport 6379 -j ACCEPT                         # запрет всех входящих соединений
sudo iptables -A INPUT -p tcp -s <IP Slave-app>  --dport 6379 -j ACCEPT

# Sentinel
sudo iptables -A INPUT -p tcp -s <IP Master-app>  --dport 26379 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Slave-app> --dport 26379 -j ACCEPT
P FORWARD DROP                           # запрет для всех проходящих через ваш хост соединений
sudo iptables -P OUTPUT ACCEPT

sudo iptables -A INPUT -p tcp -s <IP Witness>  --dport 2637922 -j ACCEPT

      # RabbitMQSSH
sudo iptables -A INPUT -p tcp -s-dport <IP443 Master-app>j ACCEPT --dport 5671 -j ACCEPT
sudo iptables# веб-Aинтерфейс INPUTECCM -pна tcp -s <IP Slave-app>  --dport 5671 -j ACCEPTсхеме HTTPS

# разрешим исходящие подключения, которые инициировали мы сами
sudo iptables -A INPUT -p tcp -s <IP Witness> m state --dportstate 5671ESTABLISHED,RELATED -j ACCEPT
# разрешить обращения к localhost
sudo iptables -A INPUT -pi tcplo -sj <IP Master-app>  --dport 4369 -j ACCEPTACCEPT
# опционально, разрешим пинговать себя
sudo iptables -A INPUT -p tcpicmp -s <IP Slave-app>  --dport 4369-icmp-type 8 -j ACCEPT

sudo iptables -A INPUT -p tcp -s <IP Witness> udp --dport 436967 -j ACCEPT    # DHCP
sudo iptables -A INPUT -p tcpudp -s-dport <IP69 Master-app>j ACCEPT  --dport 25672 -j# ACCEPTTFTP
sudo iptables -A INPUT -p tcp -s <IP Slave-app>p udp --dport 25672162 -j ACCEPT   # SNMP-трапы
sudo iptables -A INPUT -p tcp -s <IP Witness> udp --dport 25672514 -j ACCEPT

   # KeepalivedSyslog (UDP)
sudo iptables -A INPUT -p vrrp -j ACCEPT

На узлах Master-db и Slave-db создайте файл iptables.sh со следующими правилами:

Блок кода
languagebash
themeRDark
titleУзлы Master-db и Slave-db
sudo iptables -P INPUT DROP                             # запрет всех входящих соединенийtcp --dport 514 -j ACCEPT   # Syslog (TCP)
sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT  # загрузка прошивок

# Redis
sudo iptables -A INPUT -p tcp -s <IP Master-app>  --dport 6379 -j ACCEPT
sudo iptables -PA FORWARDINPUT DROP-p tcp -s <IP Slave-app>  --dport 6379 -j ACCEPT

# Sentinel
sudo iptables -A INPUT -p tcp -s <IP Master-app>  --dport 26379 -j ACCEPT
sudo iptables -A INPUT #-p запретtcp для-s всех<IP проходящих через ваш хост соединений
sudo iptables -P OUTPUTSlave-app> --dport 26379 -j ACCEPT

sudo iptables -A INPUT -p tcp -s <IP Witness>  --dport 2226379 -j ACCEPT      # SSH

# разрешим исходящие подключения, которые инициировали мы самиRabbitMQ
sudo iptables -A INPUT -mp statetcp --state ESTABLISHED,RELATED -j ACCEPT
# разрешить обращения к localhosts <IP Master-app>  --dport 5671 -j ACCEPT
sudo iptables -A INPUT -p tcp -is lo<IP Slave-japp> ACCEPT
# опционально: разрешим пинговать себя --dport 5671 -j ACCEPT
sudo iptables -A INPUT -p icmp -p tcp -s <IP Witness>  --icmp-typedport 85671 -j ACCEPT

# PostgreSQL репликация
sudo iptables -A INPUT -p tcp -s <IP Master-db>app>  --dport 54324369 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Slave-db>app>  --dport 54324369 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Witness>  --dport 54324369 -j ACCEPT

# доступ приложений к PostgreSQL
sudo iptables -A INPUT -p tcp -s <IP Master-app>  --dport 543225672 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Slave-app>  --dport 543225672 -j ACCEPT

# опционально: доступ администратора к БД
sudo iptables -A INPUT -p tcp -s <admin_ip>/32 <IP Witness>  --dport 5432 25672 -j ACCEPT

# Keepalived
sudo iptables -A INPUT -p vrrp -j ACCEPT

На узле Witness создайте файл узлах Master-db и Slave-db создайте файл iptables.sh со следующими правилами:

Блок кода
languagebash
themeRDark
titleУзлы Master-db и Slave-dbtitleУзел Witness
sudo iptables -P INPUT DROP                             # запрет всех входящих соединений
sudo iptables -P FORWARD DROP                           # запрет для всех проходящих через ваш хост соединений
sudo iptables -P OUTPUT ACCEPT

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT      # SSH

# разрешим исходящие подключения, которые инициировали мы сами
sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# разрешить обращения к localhost
sudo iptables -A INPUT -i lo -j ACCEPT
# опционально,запрет разрешимдля пинговатьвсех себя
sudoпроходящих iptablesчерез -Aваш INPUT -p icmp --icmp-type 8 -j ACCEPT

# PostgreSQLхост соединений
sudo iptables -P OUTPUT ACCEPT

sudo iptables -A INPUT -p tcp -s <IP Master-db>  --dport 543222 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Slave-db>  --dport 5432 -j ACCEPT

# Sentinel# SSH

# разрешим исходящие подключения, которые инициировали мы сами
sudo iptables -A INPUT -pm tcpstate --sstate <IPESTABLISHED,RELATED Master-app>j  --dport 26379 -j ACCEPTACCEPT
# разрешить обращения к localhost
sudo iptables -A INPUT -p tcp -s <IP Slave-app>  --dport 26379 -i lo -j ACCEPT

# RabbitMQ опционально: разрешим пинговать себя
sudo iptables -A INPUT -p tcpicmp -s <IP Master-app>  --dport 5671-icmp-type 8 -j ACCEPT

# PostgreSQL репликация
sudo iptables -A INPUT -p tcp -s <IP SlaveMaster-app>db>  --dport 56715432 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP MasterSlave-app>db>  --dport 43695432 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Slave-app>Witness>  --dport 43695432 -j ACCEPT

# доступ приложений к PostgreSQL
sudo iptables -A INPUT -p tcp -s <IP Master-app>  --dport 256725432 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Slave-app>  --dport 256725432 -j ACCEPT

Примените правила на каждом сервере:

Блок кода
languagebash
themeRDark
chmod +x iptables.sh
sudo ./iptables.sh

Для того чтобы правила сохранились после перезагрузки, можно использовать утилиту iptables-persistent (или любые другие доступные методы):

Блок кода
languagebash
themeRDark
sudo apt-get install iptables-persistent
sudo netfilter-persistent save

...



# опционально: доступ администратора к БД
sudo iptables -A INPUT -p tcp -s <admin_ip>/32 --dport 5432 -j ACCEPT

На узле Witness создайте файл iptables.sh со следующими

...

iptables.sh

правилами:

Блок кода
languagebash
themeRDark
title
Узел Witness
sudo iptables -P INPUT DROP                             # запрет всех входящих соединений
sudo iptables -P FORWARD DROP                           # запрет для всех проходящих через ваш хост соединений
sudo iptables -P OUTPUT ACCEPT

sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT      # SSH

# разрешим исходящие подключения, которые инициировали мы сами
sudo 
#
iptables 
запрет
-A 
для
INPUT 
всех
-m 
проходящих
state 
через ваш хост соединений sudo iptables -P OUTPUT ACCEPT
--state ESTABLISHED,RELATED -j ACCEPT
# разрешить обращения к localhost
sudo iptables -A INPUT -
p tcp --dport 22
i lo -j ACCEPT
# опционально, разрешим пинговать 
# SSH
себя
sudo iptables -A INPUT -p 
tcp
icmp --icmp-
dport
type 
443
8 -j ACCEPT

# PostgreSQL
sudo iptables -A INPUT 
# веб
-
интерфейс
p 
ECCM
tcp 
на
-s 
схеме
<IP 
HTTPS - не используется для Witness # разрешим исходящие подключения, которые инициировали мы сами
Master-db>  --dport 5432 -j ACCEPT
sudo iptables -A INPUT -p tcp -s <IP Slave-
m
db> 
state
 --
state
dport 
ESTABLISHED,RELATED
5432 -j ACCEPT

# 
разрешить обращения к localhost
Sentinel
sudo iptables -A INPUT -
i lo -j ACCEPT # опционально, разрешим пинговать себя
p tcp -s <IP Master-app>  --dport 26379 -j ACCEPT
sudo iptables -A INPUT -p
icmp --icmp-type 8
 tcp -s <IP Slave-app>  --dport 26379 -j ACCEPT

# RabbitMQ
sudo iptables -A INPUT -p
udp
 tcp -s <IP Master-app>  --dport 
67
5671 -j ACCEPT
# DHCP

sudo iptables -A INPUT -p
udp
 tcp -s <IP Slave-app>  --dport 
69
5671 -j ACCEPT
# TFTP

sudo iptables -A INPUT -p
udp
 tcp -s <IP Master-app>  --dport 
162
4369 -j ACCEPT
# SNMP-трапы

sudo iptables -A INPUT -p
udp
 tcp -s <IP Slave-app>  --dport 
514
4369 -j ACCEPT
# Syslog (UDP)

sudo iptables -A INPUT -p tcp -s <IP Master-app>  --dport 
514
25672 -j ACCEPT
# Syslog (TCP)

sudo iptables -A INPUT -p tcp -s <IP Slave-app>  --dport 
2222
25672 -j ACCEPT
# загрузка прошивок

Примените правила на каждом сервере:

Блок кода
languagebash
themeRDark
chmod +x iptables.sh
sudo ./iptables.sh

Для того чтобы правила сохранились после перезагрузки, можно использовать утилиту iptables-persistent (или любые другие доступные методы):

Блок кода
languagebash
themeRDark
sudo apt-get install iptables-persistent
sudo netfilter-persistent save



Дополнительная защита сервера

...