iFinder Posted January 14, 2019 Share Posted January 14, 2019 (edited) Весной 2018 года на Keenetic Giga III с прошивкой 2.11.C.1.0-3 по инструкции уважаемого TheBB установил систему пакетов Entware: Затем установил несколько пакетов, в том числе пакет MC, с помощью которого написал свой первый Bash-скрипт и добавил его в автозагрузку. Позднее прошивка Keenetic неоднократно обновлялась и стала последняя 2.14.C.0.0-4, а скрипт продолжает успешно работать. Сейчас возникла необходимость правки Bash-скрипта и я через SSH-подключение попробовал запустить пакет MC, но получил: Command::Base error[7405600]: no such command: mc. Позднее выяснил, что ни одна команда, в том числе opkg list-installed не работает. На Роутере в менеджере Менеджер пакетов OPKG указан Сценарий initrc: /opt/etc/init.d/rc.unslung Что надо сделать, чтобы можно было получить доступ к ранее установленным пакетам, в частности к MC ? Edited January 14, 2019 by iFinder опечатка Quote Link to comment Share on other sites More sharing options...
zyxmon Posted January 14, 2019 Share Posted January 14, 2019 4 минуты назад, iFinder сказал: Позднее выяснил, что ни одна команда, в том числе opkg list-installe не работает. Нет такой команды. Есть `opkg list-installed`. Впрочем начнем с простого - просто `opkg` (без параметров) работает?. Если лень разбираться - сохраните свой скрипт, переформатируйте носитель, переустановите entware, восстановите скрипт. Quote Link to comment Share on other sites More sharing options...
dexter Posted January 14, 2019 Share Posted January 14, 2019 Думается мне ТС попал в shell самого кинетика. Нужно зайти по фтп или самбе на флешку и поменять порт dropbear на любой кроме 22. Quote Link to comment Share on other sites More sharing options...
iFinder Posted January 14, 2019 Author Share Posted January 14, 2019 3 минуты назад, zyxmon сказал: Нет такой команды. Есть `opkg list-installed`. Конечно. Исправил. 4 минуты назад, zyxmon сказал: Впрочем начнем с простого - просто `opkg` (без параметров) работает? Да работает: (config)> opkg disk - set Open Package disk chroot - chroot Open Package executables initrc - set Open Package init script timezone - set Open Package timezone dns-override - override local DNS service 5 минут назад, zyxmon сказал: Если лень разбираться - сохраните свой скрипт, переформатируйте носитель, переустановите entware, восстановите скрипт. Нет не лень. Просто надо разобраться - не переустанавливать же каждый раз при обновлении. Quote Link to comment Share on other sites More sharing options...
iFinder Posted January 14, 2019 Author Share Posted January 14, 2019 3 минуты назад, dexter сказал: Думается мне ТС попал в shell самого кинетика. А что такое ТС ? 4 минуты назад, dexter сказал: Нужно зайти по фтп или самбе на флешку и поменять порт dropbear на любой кроме 22 Зашёл по самбе на флэшку, а как поменять порт dropbear на любой кроме 22 не знаю. 1 Quote Link to comment Share on other sites More sharing options...
dexter Posted January 14, 2019 Share Posted January 14, 2019 ТС - топик стартер. В скрипте запуска dropbear в каталоге init.d, где увидите цифры 22 меняйте их например на 2222, перезапускайте OPKG и подключайтесь к порту 2222. 1 Quote Link to comment Share on other sites More sharing options...
vasek00 Posted January 14, 2019 Share Posted January 14, 2019 Ну в файле же /opt/etc/dropbear.conf Лучше прошивочный запускать на любом другом, на обновления влиять не будет ip ssh port 62200 security-level private lockout-policy 5 15 3 ! Quote Link to comment Share on other sites More sharing options...
iFinder Posted January 14, 2019 Author Share Posted January 14, 2019 8 минут назад, dexter сказал: В скрипте запуска dropbear в каталоге init.d, где увидите цифры 22 меняйте их например на 2222 В папке /etc/init.d/ нашёл файл S51dropbear Зашёл на флэшку подключенную к USB роутера через TotalComander 6.53, но поменять не смог: после правки в редакторе AkelPad размер файла стал 0 байт. При попытке записи в папку резервной копии первоначального файла S51dropbear сообщает, что нет места. Настроил анонимный доступ через FTP. Почему-то зайти удалось только введя Логин и Пароль разрешённого пользователя. Но заменить номер порта удалось. 20 минут назад, dexter сказал: перезапускайте OPKG Не нашёл команды на перезапуск OPKG. Как перезапустить ? Quote Link to comment Share on other sites More sharing options...
dexter Posted January 14, 2019 Share Posted January 14, 2019 (edited) Из вэб интерфейса в разделе OPKG, галочку снимите или сделайте раздел не выбран. Сохраните. Затем верните все как было не забыв прописать сценарий "/opt/etc/init.d/rc.unslung". Всё должно получиться. А можно просто флешку извлечь и заново вставить. Edited January 14, 2019 by dexter 1 Quote Link to comment Share on other sites More sharing options...
iFinder Posted January 14, 2019 Author Share Posted January 14, 2019 7 минут назад, vasek00 сказал: Ну в файле же /opt/etc/dropbear.conf А у меня нет такого файла вообще нет на флэшке ! 11 минуту назад, vasek00 сказал: ip ssh port 62200 security-level private lockout-policy 5 15 3 ! Это надо вставить в конфиг.файл Keenetic ? Quote Link to comment Share on other sites More sharing options...
vasek00 Posted January 14, 2019 Share Posted January 14, 2019 Только что, iFinder сказал: А у меня нет такого файла вообще нет на флэшке ! Это надо вставить в конфиг.файл Keenetic ? Пример из рабочего конфига ! ip ssh port 62200 security-level private lockout-policy 5 15 3 ! ! - обязательны Второе сам скрипт dropbear в котором есть ссылка на его конфиг #!/bin/sh PATH=/opt/bin:/opt/sbin:/sbin:/bin:/usr/sbin:/usr/bin PIDFILE="/opt/var/run/dropbear.pid" DROPBEAR="/opt/sbin/dropbear" . /opt/etc/config/dropbear.conf dropbear_status () { [ -f $PIDFILE ] && [ -d /proc/`cat $PIDFILE` ] } ... # cd /opt/etc/config /opt/etc/config # ls -l -rw------- 1 root root 8 Dec 23 08:36 dropbear.conf /opt/etc/config # cat dropbear.conf PORT=22 /opt/etc/config # Quote Link to comment Share on other sites More sharing options...
iFinder Posted January 14, 2019 Author Share Posted January 14, 2019 (edited) 47 минут назад, dexter сказал: А можно просто флешку извлечь и заново вставить. Сейчас невозможно мне это сделать 47 минут назад, dexter сказал: Из вэб интерфейса в разделе OPKG, галочку снимите или сделайте раздел не выбран. Сохраните. Затем верните все как было не забыв прописать сценарий "/opt/etc/init.d/rc.unslung". Всё должно получиться. Сделал всё как написано, но PUTTY не подключается по исправленному мною порту 222, а подключается по прежнему 22 ! Edited January 14, 2019 by iFinder Quote Link to comment Share on other sites More sharing options...
dexter Posted January 14, 2019 Share Posted January 14, 2019 Смотрите лог при запуске флешки. 1 Quote Link to comment Share on other sites More sharing options...
iFinder Posted January 14, 2019 Author Share Posted January 14, 2019 (edited) 15 минут назад, dexter сказал: Смотрите лог при запуске флешки. Отличная идея. У меня роутер настроен по инструкции техподдержки: получает IP для клиентов с другого роутера, а сам является DHCP-сервером только для гостевой сети. Именно поэтому и возникают ошибки в журнале: Янв 14 22:42:45 ndm Opkg::Manager: disk is set to: Entware:/. Янв 14 22:42:45 ndm kernel: EXT4-fs (sda): re-mounted. Opts: (null) Янв 14 22:42:45 ndm Opkg::Manager: /tmp/mnt/2830c0e8-ee61-540d-4a26-0271e5df6778 mounted to /tmp/mnt/2830c0e8-ee61-540d-4a26-0271e5df6778. Янв 14 22:42:45 ndm Opkg::Manager: /tmp/mnt/2830c0e8-ee61-540d-4a26-0271e5df6778 mounted to /opt/. Янв 14 22:42:45 ndm Opkg::Manager: /tmp/mnt/2830c0e8-ee61-540d-4a26-0271e5df6778 initialized. Янв 14 22:42:45 ndm Opkg::Manager: configured init script: "/opt/etc/init.d/rc.unslung". Янв 14 22:42:45 ndm Core::ConfigurationSaver: saving configuration... Янв 14 22:42:45 mosquitto[9535] Warning: Mosquitto should not be run as root/administrator. Янв 14 22:42:45 root Started cron from . Янв 14 22:42:49 ndm Network::Interface::Repository: unable to find Bridge0 as "Network::Interface::IP". Янв 14 22:42:49 ndm SstpServer::Manager: no such IP interface: Bridge0. Янв 14 22:42:49 ndm Network::Interface::Repository: unable to find Bridge0 as "Network::Interface::IP". Янв 14 22:42:49 ndm VpnServer::Manager: no such IP interface: Bridge0. Янв 14 22:42:49 ndm Core::ConfigurationSaver: configuration saved. Янв 14 22:43:03 ndm Core::Server: started Session /var/run/ndm.core.socket. Янв 14 22:43:03 ndm Core::Session: client disconnected. Янв 14 22:43:03 ndm Core::Server: started Session /var/run/ndm.core.socket. Янв 14 22:43:03 ndm Core::Session: client disconnected. Янв 14 22:43:03 ndm Core::Server: started Session /var/run/ndm.core.socket. Янв 14 22:43:03 ndm Core::Session: client disconnected. Янв 14 22:43:04 ndm Core::Server: started Session /var/run/ndm.core.socket. Янв 14 22:43:04 ndm Core::Session: client disconnected. Но если в этом деле, я могу флэшку вставить в нормально настроенный роутер. Edited January 14, 2019 by iFinder Quote Link to comment Share on other sites More sharing options...
iFinder Posted January 14, 2019 Author Share Posted January 14, 2019 17 минут назад, vasek00 сказал: Второе сам скрипт dropbear в котором есть ссылка на его конфиг Да я правил в файле ftp://192.168.11.21/etc/init.d/S51dropbear, но у него несколько другое содержимое: #!/bin/sh PATH=/opt/bin:/opt/sbin:/sbin:/bin:/usr/sbin:/usr/bin PIDFILE="/opt/var/run/dropbear.pid" PORT=222 DROPBEAR="/opt/sbin/dropbear" dropbear_status () { [ -f $PIDFILE ] && [ -d /proc/`cat $PIDFILE` ] } start() { $DROPBEAR -p $PORT -P $PIDFILE } stop() { kill `cat $PIDFILE` } case "$1" in start) if dropbear_status then echo dropbear already running else start fi ;; stop) if dropbear_status then stop else echo dropbear is not running fi ;; status) if dropbear_status then echo dropbear already running else echo dropbear is not running fi ;; restart) stop sleep 3 start ;; *) echo "Usage: $0 {start|stop|restart|status}" ;; esac Quote Link to comment Share on other sites More sharing options...
iFinder Posted January 14, 2019 Author Share Posted January 14, 2019 В результате на данный момент имею: 1. В файле ftp://192.168.11.21/etc/init.d/S51dropbear указано: PORT=222 Может при правке в редакторе AkelPad атрибуты файла были изменены и поэтому изменения отвергаются ? 2. В конфиге SSH-сервер вообще не указан, а значит не запущен. 3. В журнале при перезапуске OPKG и перезагрузке системы вообще нет упоминания о SSH-сервере. 4. PUTTY подключается по порту 22 и не подключается по порту 222. Куда копать дальше ? 1 Quote Link to comment Share on other sites More sharing options...
vasek00 Posted January 14, 2019 Share Posted January 14, 2019 (edited) 37 минут назад, iFinder сказал: Да я правил в файле ftp://192.168.11.21/etc/init.d/S51dropbear, но у него несколько другое содержимое: Маленькая ремарка только вот завтра будете менять на данном роутере данную flash то будете данную операцию делать заново при описанном варианте через конфиг (для прошивочного на другой порт) не чего не надо. Edited January 14, 2019 by vasek00 Quote Link to comment Share on other sites More sharing options...
iFinder Posted January 14, 2019 Author Share Posted January 14, 2019 3 минуты назад, vasek00 сказал: Маленькая ремарка только вот завтра будете менять на данном роутере данную flash то будете данную операцию делать заново при описанном варианте через конфиг (для прошивочного на другой порт) не чего не надо. Извините, но не уловил мысль. Объясните пожалуйста Quote Link to comment Share on other sites More sharing options...
vasek00 Posted January 15, 2019 Share Posted January 15, 2019 8 часов назад, iFinder сказал: Извините, но не уловил мысль. Объясните пожалуйста Пользователь собирается использовать Entware на flash/HDD. 1. Перед ее установкой правит конфиг про который выше, сохранив его и потом подправив записать на роутер ip ssh port 62200 можно и через cli 2. Ставит Entware и не париться про 22 port 3. Решил сменить Entware из-за смены носителя или еще что-то c flash/HDD => опять возиться с настройками 22 port. Quote Link to comment Share on other sites More sharing options...
dexter Posted January 15, 2019 Share Posted January 15, 2019 (edited) Слева шелл самого кинетика, справа шелл ентваре. У Вас окно кокой вид имеет если нажать "tab"? Если есть возможность, попробуйте перезагрузить роутер. Edited January 15, 2019 by dexter Quote Link to comment Share on other sites More sharing options...
iFinder Posted January 15, 2019 Author Share Posted January 15, 2019 Извините, что долго не отвечал. Только с работы вернулся. 12 часа назад, dexter сказал: Слева шелл самого кинетика, справа шелл ентваре. У Вас окно кокой вид имеет если нажать "tab"? У меня окно имеет вид слева - значит вход был через шелл самого кинетика ! Получается, что dropbear, предоставляющий SSH-доступ к шелл Entware, у меня вообще не запускается и поэтому изменение порта в файле ftp://192.168.11.21/etc/init.d/S51dropbear на 222 или 2222 ни к чему не приводит. Так ? А если бы он запускался, то должен ли был он быть в логе ? Quote Link to comment Share on other sites More sharing options...
iFinder Posted January 15, 2019 Author Share Posted January 15, 2019 13 часа назад, vasek00 сказал: 1. Перед ее установкой правит конфиг про который выше, сохранив его и потом подправив записать на роутер Вопросы: 1. А почему именно перед установкой Entware ? А после установки, т.е. сейчас, нельзя ? 2. Правильно ли я понял, что существуют два варианта разведения SSH-доступа к шелл самого кинетика и к шелл Entware на разные порты: А. Меняем порт SSH-доступа к шелл Entware с помощью указания в файле ftp://192.168.11.21/etc/init.d/S51dropbear (т.е. /opt/etc/init.d/S51dropbear) строки PORT=222 Б. Меняем порт SSH-доступа к шелл Keenetic с помощью указания в его конфиг.файле строк: ! <=== этот знак от вышерасположенного фрагмента конфиг.файла Keenetic. Так ? ip ssh port 62200 security-level private lockout-policy 5 15 3 ! <=== этот знак закрывает блок настроек ssh. Так ? Quote Link to comment Share on other sites More sharing options...
dexter Posted January 15, 2019 Share Posted January 15, 2019 Да, всё верно, где-то надо поменять. После установки тоже можно поменять. Вот кусок лога после того как отключил и включил OPKG из вэб интерфейса. Янв 15 21:36:36 ndm Opkg::Manager: disk is set to: OPKG:/. Янв 15 21:36:36 ndm kernel: EXT4-fs (sda1): re-mounted. Opts: (null) Янв 15 21:36:36 ndm Opkg::Manager: /tmp/mnt/7145571b-6dba-4950-b617-ed7eb4704045 mounted to /tmp/mnt/7145571b-6dba-4950-b617-ed7eb4704045. Янв 15 21:36:36 ndm Opkg::Manager: /tmp/mnt/7145571b-6dba-4950-b617-ed7eb4704045 mounted to /opt/. Янв 15 21:36:36 ndm Opkg::Manager: /tmp/mnt/7145571b-6dba-4950-b617-ed7eb4704045 initialized. Янв 15 21:36:36 ndm Opkg::Manager: configured init script: "/opt/etc/init.d/rc.unslung". Янв 15 21:36:36 ndm Core::ConfigurationSaver: saving configuration... Янв 15 21:36:36 root Started snmpd from . Янв 15 21:36:36 dropbear[872] Running in background Янв 15 21:36:40 ndm Core::ConfigurationSaver: configuration saved. Вот это надо смотреть Янв 15 21:36:36 dropbear[872] Running in background 1 Quote Link to comment Share on other sites More sharing options...
dexter Posted January 15, 2019 Share Posted January 15, 2019 (edited) И вот это почитайте И вот лог если dropbear на 22 порту. Янв 15 21:50:07 dropbear[2605] Failed listening on '22': Error listening: Address already in use Янв 15 21:50:07 dropbear[2605] Early exit: No listening ports available. Янв 15 21:50:07 ndm Opkg::Manager: /opt/etc/init.d/rc.unslung: exit code 1. Edited January 15, 2019 by dexter 1 Quote Link to comment Share on other sites More sharing options...
zyxmon Posted January 15, 2019 Share Posted January 15, 2019 По моему топик-стартеру следует подучить матчасть. У него mosquito и cron запускаются, а dropbear - нет. Или он не сам все делал, или же ему в прошлый раз кто-то настроил. С такими знаниями ставить Entware противопоказано. PS Из скрипта запуска dropbear видно, как сейчас задается порт. В последнем обновлении это специально изменили, что бы при последующих порт не перезатирался. 1 Quote Link to comment Share on other sites More sharing options...
iFinder Posted January 15, 2019 Author Share Posted January 15, 2019 43 минуты назад, dexter сказал: Вот это надо смотреть Янв 15 21:36:36 dropbear[872] Running in background Cпециально перезагрузил роутер. Таких строк в журнале моего Keenetic нет Quote Link to comment Share on other sites More sharing options...
dexter Posted January 15, 2019 Share Posted January 15, 2019 Тогда остался вариант из первого ответа @zyxmon. Сохранить всё и переустановить систему. Quote Link to comment Share on other sites More sharing options...
iFinder Posted January 15, 2019 Author Share Posted January 15, 2019 1 час назад, zyxmon сказал: У него mosquito и cron запускаются, а dropbear - нет. Или он не сам все делал, или же ему в прошлый раз кто-то настроил. И ни то и ни другое. Делал всё сам. 1 час назад, zyxmon сказал: PS Из скрипта запуска dropbear видно, как сейчас задается порт. В последнем обновлении это специально изменили, что бы при последующих порт не перезатирался. И опять ошибка в логике умозаключений, т.к. в приведенном скрипте запуска dropbear указан 222 порт, который я устанвновил по рекомендации и знающего и могущего помочь участника форума dexter: В 14.01.2019 в 21:48, dexter сказал: В скрипте запуска dropbear в каталоге init.d, где увидите цифры 22 меняйте их например на 2222, перезапускайте OPKG и подключайтесь к порту 2222. а я поменял на 222. Quote Link to comment Share on other sites More sharing options...
zyxmon Posted January 15, 2019 Share Posted January 15, 2019 14 минуты назад, iFinder сказал: И опять ошибка в логике умозаключений, т.к. в приведенном скрипте запуска dropbear указан 222 порт Если порт указан в скрипте запуска dropbear, значит Вы не обновляли 100 лет пакеты. 1 Quote Link to comment Share on other sites More sharing options...
iFinder Posted January 15, 2019 Author Share Posted January 15, 2019 (edited) 39 минут назад, zyxmon сказал: Если порт указан в скрипте запуска dropbear, значит Вы не обновляли 100 лет пакеты. И не лень писать ни о чём ? Ведь из первого сообщения темы видно, что делалось и что соответственно пакеты не обновлялись 9 месяцев. Edited January 15, 2019 by iFinder Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.