Ստեղծեք SSH- ը Ubuntu- ում

SSH (Secure Shell) տեխնոլոգիան ապահովում է անվտանգ կապի միջոցով համակարգչի հեռակառավարման անվտանգ անվտանգությունը: SSH- ն կոդավորում է բոլոր փոխանցված ֆայլերը, ներառյալ գաղտնաբառերը, ինչպես նաեւ բացարձակապես ցանկացած ցանցային արձանագրություն: Գործիքի ճիշտ աշխատանքի համար հարկավոր է ոչ միայն տեղադրել այն, այլեւ այն կարգավորել: Մենք կցանկանայինք խոսել այս հոդվածում հիմնական կոնֆիգուրացիայի արտադրանքի մասին `օրինակ վերցնելով Ubuntu օպերացիոն համակարգի վերջին տարբերակը, որի վրա տեղադրվելու է սերվերը:

Ստեղծեք SSH- ը Ubuntu- ում

Եթե ​​դուք չեք ավարտել տեղադրումը սերվերում եւ հաճախորդի համակարգչում, դուք պետք է դա անմիջապես անել, քանի որ ամբողջ ընթացակարգը բավականին պարզ է եւ շատ ժամանակ չի պահանջում: Այս թեմայի վերաբերյալ մանրամասն ուղեցույցի համար տես մեր հոդվածը հետեւյալ հղումով: Այն նաեւ ցույց է տալիս կազմաձեւման ֆայլի խմբագրման եւ SSH- ի փորձարկման կարգը, ուստի այսօր մենք կքննարկենք այլ խնդիրների մասին:

Կարդալ ավելին: Ubuntu- ում SSH- սերվերի տեղադրում

Ստեղծելով RSA բանալին զույգը

Նոր տեղադրված SSH- ն չունի նշված ստեղները սերվերից հաճախորդին եւ հակառակը միանալու համար: Այս բոլոր պարամետրերը պետք է ձեռքով անմիջապես սահմանվեն արձանագրության բոլոր բաղադրիչները ավելացնելուց հետո: Հիմնական զույգը աշխատում է RSA- ի ալգորիթմից (կարճ համար Rivest, Shamir- ի եւ Adleman- ի մշակողների անունները): Շնորհիվ այս ծպտյալ համակարգերի, հատուկ ստեղները կոդավորված են, օգտագործելով հատուկ ալգորիթմներ: Մի քանի հրապարակային բանալիների ստեղծման համար անհրաժեշտ է միայն մկնիկի մեջ մուտք գործել համապատասխան հրամաններ եւ հետեւեք հրահանգներին:

  1. Գնալ աշխատանքի հետ "Տերմինալ" ցանկացած հարմար եղանակ, օրինակ, բացելով այն մենյուի կամ ստեղների համադրություն Ctrl + Alt + T.
  2. Մուտքագրեք հրամանըssh-keygen- ըեւ ապա սեղմեք բանալին Մուտքագրեք.
  3. Ձեզ կառաջարկվի ստեղծել ֆայլ, որտեղ պահվում է ստեղները: Եթե ​​ցանկանում եք դրանք պահել կանխադրված վայրում, պարզապես սեղմեք Մուտքագրեք.
  4. Հանրային բանալին կարող է պաշտպանված լինել կոդով: Եթե ​​ցանկանում եք օգտվել այս տարբերակից, հայտնված տողում գրեք գաղտնաբառը: Մուտքագրված նիշերը չեն ցուցադրվի: Նոր գիծը պետք է կրկնի այն:
  5. Դրանից հետո կտեսնեք, որ բանալին փրկվել է, եւ դուք կկարողանաք ծանոթանալ իր պատահական գրաֆիկական պատկերին:

Այժմ գոյություն ունի ստեղծել զույգ բանալիներ `գաղտնի եւ բաց, որը կօգտագործվի համակարգիչների միջեւ հետագա կապի համար: Պարզապես պետք է բանալին սերվերի վրա, որպեսզի SSH- ի վավերացումը հաջող լինի:

Հասարակական բանալին սերվերին պատճենելը

