По умолчанию SSH прослушивает порт 22. Изменение порта SSH по умолчанию добавляет дополнительный уровень безопасности к вашему серверу, снижая риск автоматических атак.
В этом руководстве объясняется, как изменить порт SSH по умолчанию в Linux. Мы также покажем вам, как настроить брандмауэр, чтобы разрешить доступ к новому порту SSH.
Лучший способ защитить ваш сервер от атак — настроить брандмауэр так, чтобы он разрешал доступ к порту 22 только с доверенных хостов, и настроить аутентификацию на основе ключа SSH .
- Изменение порта SSH
- Использование нового порта SSH
- Изменение порта SSH
- Выбор нового номера порта
- Настройка брандмауэра
- Настройка SSH
- Использование нового порта SSH
- Выводы
- Какой порт использует SFTP
- Изменение порта SFTP
- Настройка SFTP / SSH
- Использование нового порта SFTP
- Перенаправление локального порта
- Перенаправление удаленного порта
- Динамическая переадресация портов
- Настроить SSH-туннелирование в Windows
- The Default SSH Port Number
- Why should you change the default port number?
- Changing the SSH Port Number
- Verifying the New Port Number
- Conclusion
- Why We Change Default SSH Port?
- How to Change Default SSH Port?
- Selecting a new Port
- Changing the Default SSH Port
- Restart SSH
- Installing SSH on Linux
- How to Change the Default SSH Port
- Навигация по записям
- Управление портами в Ubuntu и Debian
- Управление портами в Centos
- Заключение
Изменение порта SSH
Изменить SSH-порт изображения — простая задача. Все, что вам нужно сделать, это отредактировать файл конфигурации SSH и перезапустить службу.
В следующих разделах объясняется, как изменить порт SSH в системе Linux.
Выбор нового номера порта
В Linux номера портов ниже 1024 зарезервированы для хорошо известных служб и могут быть связаны только с пользователем root. Хотя вы можете использовать порт в диапазоне 1-1024 для службы SSH, чтобы избежать проблем с распределением портов в будущем, рекомендуется выбрать порт выше 1024.
В этом примере изменится порт SSH на 5522, вы можете выбрать любой порт, который хотите.
Настройка брандмауэра
Перед изменением порта SSH вам необходимо настроить брандмауэр, чтобы разрешить трафик на новый порт SSH.
Если вы используете UFW, инструмент настройки брандмауэра по умолчанию для Ubuntu, выполните следующую команду, чтобы открыть новый порт SSH:
sudo ufw allow 5522/tcp
В CentOS инструментом управления брандмауэром по умолчанию является FirewallD. Чтобы открыть новый порт, выполните:
sudo firewall-cmd —permanent —zone=public —add-port=5522/tcpsudo firewall-cmd —reload
Пользователям CentOS также необходимо настроить правила SELinux:
Если вы используете iptables в качестве брандмауэра, чтобы открыть новый порт, запустите:
sudo iptables -A INPUT -p tcp —dport 5522 -m conntrack —ctstate NEW,ESTABLISHED -j ACCEPT
Настройка SSH
Откройте файл конфигурации SSH /etc/ssh/sshd_config текстовом редакторе:
sudo vim /etc/ssh/sshd_config
Найдите строку, начинающуюся с Port 22 . В большинстве случаев эта строка начинается с символа решетки ( # ). Удалите хэш # и введите новый номер порта SSH:
Будьте особенно осторожны при изменении файла конфигурации SSH. Неправильная конфигурация может привести к сбою запуска службы SSH.
После этого сохраните файл и перезапустите службу SSH, чтобы изменения вступили в силу:
sudo systemctl restart ssh
В CentOS служба ssh называется sshd :
sudo systemctl restart sshd
Чтобы убедиться, что демон SSH прослушивает новый порт 5522, введите:
Результат должен выглядеть примерно так:
Использование нового порта SSH
Если вы регулярно подключаетесь к нескольким системам, вы можете упростить рабочий процесс, указав все свои подключения в файле конфигурации SSH .
Выводы
В этом руководстве вы узнали, как изменить порт SSH на сервере Linux. Вам также следует настроить аутентификацию на основе ключей SSH и подключаться к серверам Linux без ввода пароля.
SFTP (SSH File Transfer Protocol) — это безопасный файловый протокол для передачи файлов между двумя хостами по зашифрованному соединению. Он также позволяет выполнять различные файловые операции с удаленными файлами и возобновлять передачу файлов.
SFTP можно использовать как замену устаревшему протоколу FTP. Он имеет все функции FTP, но с более безопасным соединением.
В этой статье объясняется, как изменить порт SFTP по умолчанию в Linux. Мы также покажем вам, как настроить брандмауэр, чтобы разрешить использование нового порта.
Не путайте SFTP с FTPS. Оба протокола служат одной цели. Однако FTPS означает FTP Secure и является расширением стандартного протокола FTP с поддержкой TLS.
- Какой порт использует SFTP
- Изменение порта SFTP
- Использование нового порта SFTP
Какой порт использует SFTP
SFTP является подсистемой SSH и обеспечивает тот же уровень безопасности, что и SSH.
Порт SFTP по умолчанию — 22 .
Изменение порта SFTP
Изменение порта SFTP / SSH по умолчанию добавляет дополнительный уровень безопасности на ваш сервер, снижая риск автоматических атак.
Следующие шаги описывают, как изменить порт SSH на машинах Linux.
В Linux номера портов ниже 1024 зарезервированы для хорошо известных служб и могут быть связаны только с пользователем root. Хотя вы можете использовать порт в диапазоне 1-1024 для службы SSH, чтобы избежать проблем с распределением портов, рекомендуется выбирать порт выше 1024.
В этом примере показано, как изменить порт SFTP / SSH на 4422, но вы можете выбрать любой порт по своему вкусу.
Перед изменением порта SFTP / SSH вам необходимо открыть новый порт в брандмауэре.
Если вы используете UFW, брандмауэр по умолчанию в Ubuntu , выполните следующую команду, чтобы открыть порт:
sudo ufw allow 4422/tcp
В CentOS инструментом управления брандмауэром по умолчанию является FirewallD. Чтобы открыть порт, введите следующие команды:
sudo firewall-cmd —permanent —zone=public —add-port=4422/tcpsudo firewall-cmd —reload
Пользователям CentOS также необходимо настроить правила SELinux, чтобы разрешить новый порт SSH:
Если вы используете другой дистрибутив Linux, в котором работает iptables, чтобы открыть новый порт, выполните:
sudo iptables -A INPUT -p tcp —dport 4422 -m conntrack —ctstate NEW,ESTABLISHED -j ACCEPT
Настройка SFTP / SSH
Конфигурация сервера SSH хранится в /etc/ssh/sshd_config . Откройте файл в текстовом редакторе:
Найдите строку, начинающуюся с Port 22 . Обычно эта строка закомментирована с помощью символа решетки ( # ). Удалите хэш # и введите новый номер порта SSH:
Будьте очень осторожны при редактировании файла конфигурации. Неправильная конфигурация может помешать запуску службы SSH.
Убедитесь, что демон SSH прослушивает новый порт:
Использование нового порта SFTP
Чтобы указать номер порта, вызовите команду sftp с параметром -P за которым следует новый номер порта:
Если вы используете SFTP-клиент с графическим интерфейсом, просто введите новый порт в клиентском интерфейсе.
Порт SFTP по умолчанию — 22. Однако вы можете изменить порт на любой номер.
SSH-туннелирование или перенаправление портов SSH — это метод создания зашифрованного SSH-соединения между клиентом и сервером, через которое могут ретранслироваться порты служб.
Перенаправление SSH полезно для передачи сетевых данных служб, использующих незашифрованный протокол, например VNC или FTP , доступа к контенту с географическим ограничением или обхода промежуточных межсетевых экранов. По сути, вы можете перенаправить любой TCP-порт и туннелировать трафик через безопасное соединение SSH.
Существует три типа переадресации портов SSH:
- Перенаправление локального порта. — Перенаправляет соединение с клиентского хоста на хост-сервер SSH, а затем на порт хоста назначения.
- Перенаправление удаленного порта. — Перенаправляет порт с хоста сервера на хост клиента, а затем на порт хоста назначения.
- Динамическая переадресация портов. — Создает прокси-сервер SOCKS, который обеспечивает связь через ряд портов.
В этой статье объясняется, как настроить локальные, удаленные и динамически зашифрованные туннели SSH.
Перенаправление локального порта
Перенаправление локального порта позволяет вам перенаправить порт на локальном (ssh-клиент) компьютере на порт на удаленном (ssh-сервере), который затем перенаправляется на порт на конечном компьютере.
В этом типе пересылки клиент SSH прослушивает данный порт и туннелирует любое соединение с этим портом на указанный порт на удаленном сервере SSH, который затем подключается к порту на конечном компьютере. Конечный компьютер может быть удаленным SSH-сервером или любым другим компьютером.
Перенаправление локальных портов в основном используется для подключения к удаленной службе во внутренней сети, такой как база данных или сервер VNC.
В Linux, macOS и других системах Unix, чтобы создать переадресацию локального порта, передайте параметр -L клиенту ssh :
Используются следующие параметры:
Имя хоста назначения должно разрешаться с сервера SSH.
Допустим, у вас есть сервер базы данных MySQL, работающий на машине db001.host во внутренней (частной) сети, на порте 3306, который доступен с машины pub001.host , и вы хотите подключиться к базе данных с помощью клиента MySQL на локальном компьютере. сервер. Для этого вы можете перенаправить соединение, используя следующую команду:
После запуска команды вам будет предложено ввести пароль удаленного пользователя SSH. После входа вы войдете на удаленный сервер, и туннель SSH будет установлен. Также рекомендуется настроить аутентификацию на основе ключей SSH и подключаться к серверу без ввода пароля.
Теперь, если вы db001.host:3306 базы данных на pub001.host компьютере pub001.host 127.0.0.1:3336 , соединение будет перенаправлено на db001.host:3306 MySQL db001.host:3306 через компьютер pub001.host который действует как промежуточный сервер.
Вы можете перенаправить несколько портов в несколько пунктов назначения с помощью одной команды ssh. Например, у вас есть другой сервер базы данных MySQL, работающий на компьютере db002.host , и вы хотите подключиться к обоим серверам со своего локального клиента, вы должны запустить:
Чтобы подключиться ко второму серверу, вы должны использовать 127.0.0.1:3337 .
Допустим, вам нужно подключиться к удаленному компьютеру через VNC, который работает на том же сервере и недоступен извне. Вы бы использовали следующую команду:
Параметр -f указывает команде ssh работать в фоновом режиме, а -N не выполнять удаленную команду. Мы используем localhost потому что VNC и SSH-сервер работают на одном хосте.
Если у вас возникли проблемы с настройкой туннелирования, проверьте конфигурацию удаленного SSH-сервера и убедитесь, что для параметра AllowTcpForwarding не задано значение no . По умолчанию пересылка разрешена.
Перенаправление удаленного порта
Перенаправление удаленного порта противоположно перенаправлению локального порта. Это позволяет вам перенаправить порт на удаленном (ssh-сервере) компьютере на порт на локальном (ssh-клиент) компьютере, который затем перенаправляется на порт на конечном компьютере.
В этом типе пересылки сервер SSH прослушивает данный порт и туннелирует любое соединение с этим портом на указанный порт на локальном клиенте SSH, который затем подключается к порту на конечном компьютере. Конечный компьютер может быть локальным или любым другим.
В Linux, macOS и других системах Unix для создания удаленного перенаправления портов передайте параметр -R клиенту ssh :
Удаленная переадресация портов в основном используется для предоставления доступа к внутренней службе кому-либо извне.
Если у вас есть доступ к удаленному серверу SSH, вы можете настроить переадресацию удаленного порта следующим образом:
Приведенная выше команда заставит ssh-сервер прослушивать порт 8080 и туннелировать весь трафик с этого порта на ваш локальный компьютер через порт 3000 .
Теперь ваш коллега-разработчик может ввести the_ssh_server_ip:8080 в своем браузере и просмотреть ваше замечательное приложение.
Если у вас возникли проблемы с настройкой перенаправления удаленного порта, убедитесь, что для параметра GatewayPorts установлено значение « yes в конфигурации удаленного сервера SSH.
Динамическая переадресация портов
Динамическая переадресация портов позволяет создать сокет на локальном (ssh-клиентском) компьютере, который действует как прокси-сервер SOCKS. Когда клиент подключается к этому порту, соединение перенаправляется на удаленный компьютер (сервер ssh), который затем перенаправляется на динамический порт на конечном компьютере.
Таким образом, все приложения, использующие прокси-сервер SOCKS, будут подключаться к серверу SSH, и сервер будет перенаправлять весь трафик в его фактическое место назначения.
В Linux, macOS и других системах Unix для создания динамической переадресации портов (SOCKS) передайте параметр -D клиенту ssh :
Типичным примером динамической переадресации портов является туннелирование трафика веб-браузера через SSH-сервер.
После того, как туннелирование установлено, вы можете настроить свое приложение для его использования. В этой статье объясняется, как настроить Firefox и браузер Google Chrome для использования прокси-сервера SOCKS.
Перенаправление портов должно быть настроено отдельно для каждого приложения, которое вы хотите туннелировать трафик через него.
Настроить SSH-туннелирование в Windows
- При настройке динамической пересылки введите только локальный порт SOCKS в поле Source Port .
- Нажмите кнопку « Add , как показано на изображении ниже.
- Вернитесь на страницу Session чтобы сохранить настройки, чтобы не вводить их каждый раз. Введите имя сеанса в поле « Saved Session и нажмите кнопку « Save .
- Выберите сохраненный сеанс и войдите на удаленный сервер, нажав кнопку « Open . Появится новое окно с запросом вашего имени пользователя и пароля. После того, как вы введете свое имя пользователя и пароль, вы войдете на свой сервер, и будет запущен туннель SSH. Настройка аутентификации с открытым ключом позволяет вам подключаться к вашему серверу без ввода пароля.
Мы показали вам, как настроить туннели SSH и пересылать трафик через безопасное соединение SSH. Для простоты использования вы можете определить туннель SSH в файле конфигурации SSH или создать псевдоним Bash, который будет настраивать туннель SSH.
A secure shell or SSH protocol encrypts the connection between two computers, thus providing a secure way of accessing remote devices. SSH is used extensively in remote logins and it is now the de-facto utility for secure client-server communication. The process of changing the SSH port is explained in this article.
The Default SSH Port Number
A port number is used to identify a process or an application that is communicating over a network. Any incoming data can be correctly forwarded to the application by using the relayed port number. Outgoing data can mention a port number so that the receiver can correctly identify the source of information. SSH server by default uses port 22.
Why should you change the default port number?
Changing the default SSH port number will slightly bump the security of your server. The default port 22 can make the device vulnerable to brute force login attempts by bots. With a different port number, you can add an extra layer of security. Though this is not a robust security measure, it still makes the life of an attacker difficult as he/she will have to guess the correct port number or use other tools to scan and find out the correct port number. Changing the SSH port number should be the very first step you should consider when securing your server.
Changing the SSH Port Number
SSH port can be changed using a couple of commands. To check current port number being used by SSH, run the command below:
You will get some output like this:
#Port 22
#GatewayPorts no
You can see the port number currently being used in the first line of the output.
Now to change the port number, run the command below to edit the SSH config file. You can replace “nano” with the command of your favorite text editor.
Locate the “Port 22” or similar line you found in the output above. Uncomment (by removing the “#” symbol) and change the port value according to your needs. It is a good idea to use a port number greater than or equal to 1024. Anything below this may already be used by another system program. 65535 can be the highest possible port value.
After changing the port, you need to restart the SSH daemon. You can do so by running the command below:
Verifying the New Port Number
To verify that the new port number is being used, run one of the commands below:
For netstat to work, you will need to install net-tools on Ubuntu:
apt net-tools
After running the commands above, you will see some output like this (assuming that the new port number is 5555):
tcp 0 0 0.0.0.0:5555 0.0.0.0:* LISTEN 14208/sshd: /usr/sb
tcp6 0 0 :::5555 :::* LISTEN 14208/sshd: /usr/sb
Conclusion
Keeping SSH port to the default value makes brute force login attempts easier for attackers. While changing the port number may not fully secure the device, it hardens the security layer by obscuring the port number.
I am a freelancer software developer and content writer who loves Linux, open source software and the free software community.
The authenticity of the host ‘example.ssh.com’ cannot be established.
DSA key fingerprint is
:::::jk:lm:::pq:rs:tu::::
Are you sure you want to continue connecting (yes/no)?
Wireless or wired communication between two machines takes place through ports. There are a total of 65,536 Communication ports and communication can take place through any of these ports. SSH communicates by default through port 22. When we run the above command, connection between local client and server is established through port 22 and all the communication takes place through this port.
Why We Change Default SSH Port?
We change Default SSH port to provide security measures to the server especially from Brute Force Attack.
Brute Force Attack is a trial and error method to decode encrypted data such as passwords through exhaustive effort rather than applying intellectual algorithm. This is just like we make different number of combinations from specific alphabets.
Port 22 is default port of SSH so everyone knows about it and it is much easier to access data from this port by unauthorized person than any other port. In case of changed default SSH port, hacker has to try different ports on trial and error base and it becomes much more difficult to find an open port. Default port is changed to give a hacker in such a situation.
How to Change Default SSH Port?
You can change the default SSH port for your Linux Server to add security measure.
You must have sudo privilege to get connected with server.
Selecting a new Port
There are a total of 65,536 communication ports and we have to choose one port among these but which one?
- System/Well Known Ports: 0-1023
- Dynamic/Private Ports: 49152-65535
In order to avoid miss-configuring, we choose a port number from Dynamic/Private Ports.
Changing the Default SSH Port
Remove # sign and replace the Port 22 with your selected port from given range of ports. For example
In order to avoid completely locking yourself from your system, you should whitelist the port you have specified above (e.g. 49160) on your firewall.
Restart SSH
This blog gives a brief knowledge on the procedure of changing default SSH port and the importance of changing default SSH port. I have summarized each step and hope you will find it helping.
Secure Shell, commonly called SSH, is a network protocol used to perform remote logins in machines in a network or over the internet. SSH is very popular as it is secure and easy to use, especially if you are comfortable using the terminal.
In this quick guide, we will discuss how to install SSH using OpenSSH server on a Linux system, quick configuration, and finally, show you how to view and change the port on which SSH is running.
Let us get started:
Installing SSH on Linux
Let us start by discussing how to install SSH on Linux.
NOTE: This part of the tutorial is not all that important, and you can skip it if you already have SSH installed on your system.
That said, start by updating the system using the command:
sudo apt-get update && sudo apt-get upgrade
Next, install the OpenSSH server using the simple command:
sudo apt-get install openssh-server
Once the command executes successfully, you should have SSH setup on your system and start configuring it.
By convention, the SSH service gets installed as ssh service, and you can manage it using systemd.
Start by checking if you have the service correctly installed using the command:
After confirming that you have SSH service installed, you can go ahead and start the service using the command:
To enable SSH to run on boot, use the systemctl command:
sudo systemctl enable ssh
How to Change the Default SSH Port
SSH is a powerful functionality that allows remote logins on a device from anywhere in the world. This feature can also be an exploitable vulnerability if an attacker gains access to the system.
A fundamental way to secure SSH is to change the port on which it runs by default, port 22.
Let us now look at how you can start securing your system by changing the default SSH port.
To change the default SSH port, we need to edit the SSH server configuration file in /etc/ssh/sshd_config
Edit the config file and uncomment the entry #Port and specify the port you wish to use as the default SSH port.
sudo nano /etc/ssh/sshd_config #Port 22

You can also perform other configurations in this file to enhance your server security, but we will not get into that in this tutorial.
Now, close the file and save all the changes. Next, we need to restart the service to apply the changes, which you can do using the command:
To view the port on which SSH is running, cat the contents of the sshd_config file and grep for port using the command:
In this quick guide, we have discussed how to install and quickly configure SSH on Linux. We also covered how to edit the SSH configuration file to change the default SSH port and finally looked at how to tell which port SSH is running on.
На тесте изменю порт SSH в Ubuntu Server 14.0.4 LTS и Ubuntu Server 16.0.4 LTS.
Откроем конфигурацию SSH например в текстовом редакторе nano (в nano клавиши Ctrl+X для выхода, y/n для сохранения или отмены изменений):
Найдем строчку «Port 22» и изменим её например на «Port 58222«.
Чтобы применить изменения перезапустим ssh (на разных системах он может перезагружаться по разному, по этому приведу список возможных команд):
sudo service ssh restart
sudo /etc/init.d/ssh restart
sudo /etc/init.d/sshd restart
После перезапуска SSH, он станет доступен по новому порту, а текущая сессия на старом останется активной, по этому не отключаясь для проверки попробуем подключиться по новому порту, если не пускает, то возможно в системе работает фаервол и нужно в нем разрешить новый порт, например в iptables это делается так (где 58222 наш новый порт):
sudo iptables -A INPUT -p tcp —dport 58222 -j ACCEPT
Можно разрешить средствами iptables подключение к SSH только с указанного диапазона IP адресов:
sudo iptables -A INPUT -d 192.168.0.0/24 -p tcp —dport 58222 -j ACCEPT
Если все ок, подключаемся через новый порт и можем удалить старое правило iptables, например так:
sudo iptables -D INPUT -p tcp —dport 22 -j ACCEPT
Пример команды для подключения из Linux к SSH по нестандартному порту:
Посмотреть в системе на каком порту и на каких сетевых интерфейсах работает SSH можно так:
Навигация по записям
По умолчанию подключение к VPS от RUVDS с помощью SSH происходит через 22-й порт. Использование стандартного порта сильно увеличивает риск взлома вашего сервера при использовании брут фос (brute-force) атак. Как один из способов защиты, но не единственный, от данного вида атак является смена стандартного 22 порта.
Обычно информация об используемом порте находится на вашем виртуальном сервере (VPS) в файле sshd_config, который находится в директории /etc/ssh/
Чтобы сменить SSH-порт сделайте следующее:1. Заходим на сервер помощью SSH-клиента PuTTY2. Проверяем список открытых портов командой:
Таким образом мы проверим какие из портов уже используются, чтобы не использовать их повторно.
3. После проверки портов открываем файл sshd_config. Его вы можете открыть с помощью любого установленного текстового редактора:
4. Ищем в файле sshd_config запись:

5. Меняем номер порта на другой и сохраняем данные изменения при помощи команды:
После нажимаем подтвердить, с помощью клавиши Enter на клавиатуре
6. Чтобы изменения вошли в силу, перезагрузите ваш виртуальный SSH-сервер. Это можно сделать при помощи команды:
systemctl restart sshd.service
Войдите в раздел “Мои серверы” на сайте RUVDS.com и нажмите кнопку “Play” под скриншотом вашего сервера.

8. В случае, если вы забыли какой порт назначили для подключения по SSH, вы всегда сможете зайти на ваш VPS в аварийном режиме, через панель управления на сайте RUVDS, в разделе Мои серверы, кликнув мышью по скриншоту вашего сервера.
Как много времени проходит с момента заказа сервера на хостинге до первого подключения к готовому серверу? Несколько минут. На сколько полученный сервер готов к тому, чтобы использовать его на полную? На 100%. Ну или почти на 100. Точнее, совсем не на 100. Новый сервер подобен новорождённому ребёнку. У него одежды, нет приобретённого иммунитета и нет почти никаких навыков. Он уязвим для любого внешнего воздействия. И защиту от окружающих угроз мы должны ему дать. Наш новый сервер на начальном этапе не готов противостоять всему, что приходит к нему извне. А значит, его необходимо оснастить защитой. Такая защита для сервера – брандмауэр, или файрвол (firewall), или межсетевой экран.
Обмен информацией между узлами сети происходит посредством портов открытых для использования на узлах. Для того, чтобы иметь гарантии прохождения исключительно легитимного трафика, следует уметь управлять портами нашего сервера при помощи брандмауэра.
Управление портами в Ubuntu и Debian
В операционных системах Ubuntu и Debian для управления брандмауэром довольно часто применяется утилита iptables. Её упрощённым интерфейсом является UFW (Uncomplicated Firewall). Открытие доступа к серверу для какого-либо приложения происходит путём регистрации этого приложения в UFW.
В Ubuntu интерфейс UFW как правило присутствует по умолчанию, в Debian же необходимо будет сначала его проинсталлировать. Перед установкой брандмауэра рекомендуется обновить репозитории:
$ sudo apt update
$ sudo apt install ufw
Список приложений, зарегистрированных в брандмауэре, доступен по следующей команде:
$ sudo ufw app list
Если вы производите первоначальную настройку межсетевого экрана используя подключение к серверу по ssh, логично было бы сразу же прописать в UFW соответствующее этому протоколу правило:
$ sudo ufw allow SSH
Эту команду также можно применить используя соответствующий номер порта вместо имени протокола. Для ssh это, как правило, порт 22:
$ sudo ufw allow 22
В Ubuntu команда для разрешения подключения по ssh выглядит как:
$ sudo ufw allow OpenSSH
Для того, чтобы межсетевой экран начал работать, его необходимо запустить:
$ sudo ufw enable
Теперь, можно добавить в UFW правило, которое позволит разрешить передачу данных, например, по порту 80, или другими словами, при помощи протокола http. Это можно прописать командой:
$ sudo ufw allow http
По аналогии можно также разрешить трафик с использованием порта 443, то есть по протоколу https:
$ sudo ufw allow https
Подобными инструкциями можно давать разрешения для подключений, использующих несколько портов. Например, так выглядит команда на открытие целого диапазона портов (32810-32814):
$ sudo ufw allow 32810:32814/udp
$ sudo ufw allow from 10.10.10.233
Или из одной определённой подсети:
$ sudo ufw allow from 10.10.10.0/24
$ sudo ufw allow from 10.10.10.233 to any port 22
Естественно существует возможность и закрыть доступ для уже открытого подключения через определённый порт. Для этого используется команда deny. Следующей командой можно запретить подключения по протоколу http:
$ sudo ufw deny http
$ sudo ufw deny from 10.10.10.233
Уже созданные правила можно также удалить. Сделать это можно по номеру правила. Чтобы узнать номера правил, используйте следующую команду:
$ sudo ufw status numbered
Вывод данной команды выглядит следующим образом:

Номера правил указаны в скобках в начале строки. Например, правило для подключения по 443-му порту имеет номер 3. Исходя из этого, команда для удаления этого правила будет выглядеть как:
То же самое можно сделать командой:
$ sudo ufw delete allow 443/tcp
Посмотреть текущее состояние межсетевого экрана позволяет команда:

Для отключения брандмауэра служит следующая инструкция:
$ sudo ufw disable
Управление портами в Centos
Клиентским интерфейсом для работы с межсетевым экраном в Centos является программа firewalld. Как правило, firewalld уже по умолчанию входит в состав служб Centos. Но если вдруг это не так, для его установки используйте следующие команды:
$ sudo dnf update -y
$ sudo dnf install firewalld -y
Если окажется, что firewalld уже был установлен в системе, команда вернёт следующее сообщение:

Текущее состояние службы можно увидеть набрав команду:
$ systemctl status firewalld
Если служба работает штатно, то вывод команды будет выглядеть так:

Список приложений, которым доступ в firewalld уже предоставлен, можно увидеть с помощью команды:
$ sudo firewall-cmd —permanent —list-all
Такие приложения перечислены в строке services:

Чтобы предоставить приложению или протоколу, например, http, возможность производить подключения к нашему серверу, необходимо использовать команду следующего вида:
$ sudo firewall-cmd —permanent —add-service=http
Этот протокол должен добавиться в строку services:

Аналогичным образом можно открыть доступ для подключений к серверу по протоколу https:
$ sudo firewall-cmd —permanent —add-service=https

В firewalld также есть возможность предоставить доступ для подключений по определённому порту. Так, например, будет выглядеть команда для открытия доступа по udp-порту 32810:
$ sudo firewall-cmd —zone=public —add-port=32810/udp
А так пишется команда для открытия доступа по пулу портов, например, для udp-портов с 32811 по 32814:
$ sudo firewall-cmd —zone=public —add-port=32811-32814/udp
И чтобы убедиться, что данные порты добавлены в список открытых, необходимо использовать следующую инструкцию:
$ sudo firewall-cmd —zone=public —list-ports

Доступ для подключений по определённому порту можно также и заблокировать. Например, закрытие доступа по udp-порту 32814 осуществляется командой:
$ sudo firewall-cmd —zone=public —remove-port=32814/udp
И наконец, для применения всех внесённых изменений, брандмауэр необходимо перезапустить:
$ sudo firewall-cmd —reload
Заключение
Итак, мы рассмотрели установку и запуск межсетевых экранов в операционных системах Linux, таких как Ubuntu, Debian и Centos. А также, мы научились открывать доступ для подключений к нашему серверу через определённые порты и протоколы.

