Конфигурирайте SSH за достъп без парола

SSH

SSH, или Secure Shell, е защитена обвивка, която се използва за отдалечен достъп от всички видове устройства до сървъри, чрез тунелен канал и защитен с криптиране, което му осигурява сигурност, която предотвратява или поне затруднява изключително много, че трети страни могат да прихванат потребителското име или паролата. В случая на * Nix, ние разполагаме с този протокол чрез OpenSSH, набор от клиент-сървърни решения, налични във всички Linux дистрибуции и свързани платформи като * BSD.

Сега, ако SSH ни предлага отлично ниво на сигурност, защо бихме искали да го използваме, без да е необходимо да въвеждаме парола? Може да има няколко причини, но една, която обикновено се откроява като генератор, е необходимостта да влезете дистанционно чрез скриптове и да изпълнявате задачи на суперпотребител и е, че както добре знаем, не е препоръчително тези данни да се поставят във всеки скрипт. За да разрешим този проблем, ще видим как да генерирам SSH ключове, за да мога да вляза дистанционно, без да е необходима парола.

Това ни изисква генерирайте публичен ключ и частен ключ: първият ще се съхранява на сървъра, до който ще имаме достъп и както показва името му, можем да го изпратим или споделим, а вторият ще се съхранява на устройството (компютър, смартфон, таблет), от което ще отидем достъп до споменатия сървър и трябва да бъде съхранявани много внимателно и се използва само от нас или от хора, на които имаме доверие.

Поради споменатото в предходния параграф е важно да се коментира, че този тип решение изисква много голяма отговорност в грижата за устройствата, от които ще влезем в сървър, а именно, че всеки, който има достъп до те ще могат да го въведат, без да е необходимо да знаят паролата, което е много голям риск за сигурността. След като изяснихме това, нека видим как можем да започнем и за това първото нещо е да имаме инсталиран SSH демон на сървъра:

# apt-get install openssh-сървър

Сега трябва да създадем директорията .ssh в потребителската директория:

# mkdir -p $ НАЧАЛО / .ssh

# chmod 0700 $ НАЧАЛО / .ssh

# докоснете $ HOME / .ssh / дозволени_клавиши

Редактираме файла / И т.н. / 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 / odobrenKeys
    Конфигурирам sshd.conf с публично удостоверяване и проверявам, че директорията на ключовете е точно там, където са ключовете. Рестартирам малината и при свързването отново ме пита за паролата
    Какво може да се провали?

    1.    сушител каза той

      След няколко часа, опитвайки много неща, открих, че с моя създаден потребител никога не работи, но с потребителя по подразбиране, наречен "ubuntu", работи за първи път.
      Някакви разяснения защо това може да се случи?
      Saludos г. Gracias