Наладзьце SSH-злучэнні без пароля ўсяго за 3 этапы

Добры дзень,

Тут вы ўбачыце, як падключыцца да ПК выдалена SSH проста ўводзячы пароль у першы раз, нават калі мы перазагрузім абодва кампутары, у нас больш не будзе пытацца ўводу пароля.

Але, давайце спачатку ўбачым кароткае тлумачэнне таго, што ёсць SSH:

SSH гэта пратакол, сродак сувязі паміж двума камп'ютэрамі. Гэта дазваляе нам кіраваць камандай выдалена. Калі мы атрымліваем доступ да іншага камп'ютэра па SSH, каманда, якую мы ўводзім у гэты тэрмінал, будзе выконвацца на іншым кампутары, такім чынам, мы кіруем ім / кіруем ім.

Усё, што перадаецца SSH, ён зашыфраваны і мае значна добрую бяспеку.

Зараз мы ўбачым, як толькі за тры этапы мы будзем наладжваць ПК №1 для доступу ПК №2 без уводу пароля:

У нас такая сітуацыя:

ПК №1 - » Вы хочаце падключыцца да ПК №2, без неабходнасці ўводзіць пароль пры кожнай спробе падключэння да гэтага іншага ПК.

ПК №2 - » У вас усталяваны сервер SSH. Гэта адзін ПК №1 падключыцца, і зробіць гэта, не ўводзячы пароль. На гэтым ПК ёсць карыстальнік з імем корань.

Пачнем ...

1. En ПК №1 мы пішам наступнае:

  • ssh -keygen -b 4096 -t rsa

Гэта створыць адкрыты ключ. Каб не занадта блытаць з "адкрытым і прыватным ключамі", я растлумачу гэта вельмі проста.

Дапусцім, у вас у кішэні два ключы ад дома, адзін вы даяце сваёй дзяўчыне, бо вы жывяце разам, а з другім вы засталіся сам-насам і нікому яго не даяце. Ну, той ключ, які вы далі сваёй дзяўчыне, дазволіць ёй увайсці ў ваш дом, не кажучы вам, не пытаючыся вашага дазволу, так? гэта адкрыты ключ, "ключ", які дазваляе аднаму ПК атрымаць доступ да іншага без неабходнасці прасіць дазволу (гэта значыць без уводу імя карыстальніка + пароля)

Калі яны паставяць гэтую каманду, яна з'явіцца:

2. Проста націсніце [Увод], праз секунду мы зноў націскаем [Увод], а праз секунду мы націскаем яшчэ раз [Увод]. Я маю на ўвазе, мы б націскалі [Увод] усяго тры (3) разы, мы толькі націскаем ... мы нічога не пішам ????

Калі мы зробім гэта, з'явіцца нешта падобнае на наступнае:

Гатовы, у нас ужо ёсць адкрыты ключ ... зараз нам трэба даць яго таму, каму мы хочам (напрыклад, даць яго нашай дзяўчыне ха-ха)

Мы хочам гэтага ПК №1 падключыцца да ПК №2, ужо ў ПК №1 мы зрабілі ўсё вышэйсказанае, у ПК №2 Мы нічога не зрабілі. Добра, ПК №2 мае IP-адрас, напрыклад 10.10.0.5.

3. Мы ставім ПК №1 наступны:

  • ssh-copy-id root @ 10.10.0.5

Гэта проста дае вам адкрыты ключ ПК №1 a ПК №2, гэта значыць, дае ПК №2 адкрыты ключ ПК №1У той час як ПК №1 Вы ведаеце, ён захоўвае свой закрыты ключ; той ключ, які нікому не дадзены. Важна не памыліцца з карыстальнікам, гэта значыць, калі карыстальнік «корань"Гэта не існуе ў ПК №2, дасць нам памылку. Важна, каб было зразумела, якога карыстальніка мы будзем выкарыстоўваць для гэтага, акрамя таго, што той карыстальнік, у якога мы наладжваем доступ без пароля, будзе такім самым, з якім нам давядзецца атрымаць доступ у будучыні. Пасля гэтага гэта павінна выглядаць так:

На папярэднім этапе яны павінны ўвесці пароль карыстальніка ПК №2.

І вуаля ... усё наладжана ????

Як нам здаецца ў тэрмінале, давайце праверым, ці сапраўды ўсё атрымалася на 100% нармальна. Каб праверыць, мы ставім:

  • ssh корань@10.10.0.5

