Вход без пароля с помощью ключей SSH

SSH — (Secure Shell — «безопасная оболочка») — сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и туннелирование Порты TCP- соединений (например, для передачи файлов). Далее рассматривается OpenSSH (демон sshd) альтернатива проприетарного ПО от SSH Communications Security. OpenSSH (открытая безопасная оболочка) — набор программ, предоставляющих шифрование сеансов связи по компьютерным сетям с использованием протокола SSH.

Шаг 1: Логинемся под пользователем root

ssh root@your_server_ip

И делаем свое черное дело список здесь список здесь.

Потом вы подумали, что это очень легко работать под правами root, нужно усложнить себе работу и ввести новую сущность — бесправного пользователя и обязательно дать ему имя как ваш ник в Одноглазиках (сорри, вы продвинутые тогда берите из VK)! Чтобы когда вы в логах (/var/log/) увидите как хакеры пробуют взломать вашего демона SSH и не догадались о вашем нике из Одноглазиков — это победа!! Вы можете гордиться вашим ником в социальных сетях — его никто не знает. И значит можно пароль поставить как на домашний роутер admin. Я шутил!

По делу: не работайте от root, пожалуйста!

Разрешаем вход из под root

Ну а теперь переходим на сервер и редактируем конфигурационный файл ssh. Этот конфигурационный файл расположен в каталоге etc/ssh/sshd_config. Для редактирования вводим следующую команду:

Читайте также:  Как автоматизировать некоторые команды Linux

nano etc/ssh/sshd_config

Тут нам нужно найти пункт “PermitRootLogin” и отредактировать его. По умолчанию этот пункт имеет значение “without-password или prohibit-password”. А так же он закоментирован, давайте сначала его раскоментируем. После чего приведем его к следующему виду:

PermitRootLogin yes

Теперь сохраняем отредактированный файл и перезапустим службу ssh. Сделать это можно с помощью команды

systemctl restart ssh || systemctl restart sshd

Теперь самое время проверить, все ли у нас прошло гладко. Давайте попробуем подключиться к нашему серверу под root пользователем. Для этого вводим “ssh [email protected]” и ваш ip адрес сервера. В моем случае это будет выглядеть следующим образом:

ssh [email protected]

Командная строка

Если вы под­клю­чи­тесь к дру­го­му ком­пью­те­ру по SSH, вы не уви­ди­те там рабо­чий стол и окна про­грамм. Вы уви­ди­те чёр­ный экран и стро­ки тек­ста. Это нор­маль­но. Это назы­ва­ет­ся команд­ной стро­кой. Сей­час вы поймёте.

Когда вы рабо­та­е­те за ком­пью­те­ром, вы обыч­но види­те окна, кноп­ки, стра­ни­цы и всё подоб­ное. Это назы­ва­ет­ся гра­фи­че­ским интерфейсом.

Гра­фи­че­ский интер­фейс — это не сами про­грам­мы. Это лишь спо­соб пред­став­ле­ния про­грам­мы. Сама про­грам­ма — это то, что испол­ня­ет­ся внут­ри ком­пью­те­ра: то, что счи­та­ет, копи­ру­ет, обра­ба­ты­ва­ет и так далее. Есть огром­ное коли­че­ство про­грамм без гра­фи­че­ско­го интер­фей­са: напри­мер, веб-сервер Apache — это про­грам­ма. Сер­вер рабо­та­ет на вашем ком­пью­те­ре, зани­ма­ет память, выда­ёт стра­ни­цы куда нуж­но, ведёт свою сер­вер­ную рабо­ту, но у него нет гра­фи­че­ско­го интер­фей­са — нет ника­ко­го окош­ка, на кото­рое вы може­те ска­зать «Это сервер».

Или, напри­мер, ваш бра­у­зер. Если у вас Chrome, то вы види­те окно с веб-страницей. А есть вер­сия Headless Chrome, кото­рая может выплё­вы­вать любые стра­ни­цы в виде кар­ти­нок пря­мо на ваш жёст­кий диск. У это­го «Хро­ма» нет гра­фи­че­ско­го интер­фей­са со стра­ни­цей (но есть неболь­шой интер­фейс для настройки).

Читайте также:  Как предотвратить пробуждение Android от сна (ROOT)

