Ik heb mijn publieke / private sleutel ingesteld, maar ik weet niet waar deze naartoe moet. Moeten beide bestanden in voor mijn gebruiker?
Antwoord
De privésleutel blijft thuis. De openbare sleutel reist:
- Plaats uw privésleutel in
~/.ssh(lokale host). Meestal is deze~/.ssh/id_rsa. - Plaats uw openbare sleutel in
~/.ssh/authorized_keys(externe host).
Terwijl de eerste stap meestal automatisch wordt uitgevoerd wanneer u de sleutel, kan de tweede worden bereikt door:
$ ssh-copy-id ~/.ssh/id_rsa.pub user@remotehost
Als u een resterende configuratie heeft met betrekking tot de externe host, kunt u hier problemen mee krijgen (authenticatie mislukt , of “te veel authenticatiefouten” ). Om van dit probleem af te komen, kunt u ssh-copy-id dwingen wachtwoordauthenticatie te gebruiken met:
$ ssh-copy-id -o"PubkeyAuthentication no" ~/.ssh/id_rsa.pub user@remotehost
Natuurlijk, o Als uw sleutels correct zijn geplaatst, is er geen wachtwoord meer nodig:
$ ssh user@remotehost
Misschien wilt u ook een SSH-configuratie toevoegen in ~/.ssh/config om het nog eenvoudiger te maken:
Host [custom name for the remote machine] Hostname [remote hostname or IP] User [remote username] IdentityFile /home/[your local user]/.ssh/id_rsa
Dankzij dit kunt u gewoon het volgende typen om in te loggen op de externe host:
$ ssh [custom name for the remote machine]
Bewerken: als beide machines (lokaal en extern) hetzelfde zijn, kunt u de procedure vereenvoudigen met:
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
Dit zal uw publieke sleutel toevoegen aan het authorized_keys bestand. Natuurlijk is een andere manier om als iemand anders in te loggen op uw lokale computer:
$ su [another user]
Dit bespaart u de SSH-transactie waar u deze misschien niet nodig heeft . Wachtwoordloos su kan worden ingesteld met sudo :
$ sudo -iu [another user]
ssh localhost?~/.ssh/authorized_keysstaan. Hiervoor kunt u gewooncat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keysgebruiken. Ik heb mijn antwoord aangepast.-itoevoegen aan je eerste commando, zodat het hele commando eruitziet als$ ssh-copy-id -i ~/.ssh/id_rsa.pub user@remotehost.