Linux как узнать порт ssh

Обновлено: 07.07.2024

По умолчанию SSH прослушивает порт 22. Изменение порта SSH по умолчанию добавляет дополнительный уровень безопасности к вашему серверу, снижая риск автоматических атак.

В этом руководстве объясняется, как изменить порт SSH по умолчанию в Linux. Мы также покажем вам, как настроить брандмауэр, чтобы разрешить доступ к новому порту SSH.

Изменение порта SSH

В следующих разделах объясняется, как изменить порт SSH в системе Linux.

1. Выбор нового номера порта

В Linux номера портов ниже 1024 зарезервированы для хорошо известных служб и могут быть связаны только с пользователем root. Хотя вы можете использовать порт в диапазоне 1-1024 для службы SSH, чтобы избежать проблем с распределением портов в будущем, рекомендуется выбрать порт выше 1024.

В этом примере изменится порт SSH на 5522, вы можете выбрать любой порт, который хотите.

2. Настройка брандмауэра

Перед изменением порта SSH вам необходимо настроить брандмауэр, чтобы разрешить трафик на новый порт SSH.

Если вы используете UFW, инструмент настройки брандмауэра по умолчанию для Ubuntu, выполните следующую команду, чтобы открыть новый порт SSH:

В CentOS инструментом управления брандмауэром по умолчанию является FirewallD. Чтобы открыть новый порт, выполните:

Пользователям CentOS также необходимо настроить правила SELinux:

Если вы используете iptables в качестве брандмауэра, чтобы открыть новый порт, запустите:

3. Настройка SSH

Откройте файл конфигурации SSH /etc/ssh/sshd_config текстовом редакторе:

Будьте особенно осторожны при изменении файла конфигурации SSH. Неправильная конфигурация может привести к сбою запуска службы SSH.

После этого сохраните файл и перезапустите службу SSH, чтобы изменения вступили в силу:

В CentOS служба ssh называется sshd :

Чтобы убедиться, что демон SSH прослушивает новый порт 5522, введите:

Результат должен выглядеть примерно так:

Использование нового порта SSH

Чтобы указать порт, вызовите команду ssh за которой следует параметр -p <port_number> :

Если вы регулярно подключаетесь к нескольким системам, вы можете упростить рабочий процесс, указав все свои подключения в файле конфигурации SSH .

Выводы

В этом руководстве вы узнали, как изменить порт SSH на сервере Linux. Вам также следует настроить аутентификацию на основе ключей SSH и подключаться к серверам Linux без ввода пароля.

Favorite

Добавить в избранное (1 оценок, среднее: 5,00 из 5)

Как изменить порт SSH в Linux

П о умолчанию SSH прослушивает порт 22. Изменение порта SSH по умолчанию добавляет дополнительный уровень безопасности вашему серверу, снижая риск автоматических атак.

Вместо изменения порта гораздо проще и безопаснее настроить брандмауэр, чтобы разрешить доступ к порту 22 только с определенных хостов.

В этой статье объясняется, как изменить стандартный порт SSH в Linux. Мы также покажем вам, как настроить брандмауэр, чтобы разрешить доступ к новому порту SSH.

Изменение порта SSH

Выполните следующие действия, чтобы изменить порт SSH в вашей системе Linux:

1. Выбор нового номера порта

В Linux номера портов ниже 1024 зарезервированы для известных служб и могут быть связаны только с правами root. Хотя вы можете использовать порт в диапазоне 1-1024 для службы SSH, чтобы избежать проблем с распределением портов в будущем, рекомендуется выбирать порт выше 1024.

В этом примере порт SSH изменится на 3452, вы можете выбрать любой порт, который вам нравится.

2. Настройка брандмауэра

Перед изменением порта SSH сначала необходимо настроить брандмауэр, чтобы разрешить трафик на новый порт SSH.

Если вы используете UFW, средство настройки брандмауэра по умолчанию для Ubuntu запускает следующую команду, чтобы открыть новый порт SSH:

В CentOS инструментом управления брандмауэром по умолчанию является FirewallD. Чтобы открыть новый порт, выполните следующие команды:

Пользователям CentOS также необходимо настроить правила SELinux, чтобы разрешить новый порт SSH:

Если вы используете iptables в качестве брандмауэра, следующая команда откроет новый порт SSH:

3. Редактирование конфигурации SSH

Откройте файл конфигурации SSH /etc/ssh/sshd_config в текстовом редакторе:

Будьте особенно осторожны при изменении файла конфигурации SSH. Неправильная конфигурация может привести к сбою службы SSH.

Когда вы закончите, сохраните файл и перезапустите службу SSH, чтобы применить изменения:

В CentOS сервис ssh называется sshd:

Чтобы убедиться, что демон SSH прослушивает новый порт 3452, введите:

Вывод должен выглядеть примерно так:

Использование нового порта SSH

Теперь, когда вы изменили порт SSH при входе на удаленный компьютер, вам нужно будет указать новый порт.

Используйте опцию -p <port_number> чтобы указать порт:

Заключение

Из этой статьи вы узнали, как изменить порт SSH на вашем сервере Linux. Вы также можете настроить аутентификацию на основе ключей SSH и подключаться к серверам Linux без ввода пароля.