Բանալ բանալիները պատճենելու երեք մեթոդ կա: Նրանցից յուրաքանչյուրը օպտիմալ կլինի տարբեր իրավիճակներում, որտեղ, օրինակ, մեթոդներից մեկը չի աշխատում կամ հարմար չէ կոնկրետ օգտագործողի համար: Մենք առաջարկում ենք քննարկել բոլոր երեք տարբերակները `սկսած առավել պարզ եւ արդյունավետ:

Option 1: ssh-copy-id հրամանը

Թիմըssh-copy-id- ըներկառուցված օպերացիոն համակարգին, այնպես որ դրա իրականացման համար անհրաժեշտ է տեղադրել լրացուցիչ բաղադրիչներ: Հետեւեք հիմնական սինթետիկին պատճենը պատճենելու համար: Ի "Տերմինալ" պետք է մտելssh-copy-id օգտվողի @ remote_hostորտեղ օգտագործողի անուն @ remote_host - հեռավոր համակարգչի անունը:

Երբ առաջին անգամ կապվեք, դուք կստանաք ծանուցման տեքստ:

«203.0.113.1 (203.0.113.1)» տերմինի հավաստիությունը չի կարող հաստատվել:
ECDSA հիմնական մատնահետքը fd: fd: d4: f9: 77: fe: 73: 84: e1: 55: 00: ad: d6: 6d: 22: fe.
Վստահ եք, որ ցանկանում եք շարունակել կապել (այո / ոչ): այո

Դուք պետք է նշեք տարբերակ այո շարունակել կապը: Դրանից հետո կոմունալը ինքնուրույն որոնում է ֆայլի ձեւի բանալին:id_rsa.pubորը ստեղծվել է ավելի վաղ: Արդյունավետ հայտնաբերումից հետո ցուցադրվում է հետեւյալ արդյունքը.

/ usr / bin / ssh-copy-id: INFO: Ես արդեն տեղադրված եմ
/ usr / bin / ssh-copy-id: INFO: 1 բանալի (ներ) մնում է տեղադրվել
[email protected] գաղտնաբառը:

Նշեք գաղտնաբառը հեռավոր տանտիրոջ կողմից, որպեսզի օգտակարը կարող է մուտք գործել այն: Գործիքը կրկնօրինակելու է հրապարակային ֆայլի տվյալները: ~ / .ssh / id_rsa.pubապա հաղորդագրությունը կհայտնվի էկրանին:

Ավելացված բանալին (ների) քանակը: 1

Այժմ փորձեք մուտք գործել մեքենայի մեջ `« ssh '[email protected]' »
ստուգեք այն:

Նման տեքստի տեսքը նշանակում է, որ բանալին հաջողությամբ ներբեռնվել է հեռավոր համակարգչին, եւ այժմ կապի հետ կապված խնդիրներ չեն լինի:

Ընտրանք 2. Սահմանել հրապարակային բանալին SSH- ի միջոցով

Եթե ​​դուք չեք կարողանում օգտվել վերը նշված օգտակար ծառայությունից, բայց գաղտնաբառ եք մուտք գործել հեռավոր SSH սերվերի համար, կարող եք ձեռքով բեռնաթափել ձեր օգտվողի ստեղնը, դրանով իսկ կապելով հետագա կայուն վավերացումը: Այս հրամանի համար օգտագործվում է կատուորը կարդում է ֆայլի տվյալները, ապա դրանք կուղարկվեն սերվեր: Մխիթարիչում դուք պետք է մուտքագրեք գիծը

cat ~ / .ssh / id_rsa.pub | ssh username @ remote_host "mkdir -p ~ / .ssh && touch ~ / .ssh / authorized_keys && chmod -R go = ~ / .ssh && cat >> ~ / .ssh / authorized_keys".

Երբ հայտնվում է հաղորդագրություն

«203.0.113.1 (203.0.113.1)» տերմինի հավաստիությունը չի կարող հաստատվել:
ECDSA հիմնական մատնահետքը fd: fd: d4: f9: 77: fe: 73: 84: e1: 55: 00: ad: d6: 6d: 22: fe.
Վստահ եք, որ ցանկանում եք շարունակել կապել (այո / ոչ): այո

շարունակել կապել եւ մուտք գործել գաղտնաբառը գաղտնաբառ մուտք գործելու համար: Դրանից հետո հանրային ստեղնը ավտոմատ կերպով պատճենվում է կազմաձեւման ֆայլի ավարտին: authorized_keys.

Option 3: Ձեռքով բացել հրապարակային բանալին

SSH սերվերի միջոցով հեռակա համակարգչից օգտվելու բացակայության դեպքում բոլոր վերը նշված քայլերը կատարվում են ձեռքով: Դա անելու համար առաջին հերթին սովորեք սերվերի համակարգչի բանալին հրահանգովcat ~ / .ssh / id_rsa.pub.

Էկրանի վրա նման բան կցուցադրվի.ssh-rsa + բանալին, որպես բնութագիր սահմանված == demo @ test. Դրանից հետո անցեք հեռավոր սարքի վրա, որտեղ ստեղծեք նոր տեղեկատուmkdir -p ~ / .ssh. Այն լրացնում է նաեւ ֆայլ:authorized_keys. Հաջորդը, տեղադրեք այն բանալին, որը սովորել եք նախկինումecho + հանրային բանալին string >> ~ / .ssh / authorized_keys. Դրանից հետո դուք կարող եք փորձել նույնականացնել սերվերի հետ, առանց գաղտնաբառերի օգտագործման:

Սերվերի նույնականացումը գեներացվել բանալիով

Նախորդ բաժնում Դուք սովորել եք հեռակա համակարգչի բանալին սերվերին պատճենելու երեք մեթոդները: Նման գործողությունները թույլ կտան միանալ առանց գաղտնաբառի օգտագործման: Այս ընթացակարգը կատարվում է հրամանի տողից `մուտքագրելովshh ssh Մականուն @ remote_hostորտեղ օգտագործողի անուն @ remote_host - ցանկալի համակարգչի օգտագործողի անունը եւ հյուրընկալողը: Երբ առաջին անգամ կապվեք, դուք կտեղեկացվեք անծանոթ կապի մասին եւ կարող եք շարունակել ընտրանքը ընտրելով այո.

Կապը տեղի կունենա ինքնաբերաբար, եթե հիմնական զույգերի ստեղծման ընթացքում բացակայում է նշանը: Հակառակ դեպքում, նախ պետք է մուտքագրեք SSH- ի հետ աշխատելու համար:

Անջատել գաղտնաբառի նույնականացումը

Առանցքային պատճենահանման հաջողված դրսեւորումը դիտվում է այն իրավիճակում, երբ դուք կարող եք մուտք գործել սերվեր առանց գաղտնաբառի օգտագործման: Այնուամենայնիվ, այս ձեւով նույնականացման կարողությունը հարձակվողներին հնարավորություն է տալիս գործիքներ օգտագործել, գաղտնաբառ գտնել եւ կոտրել անվտանգ կապը: Նման դեպքերից պաշտպանվելու համար թույլ կտան SSH կոնֆիգուրացիայի ֆայլում մուտք գործել գաղտնաբառի լիակատար անջատում: Սա կպահանջի.

  1. Ի "Տերմինալ" բացեք կազմաձեւման ֆայլը հրամանի միջոցով խմբագրիչի միջոցովsudo gedit / etc / ssh / sshd_config.
  2. Գտնել գիծը PasswordAuthentication- ը եւ հեռացնել նշանը # սկզբում հրաժարվել պարամետրից:
  3. Փոխեք արժեքը ոչ եւ պահպանեք ընթացիկ կազմաձեւը:
  4. Փակել խմբագիրը եւ վերագործարկել սերվերը:sudo systemctl վերսկսել ssh.

Գաղտնաբառի նույնականացումը անջատված է, եւ դուք կկարողանաք մուտք գործել սերվեր `օգտագործելով RSA- ի ալգորիթմի հետ կապված հատուկ ստեղծված բանալիներ:

Ստեղծեք ստանդարտ firewall- ը

Ubuntu- ում, լռելյայն firewall- ը Uncomplicated Firewall (UFW) firewall- ն է: Այն թույլ է տալիս թույլատրել ընտրված ծառայությունների համար կապեր: Յուրաքանչյուր հայտը ստեղծում է սեփական պրոֆիլը այս գործիքում, եւ UFW- ն դրանք կառավարում է, թույլ տալով կամ ժխտելով կապերը: Ստեղծեք SSH- ի պրոֆիլը, ավելացնելով այն, ըստ ցանկի, կատարվում է հետեւյալ կերպ.

  1. Բացեք հրամանատարությունը օգտագործող firewall պրոֆիլների ցանկըsudo ufw ծրագրերի ցանկ.
  2. Տեղեկատվություն ցուցադրելու համար մուտքագրեք ձեր հաշվի գաղտնաբառը:
  3. Դուք կտեսնեք մատչելի ծրագրերի ցանկ, OpenSSH- ը պետք է լինի դրանց մեջ:
  4. Այժմ պետք է թույլատրեք SSH- ի կապեր: Դա անելու համար ավելացրեք թույլատրված պրոֆիլների ցանկըsudo ufw- ն թույլ է տալիս OpenSSH- ին.
  5. Միացնել firewall- ը `կանոնները թարմացնելու միջոցովsudo ufw հնարավորություն.
  6. Համոզված եղեք, որ կապերը թույլատրվեն, դուք պետք է գրեքsudo ufw կարգավիճակը, ապա դուք կտեսնեք ցանցի կարգավիճակը:

Սա ավարտում է Ubuntu- ի SSH- ի կարգավորումը: Կոնֆիգուրացիայի ֆայլի եւ այլ պարամետրերի հետագա կոնֆիգուրացիան իր դիմումի համաձայն իրականացվում է անձի կողմից յուրաքանչյուր անձի կողմից: Դուք կարող եք ծանոթանալ արձանագրության պաշտոնական փաստաթղթերում SSH- ի բոլոր բաղադրիչների գործողությանը: