Налаштуйте SSH для доступу без пароля

SSH

SSH, або Secure Shell - це захищена оболонка, яка використовується для віддалений доступ з усіх видів пристроїв до серверів, через тунельований канал і захищений шифруванням, що забезпечує йому безпеку, яка запобігає або, принаймні, ускладнює, що треті сторони можуть перехопити ім’я користувача чи пароль. У випадку з * Nix, ми маємо цей протокол, доступний через OpenSSH, набір рішень клієнт-сервер, доступний у всіх дистрибутивах Linux та пов'язаних платформах, таких як * BSD.

Тепер, якщо SSH пропонує нам відмінний рівень безпеки, чому ми хочемо використовувати його без необхідності вводити пароль? Причин може бути декілька, але одна, яка зазвичай виділяється як генератор, - це необхідність віддаленого входу через сценарії та виконання завдань суперкористувача, і це те, що, як ми добре знаємо, не бажано розміщувати ці дані в будь-якому сценарії. Для вирішення цієї проблеми ми збираємось побачити як згенерувати SSH-ключі, щоб мати можливість віддалено увійти без необхідності введення пароля.

Це вимагає від нас згенерувати відкритий та закритий ключі: перший зберігатиметься на сервері, до якого ми збираємось отримати доступ, і, як вказує його назва, ми можемо відправити або поділитися ним, а другий - на пристрої (комп’ютері, смартфоні, планшеті), з якого ми збираємось отримати доступ до вказаного сервера і повинен бути тримали дуже обережно і використовується лише нами або людьми, яким ми довіряємо.

З огляду на те, що згадувалось у попередньому параграфі, важливо зауважити, що рішення такого типу вимагає дуже великої відповідальності за догляд за пристроями, з яких ми збираємося увійти на сервер, і це те, що кожен, хто має доступ до вони можуть ввести його без необхідності знати пароль, що є дуже великим ризиком для безпеки. З’ясувавши це, давайте подивимось, як ми можемо розпочати, і для цього першим ділом має бути встановлений на сервері демон SSH:

# apt-get встановити openssh-сервер

Тепер ми повинні створити каталог .ssh в каталозі користувача:

# mkdir -p $ HOME / .ssh

# chmod 0700 $ ГОЛОВНА / .ssh

# торкніться $ HOME / .ssh / санкціоновані_клавіші

Ми редагуємо файл / etc / ssh / sshd_config і ми перевіряємо, що такі рядки є такими, як є:

PubkeyAuthentication так

AuthorizedKeysFile% h / .ssh / санкціоновані_ключі

Тепер переходимо до клієнта і виконуємо:

ssh -keygen -t rsa

Нам скажуть, що ключ створюється, і нас попросять ввести файл, в якому він буде зберігатися (за замовчуванням він буде в нашому домі, в папці з назвою /.ssh/id_rsa). Ми можемо натиснути клавішу Enter, оскільки це місце нас ідеально обслуговує, а потім ми натискаємо клавішу Enter ще раз, коли нас просять введіть парольну фразу оскільки пам’ятайте, ми збираємось вводити дистанційно, не вводячи жодних даних, тому ми не хочемо жодних фраз.

Тепер, коли ми маємо відкритий ключ, ми повинні поділитися ним із тими комп’ютерами, до яких ми збираємось підключатися. Якщо припустити, що сервер, про який ми говоримо, має адресу 192.168.1.100, то вам потрібно зробити:

ssh-copy-id -i $ HOME / .ssh / id_rsa.pub root@192.168.1.100

Після копіювання нас запросять виконати віддалений вхід для перевірки ключів, і треба враховувати, що в даному випадку корінь Це обліковий запис, з яким ми збираємося отримати доступ до сервера, тому, якщо ми хочемо зробити це з іншим користувачем, ми повинні змінити root для облікового запису користувача, з яким ми збираємося виконати доступ через SSH.

Тепер нам залишається лише перезапустити сервер SSH, щоб він прийняв нову конфігурацію:

# /etc/init.d/ssh перезапустити

Відтепер, якщо ми хочемо отримати доступ до другого сервера і зробити це без введення пароля, нам просто потрібно надіслати йому відкритий ключ, за допомогою якого ми просто повторюємо останній крок, змінюючи користувача та IP-адресу за необхідності:

ssh-copy-id -i $ HOME / .ssh / id_rsa.pub admin@192.168.1.228


Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

  1. Відповідальний за дані: Мігель Анхель Гатон
  2. Призначення даних: Контроль спаму, управління коментарями.
  3. Легітимація: Ваша згода
  4. Передача даних: Дані не передаватимуться третім особам, за винятком юридичних зобов’язань.
  5. Зберігання даних: База даних, розміщена в мережі Occentus Networks (ЄС)
  6. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.

  1.   осушувач - сказав він

    Дякую за інформацію, але нічого ... немає можливості ...
    Я намагався весь ранок, і він завжди запитує мій пароль.
    Деякий час тому я намагався, і я залишив це неможливим з тієї ж причини ...
    Я створюю свій ключ на своєму Macbook, копіюю його на свою малину в ~ / .ssh / дозволених клавішах
    Я налаштовую sshd.conf на загальнодоступну автентифікацію та переконуюсь, що каталог ключів знаходиться саме там, де знаходяться ключі. Я перезапускаю малину і при підключенні знову запитую у мене пароль
    Що може не вдатися?

    1.    осушувач - сказав він

      Після кількох годин випробувань багатьох речей я виявив, що з моїм створеним користувачем це ніколи не працює, але з типовим користувачем, який називається "ubuntu", він працює вперше.
      Будь-яке пояснення, чому це може статися?
      Saludos у Gracias