Если вы регулярно подключаетесь к нескольким системам, вы можете упростить рабочий процесс, определив все свои подключения в файле конфигурации SSH.

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

SSH в Linux

Изучение

SSH — это криптографический сетевой протокол, который позволяет управлять удаленным компьютером и изменять его через Интернет. Этот протокол обеспечивает безопасность даже в уязвимой сети. Большинство дистрибутивов Linux используют OpenSSH, проект с открытым исходным кодом, реализующий протокол SSH.

В этом руководстве мы продемонстрируем, как проверить, работает ли SSH в Linux.

SSH работает в Linux

Есть несколько методов, чтобы определить, работает ли SSH в системе в данный момент.

Обратите внимание, что SSH разделен на две части с точки зрения функциональности: SSH-клиент и SSH-сервер. Клиент подключается к серверу по протоколу SSH. Ключ SSH — это стандартная мера безопасности для защиты соединения.

Если SSH установлен и включен, то, вероятно, сервер SSH запущен и работает в системе, ожидая запроса на соединение SSH. Мы можем определить, работает ли SSH-сервер, но он не дает информации о том, активно ли SSH-соединение. Мы можем проверить это, если порт SSH в настоящее время открыт.

SSH процесс

Это первый шаг к проверке того, работает ли SSH в данный момент. Мы ищем статус процесса sshd. В этом руководстве подробно описана работа с процессами Linux.

Используйте команду ps, чтобы вывести список всех процессов и отфильтровать вывод с помощью grep, чтобы проверить, запущен ли процесс SSH.

В зависимости от состояния процесса вывод будет отличаться.

SSH порт

Каждый процесс / служба в Linux получает свой выделенный порт для связи по сети. SSH по умолчанию настроен на использование порта 22 для удаленной связи. Обратите внимание, что для SSH можно настроить другой порт. Это хорошая мера безопасности для предотвращения различных атак, например, DDoS или перебора.

Даже если программа предназначена для определенного порта, порт не будет открыт, если программа не запущена. Мы можем использовать этот трюк, чтобы проверить, работает ли SSH. Если порт открыт, значит, SSH запущен.

Чтобы проверить список открытых портов, мы будем использовать инструмент netstat. Это специальный инструмент для печати различной сетевой информации, такой как сетевые соединения, таблицы маршрутизации, статистика интерфейса и т. Д. Это руководство демонстрирует всестороннее использование netstat.

Следующая команда проверяет, прослушивает ли SSH порт 22. Если SSH настроен на прослушивание другого порта, используйте этот порт.

Альтернативный метод проверки открытых портов — это проверка файла порта. Следующая команда распечатает список всех открытых файлов портов.

Другой способ — подключиться к порту SSH через Telnet.

В зависимости от того, открыт ли порт 22, выходные данные будут отличаться.

SSH сервис

Статус службы SSH

Служба SSH управляет состоянием функции. Следующая команда распечатает статус службы SSH.

Остановка SSH

По умолчанию SSH настроен на запуск при загрузке. Если в настоящий момент нет необходимости в использовании SSH, мы можем его остановить. Обратите внимание, что для изменения службы требуется учетная запись root или пользователь без полномочий root с привилегиями sudo.

Следующая команда остановит службу SSH.

Запуск SSH

Если SSH не запущен, запустите службу SSH. Он должен загрузить все компоненты и быть готовым принимать соединения SSH.


очевидно что в мануал я смотрел.. перепробовал если не все то большую часть параметров. порт не виден. nmap не всегда видит открытый порт.. поэтому спрашиваю аналоги.


nmap -p1-65536 -sO host.ip

nmap не всегда видит открытый порт

огромное спасибо! порт нашелся 4421 не доглядел параметр этот..

nmap не всегда видит открытый порт


может тебе аналог tcp/ip найти?


нет, ты петросян. какой еще аналог nmap если от программы не зависит tcp/ip. ты просто не понимаешь, как работает сканер и кнак он определяет состояния портов

ты что серьёзно?


очевидно что в мануал я смотрел.. перепробовал если не все то большую часть параметров. порт не виден. nmap не всегда видит открытый порт.. поэтому спрашиваю аналоги.

nmap не всегда видит открытый порт

хочешь сказать другой сканер будет всегда видеть или не видеть?

нормальные люди на 22 порт ssh не ставят, сомневаюсь, что nmap просечет


нормальные люди на 22 порт ssh не ставят, сомневаюсь, что nmap просечет

С чего бы это вдруг?

Вот мой комп:
PORT STATE SERVICE
22/tcp open ssh
111/tcp open rpcbind
139/tcp open netbios-ssn
445/tcp open microsoft-ds
6881/tcp open bittorrent-tracker

На роутере открыт порт 667, запросы на котором перенаправляются на 22 порт на моем компьютере. Его почему-то в списке нет

С какой стороны?


nmap с дефолтными параметрами не сканирует все порты. //KO

Очень странно, только что пробовал подключиться - не вышло, хотя в тот момент, когда ставил перенаправление с порта, 2ip сообщал, что порт открыт.

Читайте также: