SSH (англ. Secure Shell — «безопасная оболочка») удобный и безопасный способ администрировать удаленый сервер . Собственно по этому им пользуются все ). И для начала нам нужно приложения для SSH подключения. Самая известная и удобная программа под Windows это — PuTTY . Скачать ее можно с оф.сайта , там же есть и набор утилит для нее.
Там все очень просто , набираем IP сервера , вводим порт ( по умолчанию 22 ) и нажимаем open . В терминале набираем имя пользователя ( root) и пароль . Помните в Linux пароль не видно !)
Есть не зыблемое правило : под root пользователем делают только первичные настройки и больше его не используют для входя по SSH. Это на прямую связано с безопасностью сервера. По этому перед настройкой самого SSH мы сделаем нового пользователя и дадим ему право выполнять команды от лица root! Начнем .
Первым делом мы добавим нового пользователя .
# adduser test
На экране появиться что пользователь с именем test добавлен, создана одноименная группа и домашняя директория пользователя Creating home directory `/home/test’ …
Adding user `test’ …
Adding new group `test’ (1003) …
Adding new user `test’ (1002) with group `test’ …
Creating home directory `/home/test’ …
Copying files from `/etc/skel’ …
Далее водим пароль пользователя и другие данные типа имени , адреса , заметки , которые заполнять не обязательно.
Теперь нам надо дать права пользователю test выполнять команды с приставкой SUDO .
# visudo команда редактирования правил sudo
Находим строчку :
# User privilege specification
root ALL=(ALL:ALL) ALL
добавляем за ней нашего пользователя(право выполнять любые команды от имени root ) и сохраняем изменения:
test ALL=(ALL:ALL)ALL
Перезагружаем сервер reboot , и заходим под пользователем test.
Теперь можно перейти к настройке SSH.
sudo nano /etc/ssh/sshd_config
# What ports, IPs and protocols we listen for
Port 22
Меняем порт со стандартного значения , например на 2222. Иначе к вам будут ломиться куча ботов.
ListenAddress 0.0.0.0
Если у вас несколько сетевых карт (IP адресов ) вы можете задать слушать только один интерфейс , а не все.
# Authentication:
LoginGraceTime 120
120 секунд вам дается что бы залогиниться .
PermitRootLogin no
Вход под root запрещен . Это очень важно , убедитесь что у вас стоит no !
# To enable empty passwords, change to yes (NOT RECOMMENDED)
PermitEmptyPasswords no
Черным по белому . Вход с пустым паролем запрещен .
Так же вы можете запретить вход группе или пользователю по SSH .
DenyGroups nossh ( группе nossh вход запрещен )
DenyUsers user1 user 2 user3 (Запрет пользователей)
На этом основная настройка SSH закончена , сохраняем изменения, перезагружаем сервер .
Настройки доступа по SSH с использованием ключей можно посмотреть тут.
Denian/Ubuntu. На других Linux дистрибутивах установка может отличаться.