🔥 Как открыть и закрыть порты на VPS (iptables и UFW) — полное руководство для Linux
🧩 Введение
Управление портами — одна из базовых задач при настройке VPS. Открытые порты позволяют сервисам работать (SSH, HTTP, базы данных), а закрытые — защищают сервер от несанкционированного доступа.
В этой статье ты получишь:
- Полное понимание работы портов
- Примеры команд для iptables и UFW
- Практические кейсы
- Удобный инструмент для генерации правил:
👉 https://4adm.in/firewall-helper
🚪 Что такое порты и зачем их открывать/закрывать
Порт — это логический канал, через который происходит сетевое взаимодействие.
Примеры:
22— SSH (удалённый доступ)80— HTTP443— HTTPS5432— PostgreSQL
👉 Важно:
Открывайте только необходимые порты — это основа безопасности VPS.
⚙️ Работа с iptables
📖 Проверка текущих правил
iptables -L -n -v
✅ Открыть порт (например, 22 для SSH)
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
❌ Закрыть порт
iptables -A INPUT -p tcp --dport 22 -j DROP
или удалить правило:
iptables -D INPUT -p tcp --dport 22 -j ACCEPT
🔒 Разрешить доступ только с конкретного IP
iptables -A INPUT -p tcp -s 192.168.1.100 --dport 22 -j ACCEPT
🚫 Заблокировать IP
iptables -A INPUT -s 192.168.1.100 -j DROP
💾 Сохранение правил
Ubuntu/Debian:
apt install iptables-persistent netfilter-persistent save
⚙️ Работа с UFW (проще и удобнее)
UFW — это надстройка над iptables.
📖 Проверка статуса
ufw status verbose
▶️ Включить UFW
ufw enable
✅ Открыть порт
ufw allow 22/tcp
❌ Закрыть порт
ufw deny 22/tcp
🔐 Разрешить доступ с IP
ufw allow from 192.168.1.100 to any port 22
🔄 Удалить правило
ufw delete allow 22/tcp
🔧 Разрешить HTTP/HTTPS
ufw allow 80 ufw allow 443
🧠 Практические сценарии
🔹 Минимально безопасный сервер
ufw default deny incoming ufw default allow outgoing ufw allow 22 ufw allow 80 ufw allow 443
🔹 Закрыть всё кроме своего IP (iptables)
iptables -P INPUT DROP iptables -A INPUT -p tcp -s YOUR_IP --dport 22 -j ACCEPT iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
🛠️ Удобный инструмент для генерации правил
Чтобы не писать правила вручную и не допускать ошибок, используй:
👉 https://4adm.in/firewall-helper
С помощью этого инструмента ты можешь:
- Генерировать команды для iptables и UFW
- Быстро открыть/закрыть порты
- Настроить доступ по IP
- Избежать ошибок в синтаксисе
💡 Особенно полезно при работе с большим количеством серверов или сложными правилами.
⚠️ Частые ошибки
- ❌ Закрыли порт 22 — потеряли доступ к серверу
- ❌ Открыли все порты (
0.0.0.0/0) - ❌ Не сохранили правила iptables
- ❌ Конфликт UFW и iptables