This section of the Ubuntu Server Guide introduces a powerful collection of tools for the remote control of networked computers and transfer of data between networked computers, called OpenSSH. You will also learn about some of the configuration settings possible with the OpenSSH server application and how to change them on your Ubuntu system.
OpenSSH - это свободно доступная версия инструментов, поддерживающих протокол Secure Shell (SSH), для удаленного управления компьютером или передачи файлов между компьютерами. Традиционно использовавшиеся для этих целей инструменты, такие как telnet или rcp, не являются безопасными: они передают пароль пользователя простым текстом во время их использования. OpenSSH предоставляет серверного демона и клиентские программы для обеспечения безопасных и зашифрованных операций удаленного управления и передачи файлов, эффективно заменяя при этом устаревшие программы.
Серверная компонента OpenSSH, sshd, постоянно ожидает клиентских соединений от любых клиентских программ. Когда приходит запрос на соединение, sshd устанавливает правильный тип соединения, в зависимости от типа подключаемого клиента. Например, если удаленный компьютер пытается подключится с помощью приложния-клиента ssh, сервер OpenSSH, после авторизации, запустит сеанс удаленного управления. Если же удаленный пользователь подключается с помощью scp, серверный демон OpenSSH, после авторизации, организует безопасное копирование файлов между сервером и клиентом. OpenSSH может использовать множество методов авторизации, включая обычный пароль, использование открытого ключа, и сертификаты Kerberos.
Установка клиента и сервера OpenSSH проста. Для установки OpenSSH клиента на вашу систему Ubuntu, используйте следующую команду в строке терминала:
sudo apt-get install openssh-client
Для установки сервера OpenSSH и всех необходимых файлов выполните эту команду в строке терминала:
sudo apt-get install openssh-server
Вы можете настроить режим работы по умолчанию серверного приложения OpenSSH, sshd, редактируя файл /etc/ssh/sshd_config
. Для получения информации об инструкциях настройки, используемых в этом файле, вы можете просмотреть соответствующее руководство с помощью следующей команды, выполненной в командной строке терминала:
man sshd_config
В конфигурационном файле демона sshd существует множество директив, управляющих такими вещами, как настройки соединения и режимы аутентификации. Ниже перечислены примеры директив, значения которых могут быть изменены в файле /etc/ssh/ssh_config
.
Перед внесением изменений в файл настроек, вы должны скопировать оригинальный файл и защитить его от записи. Таким образом, вы будете иметь оригинальные настройки для справки или повторного использования, при необходимости.
Создайте копию файла /etc/ssh/sshd_config
и защитите его от записи, используя следующую команду, введенную в командной строке терминала:
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.original sudo chmod a-w /etc/ssh/sshd_config.original
Ниже даны примеры инструкций настройки, которые вы можете изменять:
- Чтобы настроить демона OpenSSH в режим прослушивания TCP порта 2222, вместо стандартного TCP порта 22, измените директиву Port таким образом: Port 2222
- Чтобы sshd позволял возможность процедуры идентификации пользователя с использованием данных, основанных на открытом ключе, просто добавьте или измените следующую строку: PubkeyAuthentication yes в файле
/etc/ssh/sshd_config
, если такая строка уже присутствует в файле, удостоверьтесь, что она раскомментирована. - Чтобы ваш сервер OpenSSH отображал содержимое файла
/etc/issue.net
в качестве сообщения перед логином, просто добавьте или измените следующую строку: Banner /etc/issue.net в файле/etc/ssh/sshd_config
.
После внесения изменений в файл /etc/ssh/sshd_config
, сохраните его и, чтобы изменения вступили в силу, перезапустите серверное приложение sshd, выполнив следующую команду в терминале:
sudo /etc/init.d/ssh restart
Доступно большое количество инструкций для sshd, чтобы настроить поведение серверного приложения под ваши нужды. Однако, мы вас предупреждаем: если единственный для вас метод доступа к серверу - с помощью ssh и вы допустите ошибку при настройке sshd с помощью файла /etc/ssh/sshd_config
, может случится, что вы заблокируете себе доступ к серверу после его перезапуска или что сервер sshd откажется запуститься из-за неправильной директивы настройки, то есть будьте предельно внимательны при редактировании этого файла на удаленном сервере.