Калі яны хочуць атрымаць доступ да іншага кампутара таксама не заўсёды ўводзячы пароль (ПК №3 напрыклад), мы проста даем яму наш адкрыты ключ, і ўсё, гэта значыць, як толькі мы зрабілі крок #1 y #2 нам больш не давядзецца гэтага рабіць. Калі мы хочам атрымаць доступ ПК №3 напрыклад, які мае па IP 10.10.99.156 мы проста паставілі:

  • ssh корань@10.10.99.156

Пакуль што падручнік.

Растлумачце, што ўзровень бяспекі, калі мы гаворым пра SSH, сапраўды высокі, метафара, з якой я растлумачыў некаторыя этапы (перадача ключа нашай дзяўчыне), можа быць не найбольш прыдатнай ха-ха, бо наша дзяўчына можа даць ключ да хтосьці іншы. Калі мы гаворым пра SSH, прынцыпы бяспекі лёгка растлумачыць, калі мы спрабуем атрымаць доступ да нашага кампутара (ПК №1) правярае, ці ёсць у ПК №2 адкрыты ключ нашага кампутара (у дадзеным выпадку ёсць, таму што мы яго так наладжваем), то, калі ён ёсць, проста, праверыць, ці з'яўляецца гэты адкрыты ключ аднолькавым з нашым закрытым ключом (той, які мы нікому не аддавалі). Калі ключы аднолькавыя, гэта дазваляе нам атрымаць доступ, у адваротным выпадку і ў якасці меры бяспекі гэта не дазваляе нам выдалена атрымаць доступ да іншага кампутара.

Такім чынам, вы ведаеце ... даваць нашай дзяўчыне ключ ад дома - не самае бяспечнае, але сумеснае выкарыстанне ключоў і доступ да іншага кампутара праз SSH бяспечныя. ^ _ ^

Сумневы альбо пытанні, скаргі ці прапановы даюць мне ведаць.

Прывітанне ўсім.


Змест артыкула адпавядае нашым прынцыпам рэдакцыйная этыка. Каб паведаміць пра памылку, націсніце тут.

43 каментарыяў, пакіньце свой

Пакіньце свой каментар

Ваш электронны адрас не будзе апублікаваны. Абавязковыя для запаўнення палі пазначаныя *

*

