Ssh команда для роутера

Доступ SSH для новичков

Устройство OpenWrt по умолчанию всегда прослушивает доступ к командной строке SSH на порту 22. Для ssh в маршрутизатор» вы вводите команду ssh root@192.168.1.1 в эмуляторе терминала (для маршрутизатора с адресом 192.168.1.1).

В первый раз, когда вы подключитесь к маршрутизатору, вы, вероятно, увидите предупреждение о отпечатке ключа RSA. Если вы уверены, что это адрес вашего маршрутизатора OpenWrt, просто введите yes и нажмите Return. Затем введите пароль, предоставленный вашему маршрутизатору, или нажмите Return, если это начальная настройка. Вот пример сеанса:

Чтобы завершить ssh сеанс на маршрутизаторе, введите exit и нажмите Return.

Остальная часть этой страницы описывает несколько эмуляторов терминала, которые Windows, Linux или macOS могут использовать для доступа к вашему маршрутизатору OpenWrt.

Терминальные эмуляторы Windows

Cmder, Smartty, Putty и WinSCP являются терминальными эмуляторами, которые позволяют вам сходить в маршрутизатор.

Использование Cmder

Cmder для Windows эмулятор терминала с открытым исходным кодом, который работает в Windows. Он может свободно использовать и обеспечивает легкую “оболочку командной строки” которая позволяет вам ssh в OpenWrt. Его привлекательные шрифты и цветовая схема легко видны на глазах. Полное распределение является предпочтительным (over the mini distribution), так как она обеспечивает эмуляцию Баша, с Unix-й набором команд.

Откройте папку Cmder и дважды щелкните Cmder значок. Вы увидите окно Cmder, похожее на изображение ниже.

Чтобы передать ssh в маршрутизатор OpenWrt на 192.168.1.1, введите ssh root@192.168.1.1 затем нажмите Return

Использование Smartty

Smartty дает вам доступ к командной строке для OpenWrt и позволяет вам открывать /редактировать/загружать/загружать файлы в OpenWrt и в целом более современную и удобную для пользователя, чем Putty (еще один инструмент, описанный ниже):

Загрузите Smartty из http://sysprogs.com/SmarTTY/: выберите “загрузить” для установщика или «портативную версию“, если вы хотите, чтобы это была отдельная программа, которая работает без установки.

после установки или после распаковки архива, дважды щелкните по исполняемому файлу SmarTTY.

Вы будете приветствованы окном с двумя вариантами, дважды нажмите “setup новое соединение SSH ” (другая опция предназначена для последовательных подключений, для usb- TTL -ключей и иногда вы подключаетесь к серийным выводам устройства на плате, мы выиграли Не используйте это сейчас).

Имя пользователя: root (это “администратор” и только пользователь по умолчанию OpenWrt)

Пароль: оставьте это поле пустым для вашего первого подключения, а затем напишите пароль, который вы установили (либо в графическом интерфейсе Luci, либо после первого доступа к SSH )

По умолчанию в прошивке OpenWrt отсутствует серверный компонент, позволяющий открывать /редактировать/просматривать/загружать/загружать файлы в Smartty, поэтому после того, как вы подключились к интернету, напишите, opkg update && opkg install openssh-sftp-server чтобы установить его. Если следующий шаг завершится неудачно, возможно, потребуется перезагрузить устройство OpenWrt для запуска этой новой службы.

Читайте также:  Билайн роутеры которые подходят

Теперь вы можете нажать Файл → Открыть удаленный файл чтобы открыть всплывающее окно с файловой системой устройства OpenWrt, и вы можете перемещаться по нему и открывать текстовые файлы, например, как обычно (они будут открываться в окне текстового редактора SmarTTY)

Если вы хотите загрузить или загрузить файлы в/из определенной папки на устройстве, вы можете щелкнуть по меню SCP и выбрать наиболее подходящее действие оттуда.

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

Использование putty

Putty дает вам доступ к командной строке для OpenWrt:

