ssh

SSH-sleutels kopiëren

SSH-sleutels kopiëren
SSH is een belangrijk hulpmiddel als het gaat om een ​​werk dat op een andere server moet worden gedaan. U kunt bestanden verplaatsen, mappen synchroniseren, accounts en serverbestanden migreren, back-ups kopiëren, enz. Er zijn talloze toepassingen voor SSH en het belang van SSH-sleutels is wanneer er in korte tijd meer repetitieve processen moeten worden uitgevoerd, zoals het kopiëren van sommige bestanden of mappen, meerdere gebruikers, meerdere mappen, meerdere accounts, cpanel-back-ups enz. zal echt saai en tijdrovend zijn als je elke keer dat daarom wordt gevraagd een ssh-wachtwoord moet geven. Het instellen van uw SSH-sleutels kan voorkomen dat het wachtwoord voor elke taak handmatig moet worden ingevoerd.

Om SSH-sleutels tussen twee servers in te stellen, moeten we deze stappen volgen:

Stap 1: Maak een sleutelpaar in de bronserver

Maak een sleutelpaar op de bronserver. Wanneer we de opdracht ssh-keygen geven, wordt standaard een 2048-bits RSA-sleutelpaar gemaakt en als u sterkere codering nodig hebt, kunt u ook 4096-bits gebruiken. Daarvoor moet je "-b 4096" gebruiken in het ssh-keygen-commando end. Ik gebruik hier de standaard.

Een paar dingen die moeten worden geregeld in de onderstaande uitvoer:

In de regel "Voer het bestand in waarin de sleutel moet worden opgeslagen" (/wortel/.ssh/id_rsa):”

Het vraagt ​​het pad om de sleutel op te slaan en de standaard is normaal gesproken prima. Als de standaardinstelling goed is, kunt u gewoon op enter drukken. Als je een alternatief pad wilt proberen, moet je daar hetzelfde opgeven.  Soms zegt dit als volgt:

/wortel/.ssh/id_rsa bestaat al. Overschrijven (j/n)?

U moet een kopie nemen van de .ssh-map voordat u wijzigingen aanbrengt of moet weten wat u doet. Als u een Ja verzendt, werkt de oude sleutel (indien al in gebruik) niet.

In de regel "Voer wachtwoordzin in (leeg voor geen wachtwoordzin):" Dit is een extra beveiligingsprocedure die elke keer dat u probeert in te loggen op SSH om een ​​wachtwoordzin vraagt ​​en die werkt als een 2-stapsverificatie. Maar als je ssh-toegang nodig hebt voor scripting of andere directe werken en snelle werken, dan is het beter om dit niet te hebben. Behalve het scripten of automatiseren van de werken, raden we je aan dit zeker te hebben.

Volledig resultaat van de opdracht ter referentie:

[e-mail beveiligd]:~$ ssh-keygen
Publiek/privé rsa-sleutelpaar genereren.
Voer het bestand in waarin u de sleutel wilt opslaan (/root/.ssh/id_rsa):
Gemaakte map '/root/.ssh'.
Voer wachtwoordzin in (leeg voor geen wachtwoordzin):
Voer dezelfde wachtwoordzin opnieuw in:
Uw identificatie is opgeslagen in /root/.ssh/id_rsa.
Je openbare sleutel is opgeslagen in /root/.ssh/id_rsa.kroeg.
De belangrijkste vingerafdruk is:
SHA256:z4nl0d9vJpo/5bdc4gYZh8nnTjHtXB4Se/UqyuyigUI sumesh@Sree
De willekeurige afbeelding van de sleutel is:
+---[RSA 2048]----+
| |
|             .  .|
|           . ooo.o|
|           .=o=o+|
| E     S o .*oBo|
| .   .   * uit+.+.=|
| … o=. =ooo|
|   .  … +  o*.B|
| … uit. o+oB+|
+----[SHA256]-----+
[e-mail beveiligd]~$

Stap 2: Kopieer dit aangemaakte sleutelpaar naar uw bestemmingsserver

Er zijn 2 verschillende manieren om dit naar uw bestemmingsserver te kopiëren

2.1 De opdracht ssh-copy-id gebruiken

ssh-copy-id zal het kopiëren en instellen van de sleutel naar een externe server op de juiste manier voor u afhandelen. Zodra de opdracht is voltooid, hebt u geen wachtwoord meer nodig voor elke login. Nu kunt u al uw geautomatiseerde scripts schrijven voor systeembeheerders zonder dat u handmatig een wachtwoord hoeft in te voeren en tijd besparen op de dagelijkse toegang tot systemen die u altijd gebruikt.