С нашей чело­ве­че­ской точ­ки зре­ния интер­фейс — это и есть про­грам­ма. А с точ­ки зре­ния ком­пью­те­ра интер­фейс — это что-то побоч­ное. И опыт­ные про­грам­ми­сты доволь­но часто исполь­зу­ют в рабо­те про­грам­мы, у кото­рых нет гра­фи­че­ско­го интер­фей­са, толь­ко команд­ная строка.

Команд­ная стро­ка — это тек­сто­вый интер­фейс про­грам­мы. Вы вво­ди­те в эту стро­ку коман­ду, про­грам­ма может в ответ что-то вас спро­сить тек­стом, вы ей тек­стом отве­ти­те, и про­грам­ма сде­ла­ет свою рабо­ту. Мы уже стал­ки­ва­лись с команд­ной стро­кой, когда соби­ра­ли своё при­ло­же­ние в элек­троне или объ­яс­ня­ли, как устро­ен интер­нет:

Здесь в команд­ной стро­ке поль­зо­ва­тель maximilyakhov на ком­пью­те­ре iMac-Maxim выпол­нил коман­ду ping для адре­са — то есть про­ве­рил, откли­ка­ет­ся ли сер­вер с нашим сай­том. Это вид­но из вто­рой стро­ки. Про­грам­ма Ping ста­ла пока­зы­вать ста­ти­сти­ку: полу­чи­ли паке­ты по 64 бай­та за 79 мс. Поль­зо­ва­тель удо­вле­тво­рил­ся резуль­та­том, вышел из про­грам­мы кла­ви­шей Ctrl+C и полу­чил ито­го­вую ста­ти­сти­ку. Сей­час команд­ная стро­ка гото­ва к новым командам

Быва­ют и дру­гие интер­фей­сы про­грамм. Напри­мер, может быть голо­со­вой интер­фейс: ком­пью­тер вас слу­ша­ет, интер­пре­ти­ру­ет коман­ды, зада­ёт вам вопро­сы голосом.

Может быть интер­фейс в виде чата. Вме­сто того что­бы давать тек­сто­вые коман­ды в команд­ной стро­ке, вы пише­те коман­ды чат-боту.

Может быть даже физи­че­ский интер­фейс: когда вы игра­е­те в при­став­ку, вы даё­те коман­ду с помо­щью джой­сти­ка или каких-нибудь палок с дат­чи­ка­ми. Когда в вас попа­да­ют вра­ги, джой­сти­ки могут виб­ри­ро­вать — это при­став­ка вам пыта­ет­ся что-то ска­зать. Так что гра­фи­че­ский интер­фейс — это лишь одна из разновидностей.

Как сохранить настройки в программе PuTTY

Все данные, которые вы вводите в настройках программы PuTTY, никак не сохраняются. Поэтому при повторном подключении приходится заново вводить IP адрес сервера, путь к приватному ключу и другие настройки. Чтобы избежать этой рутинной работы, введенные настройки можно сохранять и загружать.

Читайте также:  Как обойти блокировку сайтов при помощи VPN Gate и OpenVPN

Для этого настройте все параметры подключения в PuTTY и вернитесь на вкладку «Session». Здесь нужно ввести имя сессии и сохранить ее помощью кнопки «Save».

Как сохранить настройки в программе PuTTY

В дальнейшем вам не придется каждый раз вводить одни и те же настройки. Вы сможете просто загружать их с помощью кнопки «Load».

После загрузки ранее сохраненных настроек можно сразу запускать подключение нажатием на кнопку «Open».

Посмотрите также:

  • Как удалить папку в Linux через терминал (консоль)
  • Как перейти в папку в терминале Linux
  • Как открыть файл в терминале Linux
  • Как создать файл в Linux через терминал
  • Как скопировать файл в Linux через терминал
Как сохранить настройки в программе PuTTY

CentOS настройка SSH авторизации по ключу без пароля

Как сгенерировать пару приватного и публичного ключей для ssh соединения? От имени пользователя, для которого нужно создать ключи:

Да, команду можно запускать без параметров. И получим примерно такой вывод:

В интерактивном режиме будет запрошен путь по которому сохранять файлы ключей, вполне разумно оставить значение по-умолчанию. Затем дважды будет запрошен passphrase (пароль) для приватного ключа, его тоже можно не задавать, оставив пустым.

Проверим какие файлы были созданы с помощью команды:

Какой из этих ключей приватный, а какой публичный — легко догадаться.