Загрузите Putty https://www.putty.org: просто получите 32-разрядную “putty.exe” загрузку из “Alternative binary files” раздела.

перейдите в “Session” категорию окна входа в Putty, найдите поле “Host Name” (or IP address) и просто введите IP -адрес (например, 192.168.1.1 ) вашего устройства OpenWrt, сохраните порт 22 по умолчанию.

Нажмите Open кнопку в нижней части, чтобы открыть соединение. Это вызовет окно оболочки, спрашивая login as . Войдите как root с паролем OpenWrt, который вы определили некоторое время раньше. Если вы еще не установили пароль “root”, вам не будет задан пароль.

Использование WinSCP

WinSCP позволяет просматривать файловую систему OpenWrt в Windows Exlorer, например, в стиле GUI :

Сначала вам необходимо установить SFTP -сервер со стороны OpenWrt, так как WinSCP нуждается в том, чтобы успешно соединиться. В командной строке putty (см. Предыдущий раздел) выполните:

Обычно этого не требуется, но для простоты этого способа перезагрузите ваше устройство OpenWrt, чтобы убедиться, что служба SFTP действительно запущена

Скачать WinSCP из https://winscp.net/eng/download.php, получить не-бета Installation package или portable executables установить или распаковать их на клиенте Windows ,

Нажмите New Site слева, затем введите свой IP -адрес устройства OpenWrt (192.168.1.1) с правой стороны Host name , сохраните порт по умолчанию 22 . В User name enter root, in Password , введите ваш root пароль (или оставьте пустым, если вы не установили пароль еще)

Редактирование конфигурационных файлов OpenWrt с помощью встроенного графического редактора WINSCP:
для редактирования конфигурационного файла OpenWrt с помощью редактора WinSCP с графическим интерфейсом щелкните правой кнопкой мыши файл в WinSCP и выберите “Edit” из контекстного меню.

Linux Terminal Emulators

Все дистрибутивы Linux предоставляют клиентский интерфейс ssh как часть стандартной установки.

Откройте эмулятор терминала и напишите ssh root@192.168.1.1 (“ssh» — это команда, root это пользователь OpenWrt, к которому вы подключаетесь, а 192.168.1.1 это светодиод по умолчанию OpenWrt)

появится сообщение о принятии нового ключа от устройства OpenWrt, напишите “yes” и нажмите клавишу “Ввод”.

Если по какой-то причине вы переустановили OpenWrt, у устройства будет другой ключ, и вы получите сообщение о несоответствии ключей. В этой ошибке будет указано, что является командной строкой для копирования-вставки в вашем терминале, чтобы удалить старый ключ и продолжить.

Читайте также:  Mercusys роутер личный кабинет войти

Обычно у Linux также есть клиенты SCP (для открытия/редактирования/загрузки/выгрузки файлов в OpenWrt), которые могут быть установлены или не установлены по умолчанию. Вам нужно найти документацию вашего дистрибутива или выполнить поиск с помощью интерфейса управления пакетами для “SCP”, чтобы найти, где он находится, и его текущий статус установки. Прочтите его встроенное руководство (“man scp”, например, для клиента командной строки SCP) или google некоторые учебные пособия, чтобы узнать, как его использовать.

macOS Terminal Emulators

На macOS (ранее Mac OSX) любой эмулятор терминала позволит вам ssh. Там несколько терминальных эмуляторов:

iTerm2 https://iterm2.com/ значительно улучшенная терминальная программа. Пожертвования — это того стоит.

Чтобы подключиь ssh в вашем маршрутизаторе OpenWrt на 192.168.1.1, введите ssh root@192.168.1.1 , и нажмите Return.

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website. OK More information about cookies

Self-registration in the wiki has been disabled.
If you want to contribute to the OpenWrt wiki, please post HERE in the forum or ask on IRC for access.

Except where otherwise noted, content on this wiki is licensed under the following license:
CC Attribution-Share Alike 4.0 International

Источник

SSH Server

RouterOS has built in SSH server that is enabled by default and is listening for incoming connections on port TCP/22. It is possible to change the port and disable the server under Services menu.

