Անցնել պարունակությանը

SSH բանալու ստեղծում

Այս հոդվածում

SSH բանալիների օգտագործումը թույլ է տալիս խուսափել հեռավոր օգտատիրոջ գաղտնաբառի մուտքագրումից և այն փոխարինել դժվար գտնելի SSH բանալով, ինչը սերվերի կառավարման գործընթացն ավելի անվտանգ է դարձնում։

Տեղեկատվություն

SSH բանալին կրիպտոգրաֆիական բանալի է, որն օգտագործվում է օգտատիրոջ նույնականացման համար հեռավոր սերվերին SSH արձանագրությամբ միանալիս։

Գոյություն ունեն SSH բանալիների երկու տեսակ.

  1. Հանրային բանալին (public key) բանալի է, որը կարելի է ուղարկել հեռավոր սերվեր՝ նույնականացման համար։ Այն օգտագործվում է տվյալները ծածկագրելու համար, որոնք կարող են վերծանվել միայն համապատասխան մասնավոր բանալով։ Մասնավոր բանալին նույնպես կարող է օգտագործվել տվյալները ծածկագրելու համար, որոնք այնուհետև վերծանվում են հանրային բանալով։

  2. Մասնավոր բանալին (private key) բանալի է, որը պետք է գաղտնի պահել օգտատիրոջ տեղական սարքում։ Այն օգտագործվում է հանրային բանալով ծածկագրված տվյալները վերծանելու համար։

Սերվերին SSH բանալիներով միանալու համար անհրաժեշտ է տեղական սարքում ստեղծել բանալիների զույգ (հանրային և մասնավոր), այնուհետև հանրային բանալին պատճենել հեռավոր սերվեր։ Այնուհետև հնարավոր է սերվերին միանալ՝ առանց հեռավոր օգտատիրոջ գաղտնաբառը նշելու։ Սովորաբար մասնավոր բանալին ստեղծվում է գաղտնաբառով, և միանալիս դեռևս անհրաժեշտ կլինի նշել այդ գաղտնաբառը։

SSH բանալու ստեղծում Linux/MacOS օպերացիոն համակարգերի համար

SSH բանալու ստեղծում

  1. Միացեք սերվերին SSH-ի միջոցով։

  2. Ստեղծեք SSH բանալի տեղական սարքում։ Դրա համար տերմինալում կատարեք հետևյալ հրամանը.

    ssh-keygen -t rsa
    

    Հրամանը կատարելուց հետո ձեզ կխնդրեն ընտրել բանալու ֆայլի անունը և տեղադրման վայրը։ Տեղեկատվության պահպանման համար այն պահպանվում է /.ssh/ թղթապանակում, իսկ ֆայլի անունը՝ id_rsa։

    Այնուհետև ձեզ կխնդրեն մուտքագրել գաղտնաբառ՝ SSH միացումը ավելի անվտանգ դարձնելու համար։ Դուք կարող եք չմուտքագրել գաղտնաբառը.

    Enter file in which to save the key (/root/.ssh/id_rsa):
    Enter passphrase (empty for no passphrase):
    Enter same passphrase again:
    

    Բանալու մատնահետքը և նրա պատկերը հայտնվում են տերմինալում.

    The key's randomart image is:
    +---[RSA 3072]----+
    |      .     ..o+=|
    |     . .     o +.|
    |      o . o . o.o|
    |       = o . + oo|
    |      . S . + o o|
    |       . = ..o . |
    |        o ..=o+  |
    |         ..+=Xo+ |
    |         .E=*=Oo |
    +----[SHA256]-----+
    

    Կարող եք օգտագործել հրամաններ՝ ստեղծված SSH բանալիները դիտելու համար.

    • cat ~/.ssh/id_rsa - մասնավոր բանալու դիտում.
    • cat ~/.ssh/id_rsa.pub - հանրային բանալու դիտում։

    Այնուհետև անհրաժեշտ է հանրային բանալին ավելացնել սերվերին։ Դրա համար մուտքագրեք հետևյալ հրամանը՝ փոխարինելով username-ը սերվերի օգտատիրոջ անունով, իսկ ip_address-ը՝ սերվերի IP հասցեով.

    ssh-copy-id <username>@<ip_address>
    
    • <username> — օգտատիրոջ անուն.
    • <ip_address> — սերվերի հանրային IP հասցե։

    Հրամանը մուտքագրելուց հետով համակարգը կխնդրի սերվերի հաշվի գաղտնաբառը։ Գաղտնաբառը մուտքագրելուց հետև հանրային բանալին պատճենվում է սերվեր և ավելացվում սերվերի ~/.ssh/authorised_keys ֆայլում։

    Վերը նշված քայլերը կատարելուց հետև անհրաժեշտ է մուտքագրել հրաման՝ սերվերին SSH բանալով միանալու համար.

    ssh <username>@<ip_address>
    

SSH բանալու ստեղծում Linux-ի վերականգնման ժամանակ

SSH բանալին կարելի է ավելացնել օպերացիոն համակարգի վերականգնման ժամանակ։ Դրա համար նոր օպերացիոն համակարգի տեղադրումը սկսելուց առաջ Invapi-ում լրացրեք Public ssh key դաշտը Reinstall թաբում.

Նշում

ՕՊՀ վերականգնման խնդրանքի օրինակի համար տե՛ս ՕՊՀ վերականգնման API մեթոդներ

SSH բանալու ստեղծում Windows-ի համար

Տեղեկատվություն

Windows օպերացիոն համակարգում SSH բանալիների ստեղծման երկու եղանակ կա. մեկը՝ OpenSSH հաճախորդի միջոցով, մյուսը՝ PuTTY հաճախորդի միջոցով։ Ստորև ներկայացված են հրահանգներ բանալիները ստեղծելու համար՝ օգտագործելով ցանկացած եղանակ։