Eerst moet u controleren of er een dergelijke opdracht is en of de opdracht werkt en de gebruiker die u probeert toegang heeft tot deze opdracht, dan kunt u deze opdracht gebruiken om de openbare sleutel naar de externe server te kopiëren.  Dit hulpprogramma scant uw lokale account op openbare rsa-sleutels en vraagt ​​u om het wachtwoord van het account van de externe gebruiker.

Hier gaan we de root ssh-sleutel kopiëren naar de servertoegang op rootniveau.  Dus om dit gekopieerd te krijgen, moet je inloggen / overschakelen naar de gebruiker waarvoor je de sleutel hebt gemaakt. In dit geval proberen we root-root-verbinding.

De volledige uitvoer staat hieronder en ik voeg de benodigde details daartussen toe

root@Source]]:~$ ssh-copy-id   [email protected] -p 1986
De authenticiteit van gastheer '[192.1.1.19]:1986 ([192.1.1.19]:1986)' kan niet worden vastgesteld.
ECDSA-sleutelvingerafdruk is SHA256:YYOj54aEJvIle4D2osDiEhuS0NEDImPTiMhHGgDqQFk.
Weet u zeker dat u door wilt gaan met verbinden (ja/nee)? Ja

Als u dit voor de eerste keer gebruikt, krijgt u zo'n antwoord en moet u ja typen en vervolgens op enter drukken

/usr/bin/ssh-copy-id: INFO: probeert in te loggen met de nieuwe sleutel(s),
om al geïnstalleerde bestanden eruit te filteren
/usr/bin/ssh-copy-id: INFO: 1 sleutel(s) moeten nog worden geïnstalleerd -- als u daarom wordt gevraagd
nu is het om de nieuwe sleutels te installeren
[email protected]'s wachtwoord:

Voer het wachtwoord in en druk vervolgens op enter.

Aantal sleutel(s) toegevoegd: 1

Probeer nu in te loggen op de machine, met: “ssh -p '1986"[email protected]'”
en controleer of het werkt zoals verwacht.

Hierna kunt u inloggen op de server zonder wachtwoord. Zodra wachtwoordloze authenticatie goed werkt, kunt u de wachtwoordauthenticatie uitschakelen, zodat u ssh-toegang kunt vergrendelen met alleen ssh-sleutels

2.2 De ssh-sleutel kopiëren met de normale ssh-gebruiker/pas handmatig

Als je op de een of andere manier niet in staat bent om dat bovenstaande commando te laten werken, zal ik de stappen toevoegen zodat je de ssh-sleutel en het wachtwoord minder auth kunt kopiëren van je machine naar je server.

Hiervoor moeten we de inhoud van uw id_rsa . handmatig toevoegen.pub-bestand naar de /root/.ssh/authorized_keys bestand op uw doelcomputer.  Als u de sleutel naar de rootgebruiker gaat kopiëren, is de locatie: /wortel/.ssh/authorized_keys .

Vanaf stap 1: je hebt misschien de onderstaande regel gezien:

Uw openbare sleutel is opgeslagen in /wortel/.ssh/id_rsa.kroeg.

Dit zegt dat de openbare sleutel die u naar de externe server moet kopiëren zich in het bovenstaande bestand bevindt. U moet dus de inhoud van dit bestand kopiëren en ze vervolgens kopiëren of plakken in de geautoriseerde_sleutels van de externe server

Dus doe de onderstaande stappen

Onderstaande opdracht geeft u de te kopiëren sleutel:

[e-mail beveiligd]$ cat /root/.ssh/id_rsa.kroeg
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCqql6MzstZYh1TmWWv11q5O3pISj2ZFl9Hg
H1JLknLLx44+tXfJ7mIrKNxOOwxIxvcBF8PXSYvobFYEZjGIVCEAjrUzLiIxbyCoxVyle7Q+bqgZ
8SeeM8wzytsY+dVGcBxF6N4JS+zVk5eMcV385gG3Y6ON3EG112n6d+SMXY0OEBIcO6x+PnUS
GhrSgpBgX7Ks1r7xqFa7heJLLt2wWwkARptX7udSq05paBhcpB0pHtA1Rfz3K2B+ZVIpSDfki9UV
KzT8JUmwW6NNzSgxUfQHGwnW7kj4jp4AT0VZk3ADw497M2G/12N0PPB5CnhHf7ovgy6nL1ik
rygTKRFmNZISvAcywB9GVqNAVE+ZHDSCuURNsAInVzgYo9xgJDW8wUw2o8U77+xiFxgI5QSZ
X3Iq7YLMgeksaO4rBJEa54k8m5wEiEE1nUhLuJ0X/vh2xPff6SQ1BL/zkOhvJCACK6Vb15mDOeCS
q54Cr7kvS46itMosi/uS66+PujOO+xt/2FWYepz6ZlN70bRly57Q06J+ZJoc9FfBCbCyYH7U/ASsmY0
95ywPsBo1XQ9PqhnN1/YOorJ068foQDNVpm146mUpILVxmq41Cj55YKHEazXGsdBIbXWhcrRf4G
2fJLRcGUr9q8/lERo9oxRm5JFX6TCmj6kmiFqv+Ow9gI0x8GvaQ== root@Bron

Log in op de externe server waarnaar u deze bovenstaande sleutel moet kopiëren en zorg ervoor dat u dezelfde gebruiker gebruikt waarnaar u de ssh-sleutel moet kopiëren. Als u directe root-toegang nodig heeft, kopieert u de sleutel rechtstreeks naar /root/.ssh/ sectie

Een map maken .ssh als het niet bestaat

Om te controleren of dat bestaat en zo niet, maak het dan aan met behulp van de onderstaande opdrachten:

[e-mail beveiligd]:$ ls -l /root/.ssh

Als de map er niet is, maak deze dan aan met de onderstaande opdracht:

[email protected]$ mkdir -p /root/.ssh
[e-mail beveiligd]$ raak /root/ aan.ssh/authorized_keys
[e-mail beveiligd]:$ echo "ssh-rsa"
AAAAB3NzaC1yc2EAAAADAQABAAACAQCqql6MzstZYh1TmWWv11q5O3pISj2ZFl9HgH1JLknLLx44+tXfJ7mIrKNxOOwxI
xvcBF8PXSYvobFYEZjGIVCEAjrUzLiIxbyCoxVyle7Q+bqgZ8SeeM8wzytsY+dVGcBxF6N4JS+zVk5eMcV385gG3Y6ON3
EG112n6d+SMXY0OEBIcO6x+PnUSGHrSgpBgX7Ks1r7xqFa7heJLLt2wWwkARptX7udSq05paBhcpB0pHtA1Rfz3K2B+ZV
IpSDfki9UVKzT8JUmwW6NNzSgxUfQHGwnW7kj4jp4AT0VZk3ADw497M2G/12N0PPB5CnhHf7ovgy6nL1ikrygTKRFmNZI
SvAcywB9GVqNAVE+ZHDSCuURNsAInVzgYo9xgJDW8wUw2o8U77+xiFxgI5QSZX3Iq7YLMgeksaO4rBJEa54k8m5wEiEE1
nUhLuJ0X/vh2xPff6SQ1BL/zkOhvJCACK6Vb15mDOeCSq54Cr7kvS46itMosi/uS66+PujOO+xt/2FWYepz6ZlN70bRly
57Q06J+ZJoc9FfBCbCyYH7U/ASsmY095ywPsBo1XQ9PqhnN1/YOorJ068foQDNVpm146mUpILVxmq41Cj55YKHEazXGsd
BIbXWhcrRf4G2fJLRcGUr9q8/lERo9oxRm5JFX6TCmj6kmiFqv+Ow9gI0x8GvaQ==root@Bron“ >>
/wortel/.ssh/authorized_keys

Zorg ervoor dat de toestemming van de map correct is

chmod -R go= /root/.ssh/

Probeer hierna in te loggen op de server vanaf een nieuwe terminal en zorg ervoor dat keyless auth werkt zoals verwacht.  Schakel pas dan wachtwoordverificatie uit in de ssh-configuratie.

OPMERKING: Zorg ervoor dat u zich naar behoefte kunt aanmelden bij de server (ofwel rechtstreeks vanaf uw computer, of u kunt inloggen bij een andere gebruiker op de externe server en handmatig overschakelen naar root vanaf dat account met su of sudo ) en dan alleen schakel wachtwoord uit, anders bestaat de kans dat root-gebruikers worden vergrendeld.

Als je iets nodig hebt, kun je altijd contact met me opnemen voor hulp en je opmerkingen delen.

Hoe de linker- en rechtermuisknop op Windows 10 pc te veranderen
Het is nogal een norm dat alle computermuisapparaten ergonomisch zijn ontworpen voor rechtshandige gebruikers. Maar er zijn muisapparaten beschikbaar ...
Emuleer muisklikken door te zweven met Clickless Mouse in Windows 10
Het gebruik van een muis of toetsenbord in de verkeerde houding of overmatig gebruik kan leiden tot veel gezondheidsproblemen, waaronder spanning, car...
Voeg muisbewegingen toe aan Windows 10 met deze gratis tools
In de afgelopen jaren zijn computers en besturingssystemen sterk geëvolueerd. Er was een tijd dat gebruikers opdrachten moesten gebruiken om door best...