
Автоматическая SSH-авторизация по ключу на сервере. Обычная авторизация по паролю очень не достаточно надежный метод. Поэтому сегодня я расскажу как заходить на сервер автоматически без ввода пароля. В статье про создание собственного vpn я говорил, что расскажу как это делать и вот рассказываю.SSH — это безопасный, зашифрованный протокол для удаленного управления.
Создать ключи SSH
Подключаемся к серверу. Заходим в папку пользователя «root». С помощью команды mkdir cоздадим (если ещё не создана) папку .ssh и зайдем в неё:
| 1 | mkdir .ssh && cd .ssh |
Генерируем ключи командой:
| 1 | ssh-keygen |
При выполнении команды будет выведен запрос с просьбой ввести пароль для ключа — «Enter file in which to save the key (/root/.ssh/id_rsa):». Можете задать его. В этом случае даже если злоумышленник получит доступ к вашему компьютеру и попытается использовать созданный ssh ключ для доступа к серверу то не сможет этого сделать так как не знает пароль.
Если хотите усилить безопасность то можете указать пароль. Учтите, что при авторизации придется указывать пароль. Если пароль не нужен нажмите «Enter». Далее так же просто нажимайте «Enter». Ключи будут сгенерированы.

Пропишем ключ в файл «authorized_keys», командой:
| 1 | mv id_rsa.pub authorized_keys |
Находясь в каталоге .ssh, назначим права на папку, командой:
| 1 | chmod 700 . |
Затем на файл:
| 1 | chmod 600 authorized_keys |
Посмотреть содержимое папку можно командой ls:
| 1 | ls -a |
Теперь перенесите файл «id_rsa» на локальный компьютер в папку «.ssh»(если на локальном компьютере её то создайте так же как и на сервере). Можно использовать фтп клиент Filezilla (используйте протокол sftp).
Перезапустите сервис ssh командой:
| 1 | service ssh restart |
Или перезагрузите сервер через веб-интерфейс.
Так же как и на сервере измените права на папку .ssh (700) и файл ключа (600), командой «chmod».
В целом можно пользоваться. Но остается возможность доступа по паролю. Если сервер взломают и подберут пароль то смогут использовать ваш сервер. Что бы это исключить можно отключить возможность парольного доступа.
Отключить авторизацию по паролю
Сначала обязательно убедитесь, что всё сделали правильно и можете зайти на сервер без пароля. А ключ дополнительно сохраните в надежном месте. После отключения пароля зайти на сервер можно будет только по ключу! Приступим. Откройте файл настроек:
| 1 | nano /etc/ssh/sshd_config |
Найдите параметр «PasswordAuthentication», удалите знак «#»(раскоментировать), дайте значение «no». Сохраните и закройте файл.
Если хотите запретить авторизоваться на сервере пользователю root то параметру «PermitRootLogin», тоже поставьте значение «no». Перезапустите сервис ssh.
Всё готово. Теперь у вас есть безопасный доступ к серверу.