Properties

Sub-menu: /ip ssh

  • no — SSH forwarding is disabled;
  • local — Allow SSH clients to originate connections from the server(router), this setting controls also dynamic forwarding;
  • remote — Allow SSH clients to listen on the server(router) and forward incoming connections;
  • both — Allow both local and remote forwarding methods.
  • prefer 256 and 192 bit encryption instead of 128 bits;
  • disable null encryption;
  • prefer sha256 for hashing instead of sha1;
  • disable md5;
  • use 2048bit prime for Diffie Hellman exchange instead of 1024bit.
  • key-file-prefix — used prefix for generated files, for example, prefix ‘my’ will generate files ‘my_rsa’, ‘my_rsa.pub’ etc.
  • private-key-file — name of the private RSA/Ed25519 key file

Enabling PKI authentication

Example of importing public key for user admin

Generate SSH keys on the client device (the device you will connect from). Upload the public SSH key to the router and import it.

/user ssh-keys import public-key-file=id_rsa.pub user=admin

SSH Client

Sub-menu: /system ssh

Simple log-in to remote host

It is able to connect to remote host and initiate ssh session. IP address supports both IPv4 and IPv6.

/system ssh 192.168.88.1 /system ssh 2001:db8:add:1337::beef

In this case user name provided to remote host is one that has logged into the router. If other value is required, then user= has to be used.

/system ssh 192.168.88.1 user=lala /system ssh 2001:db8:add:1337::beef user=lala

Log-in from certain IP address of the router

For testing or security reasons it may be required to log-in to other host using certain source address of the connection. In this case src-address= argument has to be used. Note that IP address in this case supports both, IPv4 and IPv6.

/system ssh 192.168.88.1 src-address=192.168.89.2 /system ssh 2001:db8:add:1337::beef src-address=2001:db8:bad:1000::2

in this case, ssh client will try to bind to address specified and then initiate ssh connection to remote host.

Читайте также:  Wifi роутер настройки слетают

Log-in using RSA public/private key

Example of importing private key for user admin

First of all, export currently generated SSH keys to a file:

/ip ssh export-host-key key-file-prefix=admin

Two files admin_rsa and admin_rsa.pub will be generated. The pub file needs to be trusted on the SSH server side (how to enable SSH PKI on RouterOS) The private key has to be added for the particular user.

/user ssh-keys private import user=admin private-key-file=admin_rsa

Only user with full rights on the router can change ‘user’ attribute value under /user ssh-keys private

After the public key is installed and trusted on the SSH server, a PKI SSH session can be created.

Executing remote commands

To execute remote command it has to be supplied at the end of log-in line

/system ssh 192.168.88.1 "/ip address print" /system ssh 192.168.88.1 command="/ip address print" /system ssh 2001:db8:add:1337::beef "/ip address print" /system ssh 2001:db8:add:1337::beef command="/ip address print"

If the server does not support pseudo-tty (ssh -T or ssh host command), like mikrotik ssh server, then it is not possible to send multiline commands via SSH

For example, sending command «/ip address \n add address=1.1.1.1/24» to MikroTik router will fail.

If you wish to execute remote commands via scripts or scheduler, use command ssh-exec.

SSH exec

Sub-menu: /system ssh-exec

Command ssh-exec is a non-interactive ssh command, thus allowing to execute commands remotely on a device via scripts and scheduler.

Retrieve information

The command will return two values:

  • exit-code: returns 0 if the command execution succeeded
  • output: returns the output of remotely executed command

Example: Code below will retrieve interface status of ether1 from device 10.10.10.1 and output the result to «Log»

:local Status ([/system ssh-exec address=10.10.10.1 user=remote command=":put ([/interface ethernet monitor [find where name=ether1] once as-value]->\"status\")" as-value]->"output") :log info $Status

For security reasons, plain text password input is not allowed. To ensure safe execution of the command remotely, use SSH PKI authentication for users on both sides.

the user group and script policy executing the command requires test permission

Источник

Оцените статью
Adblock
detector