*

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

  1.   elav <° Linux сказаў

    Я сапраўды не разумею, як вы так паранаікаваныя ў пытаннях бяспекі, робіце такую ​​памылку. Калі ў кроку, дзе напісана:

    Enter passphrase (empty for no passphrase)

    Мы нічога не пішам, мы губляемся, калі карыстальніку ўдаецца атрымаць доступ да нашага ПК і адкрыць тэрмінал, бо ён аўтаматычна выконвае:

    ssh root@10.10.0.5

    Ён увойдзе, не запытваючы пароль.

    1.    KZKG ^ Гаара <° Linux сказаў

      Калі хтосьці атрымае доступ да майго ноўтбука, так, ён зможа атрымаць доступ да ПК №2 без неабходнасці ўводзіць яго пароль, аднак, як вы кажаце, я параноік у пытаннях бяспекі, вы сапраўды лічыце, што атрымаць доступ да майго ноўтбука - гэта нешта так проста? ХАХА.

      Калі я заўсёды ўстаю, я заўсёды блакую экран, інакш праз 30 секунд, калі на мышы і клавіятуры ноўтбука не будзе ніякай актыўнасці, ён усё роўна заблакуецца 😉

      1.    Ісус сказаў

        Калі хто-небудзь скрадзе ваш ноўтбук, незалежна ад таго, наколькі сеанс заблакаваны, атрымаць доступ да файлаў банальна, справа 5 хвілін пры загрузцы Linux з USB. А пасля доступу да файлаў, паколькі закрыты ключ неабаронены, вы можаце выкарыстоўваць яго непасрэдна, альбо лепш скапіяваць яго і атрымаць доступ да любога з вашых сервераў камфортна дома. На самай справе, працэс настолькі хуткі, што нават не трэба было б пра гэта ведаць. Праз 5 хвілін вы ідзеце ў прыбіральню ці што іншае, усё можна зрабіць.

        Бяспечны спосаб - паставіць пароль на закрыты ключ, а затым выкарыстоўваць ssh-agent, каб ён запомніў пароль на ўвесь сеанс (проста ssh-add). Такім чынам, ён толькі ўпершыню запытае пароль, і на практыцы ў вас будзе сувязь без пароля ў 90% выпадкаў, акрамя таго, што вы абаронены ад крадзяжу і пранікнення.

        1.    x11tete11x сказаў

          Ці трывіяльны доступ да файлаў? Вы калі-небудзь чулі пра поўнае шыфраванне дыска? (luks + cryptsetup)

          1.    Ісус сказаў

            Так, вядома, калі ў вас зашыфраваны ўвесь дыск, гэта іншая справа, але 90% карыстальнікаў гэтага не робяць, бо яны не ведаюць, як гэта зрабіць, і ў многіх выпадках гэта нават не кампенсуе іх. Наадварот, не захоўваць незашыфраваныя паролі альбо неабароненыя прыватныя ключы на ​​дыску - гэта тое, што можа зрабіць кожны, і, як правіла, добрая практыка.

            Захаванне неабароненых прыватных ключоў на зашыфраваным дыску падобна на тое, каб паркаваць машыну, пакінуўшы дзверы адчыненымі, але наняць ахоўніка з даберманам, каб абараніць яе. Так працуе, але значна прасцей і эфектыўней наўпрост заблакаваць яго.

    2.    шанголеон сказаў

      MMm не робяць так шмат для мінету, хоць яны могуць стварыць віртуальны інтэрфейс, прызначыць IP і падключыцца да гэтага віртуальнага IP, таму нават выдаліўшы ключ, яны не змогуць знайсці машыну, бо ключ працуе толькі для пэўнага IP. Гэта таксама залежыць ад таго, што яны хочуць, для мяне гэта выдатна працуе, як гэта апісвае таварыш, у мяне дома ёсць прыватны сервер, мне не трэба павялічваць бяспеку, таму што ў яго наладжаны VPN.

  2.   Самкехо сказаў

    І ці можа ўсё гэта датычыцца тэрмінала Windows, які павінен падключацца да некалькіх * NIX?
    У мяне замазка, але я таксама магу выкарыстоўваць Securecrt (цяпер у мяне ёсць сцэнар)

    1.    KZKG ^ Гаара <° Linux сказаў

      У тэрмінале Windows (cmd) я перакананы, што не, там гэта будзе немагчыма.
      Аднак, калі вы выкарыстоўваеце шпаклевку, вы можаце паспрабаваць, гэта можа спрацаваць.

      Вітаю вас і вітаем на нашым сайце 😀

    2.    erm3nda сказаў

      Шпатлёўка ўжо прымае параметр -pw у дадатковых камандах. (напрыклад: -pw12345)
      На самай справе, Super Putty круцейшы, чым проста шпатлёўка. (Гэта рамка для шпатлёўкі)

      Такім чынам, вам не трэба яго ставіць.

  3.   Higi сказаў

    Дзякуй за паведамленне, вельмі карысна. Увайсці ў SSH для ўсяго крыху сумна.

    1.    KZKG ^ Гаара сказаў

      Прывітанне і вялікі дзякуй за ваш візіт і каментарый 🙂
      Нічога, сябра, прыемна ведаць, што гэта было карысна ... калі мы можам дапамагчы вам любым іншым спосабам, мы больш чым рады ghted

      Прывітанне і сардэчна запрашаем на сайт.

      1.    Adrianext сказаў

        Мне трэба падключыцца да кампутара windonws з майго Linux, як і з майго тэрмінала

  4.   Раберта сказаў

    Выдатна .. гэта сапраўды натхняе бачыць гэты тып падручнікаў, і мне хочацца таксама ўнесці свой ужо спрошчаны вопыт, каб супольнасць магла імі скарыстацца. Шчыра дзякуй ад Сальвадора.

  5.   Хасэ Грэгарыё сказаў

    Я падключаюся да машыны з ubuntu да той, у якой ёсць debian, але гэта дае мне памылку, пры якой ён не можа праверыць сапраўднасць, і таму ён пытаецца ў мяне пароль .. чаму гэта адбудзецца? Можа быць, версіі ssh-keygen адрозніваюцца альбо што адбываецца?

    1.    KZKG ^ Гаара сказаў

      Змясціце тут памылку, якую яна дае вам, каб дапамагчы вам лепш 😉
      Акрамя таго, вы можаце паспрабаваць змясціць гэта ў тэрмінал:
      sudo mv $HOME/.ssh/known_hosts /opt/

      Для гэтага трэба ачысціць злучэнні (гісторыю злучэнняў) SSH, якія ў вас былі.

  6.   Кінон сказаў

    І калі б я хацеў выкарыстоўваць адзін і той жа адкрыты ключ для некалькіх сервераў, ці мог я гэта зрабіць, ці мне трэба стварыць ключ для кожнага сервера, да якога я хачу атрымаць доступ? Я ўсё роўна паспрабую, але на нейкім бескарысным серверы, каб не сапсаваць нешта карыснае.

    Дзякуй і з павагай.

    1.    KZKG ^ Гаара сказаў

      Як я зрабіў гэта на сваім ноўтбуку, гэта розны ключ для кожнага сервера, на самай справе, я думаю, што немагчыма выкарыстоўваць адзін і той жа ключ для некалькіх ... таму што ідэнтыфікатар кожнага сервера унікальны, як адбітак пальца 🙂

      прывітанне

      1.    Кінон сказаў

        Прывітанне, уладар пяску. Я чытаў ключы і выявіў, што пара ключоў (адкрыты і прыватны) служыць кліенту сервера для адпраўкі і атрымання выклікаў і, такім чынам, ідэнтыфікацыі адзін аднаго, таму гэта не мае нічога агульнага з паролем, які вы выкарыстоўваеце для доступу да сервера, апошні выкарыстоўваецца для «ўстаўкі» адкрытага ключа ў давераныя серверы. Такім чынам, вы можаце выкарыстоўваць яго ў любым колькасці, якое вам хочацца альбо трэба.

        Не ведаю, ці растлумачыў я сябе, але жарт у тым, што, каб мець магчымасць выкарыстоўваць сваю пару ключоў на іншых серверах, пасля выканання вашага падручніка вам проста трэба зрабіць:

        SSH-копія-ідэнтыфікатар other.user@otra.ip
        напішыце пароль для гэтага іншага сервера

        І гатовы.
        прывітанне

  7.   Raul сказаў

    Добры дзень, дзякуй за кіраўніцтва, ён адзіны дапамог мне. Цяпер, калі я хачу зрабіць гэта на іншай пары кампутараў, я атрымліваю наступнае:

    $ ssh-copy-id -p 4000 lm11@148.218.32.91

    Дрэнны порт 'umask 077; тэст -d ~ / .ssh || mkdir ~ / .ssh; кошка >> ~ / .ssh / allowed_keys '

    Дзякуй за вашу дапамогу.

  8.   нямецкі сказаў

    Я зрабіў тое, што вы нам сказалі, але ён увесь час пытаецца ў мяне пароль. Я ўдакладняю гэтую сувязь паміж двума серверамі Linux hat hat ... Што яшчэ можа быць?

    Я ўжо паглядзеў / etc / ssh / sshd_config

    Я ўжо перазагрузіў абодва серверы

    PC2 = linux red hat 6.4
    PC2 = linux red hat 5.1

    1.    Ксаўе сказаў

      Служба ssh павінна быць правільна наладжана (/ etc / ssh / sshd_config файл на PC2), каб яна працавала.

  9.   нямецкі сказаў

    выпраўленне ...

    ПК1 = Centos 6.4
    PC2 = Red Hat 5.1

  10.   Грывас сказаў

    Прывітанне, калегі, у мяне ёсць неабходнасць усталяваць даверныя адносіны паміж 1 серверам Linux Centos 5.3 і Unix Sco5.7, але ў мяне ёсць праблема, што пры выкананні этапу 3 капіравання ключа з Linux у Unix я атрымліваю паведамленне / usr / bin / ssh-copy-id: ПАМЫЛКА: Асобы не знойдзены, чаму гэта можа быць?

    дзякуй

  11.   намёк сказаў

    Я прытрымліваўся падручніка пакрокава. Гэта не дае мне ніякай памылкі, але ў рэшце рэшт, калі я падключаюся з PC1 на PC2, ён працягвае пытацца ў мяне пароль карыстальніка пры кожным падключэнні.

    Хто-небудзь думае, што гэта можа быць?

  12.   Рабаваць сказаў

    Здаецца, пасля генерацыі ключа вам трэба выканаць ssh-add, каб агент аўтэнтыфікацыі мог яго выкарыстоўваць.

  13.   Андрэа Каладро сказаў

    Калі я выдаляю ключ доступу, ён нічога не распазнае, мяне ўзламалі, дапамажыце, ён нічога не ўводзіць

  14.   Іарданская акаста сказаў

    Вялікі дзякуй, атрымалася выдатна

  15.   мінімініё сказаў

    Вялікі дзякуй за кіраўніцтва! Гэта вельмі лёгка, і гэта зручна, калі вашы серверы ходзяць і вам не трэба ўводзіць ключы і, такім чынам, аўтаматызаваць рэчы things

  16.   erm3nda сказаў

    Дзякуй.

    Я не ведаў пра выкарыстанне ssh-copy-id, і гэта было цалкам аўтаматычна.
    Праўда ў тым, што я быў да кропкі, каб напісаць пароль, таму я захаваю яго перафразаваннем DEFAULT, якое падтрымліваецца падчас сеансу.

    Я не супраць напісаць яго адзін раз пры ўключэнні ПК, рулон павінен ставіць яго кожны раз, калі ён адключаецца ці падобныя рэчы 😀

    SSH Няма дзюцу!

  17.   лізз сказаў

    Прывітанне

    добры падручнік ... але калі я хачу перадаць інфармацыю ??? як я магу гэта зрабіць?

  18.   Дыега Гансалес сказаў

    Добры дзень, ваш уклад вельмі цікавы, але ў мяне ёсць пару сумневаў адносна падобнай тэмы

  19.   Карлас Эрнандэс сказаў

    Гэй.

    Паспрабуйце апісаныя вышэй дзеянні, але пры спробе скапіяваць ключ на сервер 2 (PC2) ён кажа мне, што каманда не існуе.

    bash: ssh-copy-id: каманда не знойдзена

    Ці магу я скапіраваць ключ уручную?

  20.   хайды сказаў

    Выдатна !! Я шукаў простага тлумачэння, і яно спрацавала ідэальна

    дзякуй!

  21.   Ярумал сказаў

    Выдатны ўклад.
    Вялікі дзякуй.

  22.   Пітэр сказаў

    Прывітанне, я хацеў бы ведаць, ці ёсць спосаб зрабіць гэтую каманду ssh-copy-id. Паколькі я ўсталёўваю Open ssh для Windows, ssh працуе для мяне ў DOS, але ў яго няма гэтай каманды ssh-copy-id. Я хацеў бы ведаць, як адправіць гэты адкрыты ключ на іншы сервер Linux (сервер Linux). Вялікі дзякуй.

  23.   Пітэр сказаў

    Прывітанне. Мне трэба ўсталяваць даверныя адносіны паміж серверам Linux і машынай Windows. Усталюйце SSH для Windows, і ён працуе для мяне. Але гэтая каманда ssh-copy-id недаступная ў гэтым інструменце.

    Яны ведаюць іншы спосаб зрабіць гэта без выкарыстання ssh-copy-id.

    Вялікі дзякуй за вашы каментарыі.

  24.   Андрыньё сказаў

    Але пытанне ў гэтым заключаецца ў магчымасці падключэння без пароля, калі мы паставім парольную фразу, яна папросіць у нас гэты пропуск для падлучэння, і гэта не было мэтай гэтага

  25.   Андрыньё сказаў

    Гэта вельмі спатрэбілася мне для майго кампутарнага модуля fp, дзякуй 🙂

  26.   Вікенці сказаў

    Дзякуй!!!

  27.   x-man сказаў

    Некаторыя хвалююцца наконт таго, наколькі раздражняе ўвядзенне пароля (парольнай фразы), бо, як ужо згадвалася вышэй, гэта «карыстальнік-агент», і што ў мяне ён таксама настроены на Keepass і яго функцыю аўтаматычнага ўводу, таму я проста Я выклікаю тэрмінал, і з камбінацыяй клавіш, якія яны ўжо наладзілі, у мяне таксама ёсць "псеўданімы" для кожнага запыту, і ўсё вельмі проста.

    Добры падручнік.

    Ёсць шмат задавальнення !!

  28.   Феліпе Оярс сказаў

    Вельмі добрая інфармацыя 🙂 але ў мяне ёсць пытанне ...

    У мяне ёсць PC10, дзе я захоўваю інфармацыю, інфармацыя адпраўляецца з pc1 - pc2 - pc3 на PC10, як я магу прымусіць pc1, pc і pc3 выкарыстоўваць адзін і той жа ключ для доступу да PC10 без ключа.

    На ўра ...

  29.   Нестар сказаў

    Як я магу пералічыць, што знаходзіцца на машыне1 у bash машыны2, не пераходзячы да ssh ip @ hosts да машыны машыны1. Я не ведаю, ці разумею я xD

  30.   Марцін сказаў

    З гэтай публікацыі прайшло 10 гадоў, і я працягваю наведваць яе, калі мне трэба. Як і некаторыя іншыя ўрокі тут, яны вытрымалі выпрабаванне часам. Дзякуй і прывітанне!