OpenSSH հաճախորդ

OpenSSH հաճախորդի միջոցով SSH բանալի ստեղծելու համար անհրաժեշտ է կատարել հետևյալ գործողությունների հաջորդականությունը.

  1. Ստուգեք OpenSSH հաճախորդի առկայությունը։ Դրա համար անցեք Parameters >> Applications >> Additional Components և որոնման տողում մուտքագրեք SSH։

    Եթե հաճախորդը տեղադրված չէ, սեղմեք Add Component կոճակը և գտեք այն որոնման տողի միջոցով։ Այնուհետև սեղմեք Install կոճակը։

    Կարող եք նաև օգտագործել հրամանի տողը՝ openSSH հաճախորդը ստուգելու համար.

    ssh -V
    
  2. Անցեք հրամանի տող (շեղբ Win+R >> մուտքագրեք cmd >> սեղմեք OK) և մուտքագրեք հրամանը.

    ssh-keygen
    

    Հրամանը կատարելուց հետև ձեզ կխնդրեն ընտրել բանալու ֆայլի անունը և տեղադրման վայրը։ Տեղեկատվության պահպանման համար այն պահպանվում է /.ssh/ թղթապանակում, իսկ ֆայլի անունը՝ id_rsa։

    Այնուհետև ձեզ կխնդրեն մուտքագրել գաղտնաբառ՝ SSH միացումը ավելի անվտանգ դարձնելու համար։ Սա ընտրովի է.

    Enter file in which to save the key (.ssh/id_rsa):
    Enter passphrase (empty for no passphrase):
    Enter same passphrase again:```
    

    Բանալու մատնահետքը և նրա պատկերը հայտնվում են տերմինալում.

    The key's randomart image is:
    +---[RSA 3072]----+
    |      .     ..o+=|
    |     . .     o +.|
    |      o . o . o.o|
    |       = o . + oo|
    |      . S . + o o|
    |       . = ..o . |
    |        o ..=o+  |
    |         ..+=Xo+ |
    |         .E=*=Oo |
    +----[SHA256]-----+
    
  3. Ստեղծված բանալիները ստուգելու համար անցեք նախկինում նշված թղթապանակ տեղական սարքում։ Օրինակ՝ C:\Users\user_name\.ssh.

PuTTY

  1. Ներբեռնեք և տեղադրեք Putty հաճախորդը ձեր տեղական սարքում.

  2. Կատարեք puttygen.exeStart մենյուից։

  3. Ընտրեք RSA բանալու տեսակը և սեղմեք Generate կոճակը.

  4. Շարժեք մկնիկը մի քանի անգամ պատահական ուղղություններով Key Generation պատուհանում, այս գործողությունը կստեղծի պատահական աղմուկ.

  5. Բանալին գաղտնաբառով պաշտպանելու համար մուտքագրեք այն Key passphrase-ում և կրկնեք Confirm passphrase-ում։ Եթե լրացուցիչ պաշտպանություն չի պահանջվում, թողեք այս դաշտերը դատարկ.

    Սեղմեք Save Private Key կոճակը՝ մասնավոր բանալին պահպանելու համար։

    Սեղմեք Save Public Key կոճակը՝ հանրային բանալին սկավառակին պահպանելու համար։ Այս բանալին կօգտագործվի սերվերում նույնականացման համար։

  6. Պատճենեք SSH հանրային բանալին սերվեր.

    scp </path/to/file> <username>@<ip_address></path/to/destination>
    
    • </path/to/file> — հանրային բանալու լիակատար ճանապարհը տեղական համակարգչում.
    • <username> — օգտատիրոջ անուն.
    • <ip_address> — սերվերի հանրային IP հասցե.
    • </path/to/destination> — հանրային բանալին սերվերում պահպանելու ճանապարհ։

SSH բանալու ստեղծում Windows-ի վերականգնման ժամանակ

Հնարավոր է SSH բանալին ավելացնել օպերացիոն համակարգի վերականգնման ժամանակ։ Դրա համար նոր օպերացիոն համակարգի տեղադրումը սկսելուց առաջ Invapi-ում լրացրեք Public ssh key դաշտը Reinstall թաբում.

Նշում

ՕՊՀ վերականգնման խնդրանքի օրինակի համար տե՛ս ՕՊՀ վերականգնման API մեթոդներ

SSH բանալու ջնջում

SSH բանալին ջնջելու համար անհրաժեշտ է.

  • Բացեք authorised_keys ֆայլը, որը սովորաբար գտնվում է /.ssh/ թղթապանակում։ Կարող եք օգտագործել հրամանի տողի տեքստային խմբագրիչ, օրինակ՝ Vim կամ Nano։
  • Գտեք այն տողը, որը պարունակում է ջնջելու ցանկացած հանրային բանալին։ Յուրաքանչյուր տող համապատասխանում է բանալուն։
  • Ջնջեք հանրային բանալու տողը authorized_keys ֆայլից։
  • Պահպանել փոփոխությունները և փակեք ֆայլը։
  • Կրկնակի միացրեք SSH ծառայությունը սերվերում՝ փոփոխությունները ուժի մեջ մտնելու համար։ Շատ դեպքերում սա կարելի է կատարել sudo service ssh restart կամ sudo systemctl restart sshd հրամաններով։
  • Ստուգեք, որ բանալին այլևս չի աշխատում SSH մուտքի համար։

Նշում

Եթե Windows օպերացիոն համակարգը տեղադրված է օգտատիրոջ տեղական սարքում, կարող եք նաև գտնել known_hosts ֆայլը և ջնջել համապատասխան SSH բանալու տողը

question_mark
Is there anything I can help you with?
question_mark
AI Assistant ×