Разработка сайта для Вашего бизнеса. Веб дизайн. Дизайн логотипа, фирменного стиля, рекламная фотография . Комплексный рекламный креатив.

Ralex. We do the work.
На рынке с 1999го года. Средняя ценовая категория. Ориентация на эффективность решений.
Ознакомтесь с нашим портфолио
Узнайте больше о услугах
Свяжитесь с нами:
E-mail: [email protected]
Tel: (044) 587 - 84 - 78
Custom web design & дизайн и разработка сайта "под ключ"
Креативный, эффективный дизайн. Система управления сайтом (СУС).
Custom flexible разработка систем электронной коммерции
Система e-commerce разрабатывается под индивидуальные потребности. Гибкая функциональность.
Search Engine Optimzation & оптимизация под поисковые системы (SEO)
Постоянная оптимизация и мониторинг сайта в поисковых системах. Достигаем результата быстро и эффективно
Custom logo design & дизайн логотипа и фирменного стиля
Многолетний опыт. Огромное портфолио. Уникальное предложение и цена.
профессиональная рекламная фотография
креативно, смело, качественно
Custom logo design & рекламный креатив. дизайн рекламы
Многолетний опыт. Огромное портфолио. Уникальное предложение и цена.

OpenSSH авторизація по RSA ключів

  1. Створення пари RSA ключів
  2. конфігурація sshd_config
  3. PuTTY Unable to use key file
  4. Відновити публічний ключ від приватного
  5. Авторизація по ключам в OpenSSH server for Windows
  6. Рекомендований контент

Наша взаимовыгодная связь https://banwar.org/

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

Чому я не люблю SSH авторизацію по RSA ключів? SSH авторизація по RSA ключів зручна, але вважаю її недостатньо безпечної через відкритості приватного ключа, а особливо якщо на приватному ключі немає пароля - тобто приватний ключ доступний майже для всіх програм запущених в ОС і його витік з файлової системи більш вірогідна ніж витік пароля з мозку!

При всіх антивирусах, мережевих моніторах на шлюзах і в самій ОС, системах превентивного виявлення вторгнень та інших заходах безпеки сервера або робочої станції, які годиною набувають параноїдальні ознаки - поставити 100% на те, що на машині немає, або чи не з'явиться в найближчому майбутньому, якийсь стукає хрени, неможливо.

В безпеки своєї робочої машини я впевнений на 99.99%, поки все йде добре (оновлення всього завжди ручне, автоматично на моєму ПК тільки час синхронізується, вхідні / вихідні жорстко зафільтрованних, браузери все в пісочниці, в тимчасових каталогах заборонена екзекуція виконуваних і т.д .), але тим не менше через брак 1-го відсотка впевненості не можу собі дозволити SSH авторизацію по RSA ключів.

Хтось може заперечити, мовляв "Так, але на приватний ключ можна поставити пароль!" - згоден, можна, але в такому випадку пароль буде зашитий в сам ключ, що при його крадіжці, а також достатніх обчислювальних ресурсах і хороших знаннях криптографії, дасть можливість для його активного брутфорса без будь-яких обмежень з боку ОС - тобто брутфорс ОС виконати набагато складніше (блокування доступу після 2-3 невдалих спроб входу, та ін.), ніж брутфорс ключа локально!

Також якщо буде втрачено приватний (id_rsa), то ми сміливо може помахати серванта ручкою і піти з горя синяви наклюкаццо (when SSH private keys are lost) якщо немає фізичного доступу до машини - публічний (id_rsa.pub) можна відновити з приватного, а ось приватний з публічного навряд чи ... Є якась фіча відкликання (RevokedKeys) ключів, але це не одне і теж, що відновлення - відкликані (анульовані) ключі не можуть використовуватися для подальшої аутентифікації (Revoked keys can not be used for user or host authentication and will trigger a warning if used.)!

Автор поста залишився при своїй думці - SSH авторизація по RSA ключів менш безпечна, ніж авторизація по паролю, наприклад:

  1. при пральний авторизації, загроза сніфінга інтернет трафіку, але тут ми можемо використовувати додатковий SSL тунель - ймовірна приватність 99%;
  2. при авторизації по ключам, загроза витоку приватного ключа разом з паролем від королівства - ймовірна приватність 50/50%;

Тільки не кажіть, що злом SSL трафіку або брутфорс приватного RSA ключа неможливий - німці у Другу світову теж думали, що шифрувальну машину Енігма вермахту непереможна!

Якщо хто все ж наважився використати механізм SSH аутентифікації тільки на одних RSA ключах, з забороною парольного механізму, тоді виконуємо пару нескладних кроків, що описані нижче, а також пишемо заповіт, одягаємо памперси і тримаємо труселя міцніше !;)

Створення пари RSA ключів

Створення пари RSA ключів не займе багато часу - ssh-keygen-ім RSA ключі:

-bash-4.2 $ ssh-keygen -t rsa Generating public / private rsa key pair. Enter file in which to save the key (/ home / shaman /.ssh / id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in / home / shaman /.ssh / id_rsa. Your public key has been saved in / home / shaman /.ssh /id_rsa.pub. The key fingerprint is: 72: b9: 9a: 39: з 5: b2: 77: р 4: 8c: 59: 62: 90: 4f: a9: 03: 80 shaman @ openbsd.localhost The keys randomart image is: + - [RSA 2048] ---- + | . | | E. | | . . . | | . o o. | | .. * S | | + O * .o | | . = .B. | | o ++ + | | . +. . | + ----------------- + -bash-4.2 $

Тут ми увійшли в консоль як користувач "shaman", домашній каталог "/ home / shaman", в якому за замовчуванням розташований каталог .ssh з RSA ключами (id_rsa і id_rsa.pub). У прикладі пароль на приватний ключ не ставили, але для застосування на практиці бажано поставити хоч якийсь пароль на id_rsa (секретний ключ).

Копіюємо вміст публічного ключа в файл містить авторизовані ключі:

cat ~ /id_rsa.pub >> ~ / authorized_keys

Зрозуміло всі описані тут маніпуляції, створення RSA ключів і т.п., виконуються на віддаленому сервері, на якому ми і збираємося проходити аутентифікацію по ключам.

Ключі можна створити і на локальній машині, але потім публічний ключ потрібно буде перенести на віддалену ...

конфігурація sshd_config

Під завісу не завадить зазирнути в / etc / ssh / sshd_config і перевірити чи все там готове для авторизації по ключам:

# The default requires explicit activation of protocol 1 Protocol 2 # HostKey for protocol version 1 #HostKey / etc / ssh / ssh_host_key # HostKeys for protocol version 2 HostKey / etc / ssh / ssh_host_rsa_key #HostKey / etc / ssh / ssh_host_dsa_key #HostKey / etc / ssh / ssh_host_ecdsa_key RSAAuthentication yes PubkeyAuthentication yes # The default is to check both. ssh / authorized_keys and. ssh / authorized_keys2 # but this is overridden so installations will only check. ssh / authorized_keys AuthorizedKeysFile% h /. ssh / authorized_keys

Якщо зібралися відключити логін по паролю, тоді в / etc / ssh / sshd_config відключаємо:

PasswordAuthentication no PermitRootLogin no

PuTTY Unable to use key file

Для тих, хто в перший раз на лижах PuTTY - помилка "Unable to use key file" X: \ id_rsa "(OpenSSH SSH-2 private key)" може виникати з кількох причин:

  • Неформат SSH версії в якій кувався id_rsa ключ і версії в якій він намагається використовуватися, для SSH-1 і SSH-2 ключі куються в різних форматах;
  • Неформат id_rsa ключа для використання в PuTTY, для PuTTY потрібно ключі конвертувати в .ppk формат

Якщо id_rsa генерувався стандартними утилітами з пакету OpenSSH (ssh-keygen -t rsa), то для його використання в SSH клієнта PuTTY він повинен бути експортований в .ppk формат наступним чином (CMD варіант - puttygen id_rsa -o id_rsa.ppk):

  1. Запускаємо puttygen і завантажуємо туди наш id_rsa приватний ключ, що був створений утилітами з пакету OpenSSH, і, якщо хочемо, ставимо на нього пароль:
  2. Зберігаємо приватний ключ у форматі .ppk (Save private key):

Тепер після спроби авторизації по ключу нам досить буде ввести логін, а якщо ставили пароль на приватний ключ, то і пароль від приватного ключа відповідно:

login as: shaman Authenticating with public key "imported-openssh-key" Last login: Sat Jan 4 09: 50: 16 2014 from 192.168.231.1 OpenBSD 5.4 (GENERIC) # 37: Tue Jul 30 12:05:01 MDT 2013 Welcome to OpenBSD: The proactively secure Unix-like operating system. Please use the sendbug (1) utility to report bugs in the system. Before reporting a bug, please try to reproduce it with the latest version of the code. With bug reports, please try to ensure that enough information to reproduce the problem is enclosed, and if a known fix for it exists, include that as well. -bash-4.2 $ ------------- login as: sham Authenticating with public key "imported-openssh-key" Passphrase for key "imported-openssh-key": Last login: Sat Jan 4 09: 50: 16 2014 from 192.168.231.1 OpenBSD 5.4 (GENERIC) # 37: Tue Jul 30 12:05:01 MDT 2013 Welcome to OpenBSD: The proactively secure Unix-like operating system. Please use the sendbug (1) utility to report bugs in the system. Before reporting a bug, please try to reproduce it with the latest version of the code. With bug reports, please try to ensure that enough information to reproduce the problem is enclosed, and if a known fix for it exists, include that as well. -bash-4.2 $

Відновити публічний ключ від приватного

Для відновлення публічного ключа (Create a public SSH key from the private key) від уже наявного приватного виконаємо:

ssh-keygen -y -f ~ /.ssh / id_rsa> ~ /.ssh /id_rsa.pub

Авторизація по ключам в OpenSSH server for Windows

Windows не в Linux, а Linux не Windows. В принципі авторизація по ключам в OpenSSH server for Windows працює аналогічно Linux / BSD, але з деякими істотними відмінностями.

Якщо в конфігурації сервера за замовчуванням використовується запис виду "AuthorizedKeysFile .ssh / authorized_keys", то файл авторизованих ключів authorized_keys сервер буде шукати в домашньому каталозі користувача, в директорії .ssh.

При такій конфігурації OpenSSH server for Windows ми можемо зіткнуться з помилкою SSH клієнта "OpenSSH Server refused our key", а системний журнал отримаємо повідомлення:

Чи не знайдено опис для події з кодом (0) в джерелі (sshd). Можливо, на локальному комп'ютері немає потрібних даних в реєстрі або файлів DLL повідомлень для відображення повідомлень віддаленого комп'ютера. Спробуйте використовувати ключ / AUXSOURCE = для отримання цього опису, - додаткові відомості про це містяться в довідці. У записі події міститься наступна інформація: sshd: PID 1712: error: Received disconnect from 192.168.231.1: 13: Unable to authenticate.
---
Чи не знайдено опис для події з кодом (0) в джерелі (sshd). Можливо, на локальному комп'ютері немає потрібних даних в реєстрі або файлів DLL повідомлень для відображення повідомлень віддаленого комп'ютера. Спробуйте використовувати ключ / AUXSOURCE = для отримання цього опису, - додаткові відомості про це містяться в довідці. У записі події міститься наступна інформація: sshd: PID 1712: Authentication refused: bad ownership or modes for directory / home / user.

Ймовірно, що помилку SSH клієнта "OpenSSH Server refused our key" будемо отримувати неминуче і постійно якщо будемо намагатися використовувати персональний файл ".ssh / authorized_keys" для кожного користувача!

Які права на домашній каталог користувача не пробував ставити, все одно в SSH клієнта отримую "OpenSSH Server refused our key", а в системному журналі "sshd: PID 1712: Authentication refused: bad ownership or modes for directory / home / user" - це ймовірно пов'язано поділом прав в cygwin оточенні, тобто ні за яких умов не дає читати домашній каталог користувача, поки той не пройде авторизацію ...

Єдиним виходом в цьому випадку є використання загального, для всіх користувачів, файлу authorized_keys - "AuthorizedKeysFile / etc / ssh / authorized_keys".

Кожен користувач може створювати свої власні ключі, в своєму домашньому каталозі:

C: \ OpenSSHd \ bin> ssh-keygen -t rsa -f / home /% username% /.ssh/id_rsa Generating public / private rsa key pair. Created directory '/home/root/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/root/.ssh/id_rsa. Your public key has been saved in /home/root/.ssh/id_rsa.pub. The key fingerprint is: 9e: f8: 4f: 55: 1a: 5a: 83: a9: b9: 4f: 5f: 5d: 41: 28: 14: 1b root @ local-cab12c5d9 The key's randomart image is: + - [RSA 2048] ---- + | Eo .. | | ..o. | | ... | | . . | | So o. | | oo. + o. . | | .o ++ o. . | | oo .... | | .oooo | + ----------------- + C: \ OpenSSHd \ bin>

Але, для дозволу доступу по ключам тільки адміністратор повинен додати вміст публічного ключа (id_rsa.pub) кожного користувача в / etc / ssh / authorized_keys, ну, і зрозуміло не забуваємо додати користувача в / etc / passwd.

Посилання по темі:

Автор: Олег Головський

Рекомендований контент

×

А тут же ж міг бути рекомендований контент від гугла :) Для відображення рекомендованого контенту необхідно в браузері дозволити виконання JavaScript скриптів , Включаючи скрипти з доменів googlesyndication.com і doubleclick.net

×

Ви не любите рекламу Ви не любите рекламу !? Даремно! :) На нашому сайті вона зовсім ненав'язлива, а тому для нашого сайту можете повністю відключити AdBlock (uBlock / uBlock Origin / NoScript) та інші блокувальники реклами! AdBlock / uBlock може перешкоджати нормальній роботі системи пошуку по сайту, відображенню рекомендованого контенту та інших сервісів Google. Рекомендуємо повністю вимкнути функцію блокування реклами і скриптів , А також дозволити фрейми (aka iframe).

про автора

Юрист, програміст, спортсмен, бізнесмен і просто красень.

Ще статті автора

Категории
  • Биология
  • Математика
  • Краеведению
  • Лечебная
  • Наука
  • Физике
  • Природоведение
  • Информатика
  • Новости

  • Новости
    https://banwar.org/
    Наша взаимовыгодная связь https://banwar.org/. Запустив новый сайт, "Пари Матч" обещает своим клиентам незабываемый опыт и возможность выиграть крупные суммы.


    Наши клиенты
    Клиенты

    Быстрая связь

    Тел.: (044) 587-84-78
    E-mail: [email protected]

    Имя:
    E-mail:
    Телефон:
    Вопрос\Комментарий: