Как заблокировать/разблокировать порты в Ubuntu?

В Ubuntu можно управлять портами с помощью нескольких инструментов. Вот два основных способа:

Использование UFW (Uncomplicated Firewall)

UFW — это простой в использовании интерфейс для настройки брандмауэра.

  • Блокировка порта:
    Чтобы заблокировать порт (например, порт 80 для TCP), выполните команду:
    Plain text
    Copy to clipboard
    Open code in new window
    EnlighterJS 3 Syntax Highlighter
    sudo ufw deny 80/tcp
    sudo ufw deny 80/tcp
    sudo ufw deny 80/tcp
  • Разблокировка порта:
    Чтобы разрешить доступ к порту, выполните:

    Plain text
    Copy to clipboard
    Open code in new window
    EnlighterJS 3 Syntax Highlighter
    sudo ufw allow 80/tcp
    sudo ufw allow 80/tcp
    sudo ufw allow 80/tcp
    
  • Проверка статуса ufw:
    Вы можете увидеть текущие правила с помощью:

    Plain text
    Copy to clipboard
    Open code in new window
    EnlighterJS 3 Syntax Highlighter
    sudo ufw status verbose
    sudo ufw status verbose
    sudo ufw status verbose
    
  • Включение UFW (если он не активен):
    Plain text
    Copy to clipboard
    Open code in new window
    EnlighterJS 3 Syntax Highlighter
    sudo ufw enable
    sudo ufw enable
    sudo ufw enable
    

Использование iptables

iptables предоставляет более гибкие возможности, но требует более детальной настройки.

  • Блокировка порта:
    Чтобы заблокировать, например, TCP-порт 80, выполните:
    Plain text
    Copy to clipboard
    Open code in new window
    EnlighterJS 3 Syntax Highlighter
    sudo iptables -A INPUT -p tcp --dport 80 -j DROP
    sudo iptables -A INPUT -p tcp --dport 80 -j DROP
    sudo iptables -A INPUT -p tcp --dport 80 -j DROP
    
  • Разблокировка порта:
    Для удаления правила, которое блокирует порт, используйте:

    Plain text
    Copy to clipboard
    Open code in new window
    EnlighterJS 3 Syntax Highlighter
    sudo iptables -D INPUT -p tcp --dport 80 -j DROP
    sudo iptables -D INPUT -p tcp --dport 80 -j DROP
    sudo iptables -D INPUT -p tcp --dport 80 -j DROP
    

Примечание: Изменения в iptables не сохраняются автоматически после перезагрузки системы. Для постоянного сохранения правил можно использовать утилиту iptables-persistent или сохранять правила вручную с помощью iptables-save.

Рекомендации

  • Если вам нужен простой и понятный способ управления доступом к портам, лучше использовать ufw.
  • Если требуется более тонкая настройка, выбирайте iptables, но не забывайте о сохранении правил.

Эти методы помогут вам эффективно блокировать или разблокировать порты в Ubuntu.