SSH підключення до Synology DSM 6 під root за допомогою ключів

Компанія Synology, починаючи з DSM версії 6, заборонила вхід для користувача root з використанням SSH. Чи правильно це?

DSM 6 не відрізняється (принципово) для домашніх NAS і для NAS Enterprise рівня, так що рішення правильне. Однак, для домашнього використання, на мій погляд, зручніше використовувати root аккаунт. Природно, передбачається, що користувач усвідомлює всі можливі проблеми, які можуть виникнути через неправильні дій. Втім, цей метод підходить для будь-якого облікового запису.

  1. Скачайте PuTTY і PuTTYgen (або, краще, цілком інсталятор, наприклад тут https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html).
  2. Сгененріруйте пару ключів (Private / Public) за допомогою PuTTYgen (Параметри: DSA або RSA, довжина ключа 2048 біт).
  3. Збережіть Private ключ, наприклад, з ім'ям "DSM001_RSA_pri.ppk".
  4. Скопіюйте Public ключ в буфер обміну. Це буде виглядати, наприклад, так:
    ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAw2T9sbaJM4qf6VwVgTtC6HH + QmpDxcpaIzzoT / v6H2BBziOpIiG4VJwkBk0X2pvVzWZBXI93CEXXdfDZEWCyOjSX2C7VqPh + 648XdvpdDfI / q99AAJZ0Gm0Q6138kSJiCaWcALUk + e1TUkgv3xh / sP5UfWOO / ee981AYJtG + rK3XDaneuguSW9V2pp4RkwdbndbjPv07wgNbii + 5e0lTRIBQEXlwlplnzr19EdhX1jJy2 / IjID / dSYf / NnepzA / g6HEC7ZvPeM2XjLIlpeqkjxaX1OGUnTCIrkZxIkwMgWXLmrmdj0FxmcvXOtZ6lcjBi6NLQF3feK1HcyNY / 3cskQ == rsa-key-20180602
  5. Підключіться до вашого NAS за допомогою PuTTY:
    [Diskstation]: 22
  6. Залогинтесь від імені root admin (На жаль логін користувача root більше не працює на DSM 6 ... тому використовуйте адміністративний акаунт, наприклад, вбудований, admin).
  7. Підніміть права вашого користувача до рівня користувача root):sudo -iВведіть пароль admin і натисніть ENTER.Для всього, наведеного нижче, можна використовувати Midnight Commander, що набагато простіше.

    Передбачається, що ви вже встановили Midnight Commander з депозитарію Synology Community

    sudo -I

    Введіть пароль admin і натисніть ENTER

    mc

  8. Відредагуйте SSH config за допомогою (тут sudo не обов'язково якщо ви вже підняли свої права до root, на попередньому кроці):
    sudo vi / etc / ssh / sshd_config
  9. Дозволяємо Root Login:
    Знаходимо рядок:
    PermitRootLogin No
    І міняємо на:
    PermitRootLogin Yes
  10. Знаходимо в конфіги наступні рядки:
    #RSAAuthentication yes
    #PubkeyAuthentication yes
    #AuthorizedKeysFile .ssh / authorized_keys
  11. Прибираємо значок коментаря "#" на початку рядка, як показано нижче:
    #RSAAuthentication yes
    PubkeyAuthentication yes
    AuthorizedKeysFile .ssh / authorized_keys
  12. Переходимо в папку / root (або в / var / services / homes / USER_LOGON, якщо робите це не для користувача root) і створіть папку.ssh (якщо папка.ssh вже є, то можна відразу переходити до пункту 13):
    cd / root
    mkdir .ssh
  13. Редагуємо файл ключів: Про всяк випадок набираємо
    touch /root/.ssh/authorized_keys - це створить файл, якщо його не було
    vi /root/.ssh/authorized_keys
  14. Натисніть "i", щоб вставити ваш Public ключ, який було збережено в буфері обміну на кроці 4 і збережіть файл (натиснути ESC, набрати: wq, натиснути ENTER)
    ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAzP4MR3lkCD2pa7nwT3NMjjDBMmEuJ4exW4GKBBP + okArZ / IrjbLIpdh8ahpfgjh8kM // OVUGeRa1GigzcCuGzIa2YfS7L4Q9cbUUWFwIu2hGV3ZpJ2xDZExaaLH90Vw + ZBaozD2OI4FZ1Dqh8Bj29SQqIIbmxf / ASyTmXHZCbQk = rsa-key-20130414
  15. Встановлюємо правильні прав доступу до папки і до файлу
    chmod 700 /root/.ssh
    chmod 644 /root/.ssh/authorized_keys
  16. від'єднуємосяexit (Або наживаємо Ctrl-D два рази)
  17. Відкриваємо Putty і робимо наступні настройки для сесії:
    • Ім'я хоста або IP адреса
    • Port: 22
    • Connection type: SSH

    В налаштуваннях підключення (Connection):

    • Data-> Auto-login username: root

    • SSH-> Auth-> Private KeyПовний шлях і ім'я файлу для вашого Private Ключа

  18. І зберігаємо сесію, давши їй якесь ім'я. Наприклад, DSM001-RSA.
  19. Потім єднаємося з Synology DSM командою:
    putty.exe -load DSM001-RSA

Ви можете налаштувати з'єднання Synology DSM по ключам і за допомогою WinSCP:

  • запустити WinSCP
  • Додати новий сайт
  • Вибирати протокол «SCP»

  • Вписати ім'я хоста (або IP) і порт SSH
  • Користувач «root«
  • У Advanced> SSH> Auth> Auth parameters: вибрати і вписати ім'я того ж SSH ключа як в пункті 17
  • Розставити "галочки" як показано на малюнку

  • Зберегти нову сесію і підключитися