User Tools

Site Tools


flyrouter:sshkey

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

flyrouter:sshkey [2018/04/09 15:36] (current)
Line 1: Line 1:
 +===== Как организовать SSH авторизацию по ключам ? =====
 +
 +Довольно часто возникает необходимость авторизироваться на роутере в автоматическом режиме,​ без ввода каких-либо дополнительных данных (сохранение и восстановление конфигурационных файлов и т.д.). Для этого необходимо создать парные ключи - приватный и публичный. Приватный ключ должнен находиться на том компьютере,​ с которого осуществляется соединение,​ а публичный - на роутере.\\
 +
 +Создайте пару ключей на роутере выполнив следующие команды:​
 +<​code>​
 +cd /tmp
 +dropbearkey -t rsa -f fly-private.key | sed -n '/​ssh/​p'​ > fly-public.key
 +</​code>​
 +
 +Публичные ключи хранятся на роутере в файле **/​etc/​dropbear/​authorized_keys**. В каждой строке этого файла может находиться отдельный ключ. Скопируйте (добавьте) созданный публичный ключ в этот файл и установите жесткие права доступа к нему:
 +<​code>​
 +cat /​tmp/​fly-public.key >> /​etc/​dropbear/​authorized_keys
 +chmod 600 /​etc/​dropbear/​authorized_keys
 +</​code>​
 +
 +Скопируйте приватный ключ на компьютер,​ с которого будет осуществляться вход на роутер. Для этого можно воспользоваться командой **scp** которая работает по протоколу защищенного копирования файлов (тот-же ssh). Вторым параметром укажите имя пользователя (admin), IP адрес или доменное имя компьютера (myserver), путь и имя файла (/​home/​admin/​.ssh/​fly-private.key). Как правило,​ приватные ключи хранятся в домашнем каталоге пользователя в служебной папке .ssh :
 +<​code>​
 +scp /​tmp/​fly-private.key admin@myserver:/​home/​admin/​.ssh/​fly-private.key
 +</​code>​
 +
 +После этого сохраните настройки и перезагрузите роутер:​
 +<​code>​
 +flash save
 +reboot
 +</​code>​
 +
 +Попробуйте зайти на роутер с компьютера,​ используя приватный ключ:
 +<​code>​
 +ssh root@myrouter -i /​home/​admin/​.ssh/​fly-private.key
 +</​code>​
 +
 +Как правило,​ при первом подключении к роутеру,​ поступит запрос на принятие ключа. Принятые сессионные ключи хранятся на роутере в файле **/​root/​.ssh/​known_hosts**. Для того, что-бы это не повторялось,​ сделайте повторно **flash save** на роутере и перезагрузите его.
  
flyrouter/sshkey.txt · Last modified: 2018/04/09 15:36 (external edit)