Для настройки iptables на CentOS 7 и Ubuntu 20.04 для работы с Outline VPN и Manager вам понадобится добавить правила, которые разрешат входящий трафик на порты 40380 и 51528. Ниже представлены инструкции для обеих операционных систем.
### CentOS 7 (использование iptables)
1. Добавьте правила в iptables для открытия портов:
```sh
sudo iptables -I INPUT -p tcp --dport 40380 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -I INPUT -p tcp --dport 51528 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
```
2. Если требуется, добавьте правила для протокола UDP:
```sh
sudo iptables -I INPUT -p udp --dport 40380 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -I INPUT -p udp --dport 51528 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
```
3. Сохраните настройки iptables, чтобы они оставались после перезагрузки:
```sh
sudo service iptables save
```
Или на CentOS 7, вы можете установить `iptables-services` и использовать следующие команды:
```sh
sudo systemctl enable iptables
sudo systemctl start iptables
sudo iptables-save > /etc/sysconfig/iptables
```
4. Проверьте, что правила добавились корректно:
```sh
sudo iptables -L -n -v
```
### Ubuntu 20.04 (использование ufw)
На Ubuntu 20.04 предпочтительнее использовать ufw (Uncomplicated Firewall), поскольку это более простой и удобный интерфейс для работы с iptables.
1. Если ufw еще не включен, включите его:
```sh
sudo ufw enable
```
2. Добавьте правила для открытия портов:
```sh
sudo ufw allow 40380/tcp
sudo ufw allow 51528/tcp
```
Для UDP портов (если они требуются):
```sh
sudo ufw allow 40380/udp
sudo ufw allow 51528/udp
```
3. Проверьте правила, чтобы убедиться, что они были добавлены:
```sh
sudo ufw status verbose
```
### Общие заметки
- Помните, что на вашем сервере также могут быть дополнительные фаерволы или сетевые политики на уровне облака или хостинга (например, AWS Security Groups, GCP Firewall Rules, Azure Network Security Groups), которые также необходимо будет настроить для разрешения трафика на эти порты.
- Если вы используете IPv6, вам также потребуется добавить соответствующие правила для IPv6 трафика.
- Важно также отметить, что изменения в iptables, сделанные напрямую, будут сброшены при перезагрузке системы, если их не сохранить в файле конфигурации или не восстановить через сервис, такой как `iptables-persistent` на Ubuntu или `iptables-services` на CentOS. Для ufw эти изменения сохраняются автоматически.
- Убедитесь, что вы добавляете эти правила на сервере, который будет запущен Outline, и они соответствуют публичным портам, настроенным для Outline Server и Manager.