Продолжаем тему о защите доступа : Настройка и запуск ssh (dropbear)Если я правильно помню, то пакет dropbear по умолчанию установлен уже в image и его процесс должен быть в списке действующих , команда
ps
мне пришлось инсталлировать
opkg updateopkg install dropbear Остановка, запуск или перезапуск мы сделаем в сессии telnet командой:
/etc/init.d/dropbear start|stop|restartВообще-то ssh можно использовать сразу после установки, войдите, используя логин и пароль для тв-тюнера и, собственно, можно было бы на этом закончить, но цель этого описания показать, как настроить ssh с закрытым ключом и отключение входа под паролем.
Почему?
Поскольку вход в систему пароль не безопасно. Методом brute-force можно пароль взломать если порт 22 остается слишком долго открыт снаружи и не контролируем журнал.
В связи с этим, в первую очередь, необходимо сгенерировать себе новый ключ rsa, потому что содержащийся в image есть у каждого, и лучше иметь свой, уникальный.
Останавливаемся dropbear и мы генерируем ключ:
dropbearkey -t rsa -f /home/root/dropbear_rsa_host_key
Пример:root@et9x00:~# dropbearkey -t rsa -f /home/root/dropbear_rsa_host_key
Generating key, this may take a while...
Public key portion is:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC8rmFrh4ZA5jcxtv7pPZksZ6Uuf/TiKKZnzIWTMxxH+CIb9AKMLMNCN8zcS6otlglcykfYkD3mz2Iz6rJUg2f2mkDB1Ap0ExGpPZalsAZGjGiyRLHXEm/tRaJQTyn15GR4UxdREQJca9n1SHXjISvCEIDDX6lS4OYZjIGhTM0h1bwMWzLpaEl1oDyЕTOH4/E/p2Vworxq2DKauAQLKDQwg0v9oMELo0A7B01+BOvX1iglFRcbuH10K82vg4BTvrexDtPuZVGYtz5wP/V06+/K/kaGFAEPXhBbkOnZvd5AxC9lEJW5pBMv2J204zN6f/ZZcFbukGtSKVyI9VE5Nesw3 root@et9x00
Fingerprint: md5 e4:96:63:eb:ad:0e:4e:70:8a:8b:38:3c:c7:89:af:f8илиdropbearkey -t rsa 2048-f /home/root/dropbear_rsa_host_key
если кто-то желает ключа 2048 бит.
Сгенерированный ключ rsa переносим в
/etc/dropbear/ поверх существующего. Стоит сохранить себе копию ключа , чтобы проверить на себе или при подключении в первый раз, к вашему серверу по ssh. Копия останется в нашей памяти в клиенте ssh (Putty) и в случае его несанкционированной 'замещения' Putty выдаст нам такой факт и спросит , есть ли это на самом деле наш сервер.
Следующим шагом является отключение входа паролем. Для этого вам необходимо создать файл с именем 'dropbear' ниже содержимым:
DROPBEAR_EXTRA_ARGS="-s-a"где опция-s выключает использование пароля. Вариант-а, кроме того, для целей туннелирования соединения, но не об этом здесь буду писать, так что не должна она быть и у Вас. Давайте сосредоточимся только на опцию-s.
Так готовый файл (в приложении), мы помещаем в
/etc/default/. Достаточно права 600, поэтому мы не должны ничего менять.
Затем нужно подготовить публичный ключ и приватный файл authorized_keys. Мы будем использовать программу Putty Key Generator ( прикрепил в аттаче ):
1. Мы генерируем ключ - сила ключа 1024 или 2048 для выбора, а не она зависит от силы ключа rsa, который ранее определение.
2. Записываем оба ключи где-то на жесткий диск компьютера (при записи необходимо решить, что ключ будет закодирован или нет - выбираем " нет").
3. Копируем ключ в буфер обмена.
4. Создаем файл с именем 'authorized_keys' и помещаем туда заранее скопированный ключ:
ВАЖНО: ключ должен быть на одной строке . В ключе есть только 2 пробела: при первом слове rsa и перед вторым. Если всё сделали правильно то не должно быть проблем. Ключ может иметь различную продолжительность в зависимости от выбранной силы его при сборке.
5. Созданный файл authorized_keys' помещаем в
/home/root/.shh/ то есть, в папке которого по умолчанию нет, нужно её создать. Как видите, папка должна иметь точку спереди в названии . Для удобства можно сначала создать без точки, добавить к нему файл authorized_keys и потом изменить на имя с точкой.
Генерация ключей у нас есть, поэтому мы открываем Putty (в приложении) и настроим сеанс ssh , но для того, чтобы использовать наш ключ, мы должны его указать в программе:
Настроенный и сохраненного сеанс Putty мы можем использовать для подключения.
Стартуете dropbear и создаете подключение.
Внешний вид процесса dropbear после изменения:
0:00 /usr/sbin/dropbear-r /etc/dropbear/dropbear_rsa_host_key-p 22-s-aПомните, что с этого момента не залогиниться через ssh, без наличия закрытого ключа, поэтому, если вы планируете подключаться удаленно, необходимо взять с собой ключ , и, конечно, защищать перед другими!