Решено: DIR-320, dropbear, пароль

Любые разговоры которые хоть как-то связаны с тематикой форума

Модератор: Модераторы разделов

StanislavL
Сообщения: 80

Решено: DIR-320, dropbear, пароль

Сообщение StanislavL »

Имеется Dlink DIR-320, перешитый, в него воткнут USB-модем с МТС-овской симкой.
Хочется иметь возможность на него издалека заходить.
МТС дает, адрес 172.что-то. (Было время когда они давали честный внешний IP, но очень давно)
Решение тривиальное - поднимаем из него при загрузке PPP over SSH на домашнюю машину, и все в шоколаде.
Тестовый скрипт заработал почти сразу, за исключением одной мелочи - пароль ssh'ный был вбит руками.
А надо шоб оно само запускалось при загрузке, и восстанавливалось после обрыва связи, когда на N км вокруг только бездомные собаки.
Пытаюсь ему сделать подсунуть ключики, и обламываюсь: в /usr/local/root/.ssh он их, похоже, вообще не видит, а при указании опции -i ругаеццо: string too long.
Кто с $subj плотно дела имел - чего сходу подкрутить можно ?...
Спасибо сказали:
Аватара пользователя
SLEDopit
Модератор
Сообщения: 4824
Статус: фанат консоли (=
ОС: GNU/Debian, RHEL

Re: Решено: DIR-320, dropbear, пароль

Сообщение SLEDopit »

StanislavL писал(а):
02.12.2011 00:18
в /usr/local/root/.ssh он их, похоже, вообще не видит
А вы уверены, что домашняя директория рута, в которой он собственно и ищет ключи, это именно /usr/local/root, а не обычный /root ?
echo $HOME из под рута что показывает?
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
Спасибо сказали:
Аватара пользователя
SinClaus
Сообщения: 1952
Статус: Мучитель Мандривы
ОС: Arch,BSD

Re: Решено: DIR-320, dropbear, пароль

Сообщение SinClaus »

Перешит на что? Ключи понимает dd-wrt и её производные, причём не уверен что это распространяется на -mini редакцию.
Ещё маленькая тонкость: каталог рута расположен в области, которая при перезагрузке абсолютно чистая, поэтому ключики нужно хранить на флешке и при старте копировать в соответствующий каталог.
Спасибо сказали:
Аватара пользователя
Bluetooth
Сообщения: 4395
Статус: Блюзовый
ОС: Debian Squeeze amd64

Re: Решено: DIR-320, dropbear, пароль

Сообщение Bluetooth »

я в перепрошитых "олегом" делал так:

Код: Выделить всё

mkdir -p /usr/local/etc/dropbear
dropbearkey -t dss -f /usr/local/etc/dropbear/dropbear_dss_host_key
dropbearkey -t rsa -f /usr/local/etc/dropbear/dropbear_rsa_host_key
mkdir -p /usr/local/sbin/
echo "#!/bin/sh" >> /usr/local/sbin/post-boot
cp /usr/local/sbin/post-boot /usr/local/sbin/post-firewall
cp /usr/local/sbin/post-boot /usr/local/sbin/post-mount
cp /usr/local/sbin/post-boot /usr/local/sbin/pre-shutdown
chmod +x /usr/local/sbin/p*
echo "dropbear > /dev/null 2>&1" >> /usr/local/sbin/post-boot
dropbear > /dev/null 2>&1
flashfs save
flashfs commit
flashfs enable
reboot
Спасибо сказали:
reji
Сообщения: 81

Re: Решено: DIR-320, dropbear, пароль

Сообщение reji »

Если речь идёт о dbclient, SSH-клиенте из dropbear, то пароль можно указать в переменной среды DROPBEAR_PASSWORD.

(man dbclient) писал(а):DROPBEAR_PASSWORD
A password to use for remote authentication can be specified in the environment variable DROPBEAR_PASSWORD. Care should be taken that the password is not exposed to other users on a multi-user system, or stored in accessible files.
Спасибо сказали:
StanislavL
Сообщения: 80

Re: Решено: DIR-320, dropbear, пароль

Сообщение StanislavL »

Всем спасибо, все получилось.
Во-первых, я протормозил с dropbearkeys - пытался с машины подсунуть ключи, сделанные ssh-keygen'ом, почему-то пребывая в святой уверенности, что ему должно быть пофик. А он, гат, не захотел.
Во-вторых, оказалось, что для (конкретно моего ?) dropbear важен порядок указания параметров в команде... Видимо, какой-то хитрый баг, по идее ему должно быть параллельно. Но заработало когда вместо 'ssh host -l user -i /user/local/root/.ssh/id_rsa' написал 'ssh -i /user/local/root/.ssh/id_rsa user@host'

PS Еще выяснилось: после запуска скрипта из post-boot он не стал работать, из-за того что $HOME там толи не выставлен, толи выставлен в '/' ; в резулитате он пытался создавать /.ssh , обламывался на 'readonly fs'. Выставил HOME в скрипте - заработало как и хотелось.

Осталась последняя проблема - при внезапном разрыве связи интерфейсы PPPn на домашней машине продолжают долго висеть. Принимаются советы как разумней распорядиться всяческими keepalive'ами.
Спасибо сказали: