Налаштування Dropbear

Конфігурація SSH здійснюється через підсистему Dropbear у `uci`, а файл конфігурації знаходиться за шляхом `/etc/config/dropbear`.

Кожен екземпляр SSH-сервера Dropbear описується окремою секцією у конфігураційному файлі. Можна створювати кілька екземплярів.

Конфігурація `dropbear` містить параметри для SSH-сервера Dropbear в одній секції.

Секція `dropbear` містить наступні параметри. Назви чутливі до регістру.

Назва Тип Обов’язково Типове значення Опис
`enable` boolean ні 1 Встановіть `0`, щоб вимкнути запуск Dropbear під час завантаження системи.
`verbose` boolean ні 0 Встановіть `1`, щоб увімкнути докладний вивід у скрипті запуску.
`BannerFile` string ні (немає) Шлях до файлу, вміст якого буде показано до автентифікації користувача.
`PasswordAuth` boolean ні 1 Встановіть `0`, щоб вимкнути автентифікацію за паролем.
`Port` integer ні 22 Номер порту, на якому Dropbear буде слухати з’єднання.
`RootPasswordAuth` boolean ні 1 Встановіть `0`, щоб вимкнути автентифікацію root-користувача за паролем.
`RootLogin` boolean ні 1 Встановіть `0`, щоб заборонити SSH-вхід під root-користувачем.
`GatewayPorts` boolean ні 0 Встановіть `1`, щоб дозволити зовнішнім хостам підключатися до переспрямованих портів.
`Interface` string ні (немає) Вкажіть назву інтерфейсу, наприклад `lan`. Цей параметр дозволяє обмежити з’єднання лише з клієнтів, які можуть досягти IP цієї мережі. Наприклад, IP-адреса LAN буде доступна лише клієнтам у локальній мережі, але не з WAN при типовій конфігурації файрволу. Використовується у параметрі `-p` Dropbear: “Слухати на заданій адресі та TCP-порті. Якщо задано лише порт — слухати на всіх адресах. Можна вказати до 10 значень (типово 22).”
`keyfile` список файлів ні (немає) Шлях до файлу з ключем хоста.
`rsakeyfile` файл ні (немає) Шлях до RSA-ключа хоста. Застаріло. Див. `keyfile`.
`SSHKeepAlive` integer ні 300 Інтервал у секундах для надсилання keep-alive трафіку. Корисно, щоб уникнути обриву з’єднання маршрутизатором або фаєрволом під час бездіяльності. При 3 невдалих keep-alive з’єднання буде розірване. Значення 0 вимикає цю функцію. Еквівалент OpenSSH `ClientAliveInterval`.
`IdleTimeout` integer ні 0 Розірвати з’єднання, якщо не було трафіку протягом заданого часу, навіть із keep-alive активним. Еквівалент OpenSSH `ClientAliveInterval`, помножений на `ClientAliveCountMax`.
`mdns` integer ні 1 Оголошувати службу через mDNS.
`MaxAuthTries` integer ні 3 Кількість спроб введення пароля перед закриттям з’єднання.
`RecvWindowSize` integer ні 24576 Розмір буфера прийому для кожного каналу. Збільшення може покращити продуктивність, але потребує більше пам’яті.

Типова конфігурація виглядає так:

# uci show dropbear
dropbear.@dropbear[0]=dropbear
dropbear.@dropbear[0].RootPasswordAuth='1'
dropbear.@dropbear[0].PasswordAuth='1'
dropbear.@dropbear[0].Port='22'

Додати другий екземпляр Dropbear, що слухає порт 2022:

uci add dropbear dropbear
uci set dropbear.@dropbear[-1].RootPasswordAuth='1'
uci set dropbear.@dropbear[-1].PasswordAuth='0'
uci set dropbear.@dropbear[-1].Port="2022"
uci commit dropbear
service dropbear restart

Якщо ви хочете підключатися з Інтернету, дозвольте порт 2022 на інтерфейсі WAN.

Dropbear не підтримує SFTP.

OpenSSH-клієнт за замовчуванням використовує SFTP починаючи з версії 9.0.

Використовуйте `scp -O` для старішого SCP-протоколу, якщо потрібно.

Якщо у вас є достатньо вільного місця, можна встановити SFTP-сервер:

opkg update
opkg install openssh-sftp-server
  • Налаштуйте автентифікацію за відкритим ключем і, за можливості, вимкніть автентифікацію за паролем.
  • Налаштуйте VPN, щоб уникнути прямого відкриття SSH у мережу Інтернет, адже навіть одна критична вразливість може дозволити зловмиснику отримати доступ root.

Проблеми, що виникають при відкритому SSH-доступі:

  • Відсутність нормальних груп користувачів та окремих звичайних користувачів.
  • Відсутність механізмів блокування IP-адрес з великою кількістю невдалих спроб входу.
  • Дуже лояльні дозволи на файлову систему за замовчуванням у OpenWrt.
  • Відсутність обмежень для звичайних користувачів, що дозволяє зловживати BusyBox та отримувати доступ до команд, призначених лише для root, через символьні посилання.
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.More information about cookies
  • Last modified: 2025/05/30 17:44
  • by vazaz