minor changes
This commit is contained in:
@@ -18,12 +18,12 @@ crittografato per accedere al server o ad un'altra macchina.
|
||||
```bash
|
||||
sudo apt install openssh-server
|
||||
sudo systemctl start ssh
|
||||
sudo systemctl enable ssh #Abilita SSH all'accensione della macchina
|
||||
sudo systemctl enable ssh # Abilita SSH all'accensione della macchina
|
||||
```
|
||||
|
||||
## Creazione chiave SSH
|
||||
|
||||
Il protocollo SSH utilizza una tecnica di crittografia chiamata crittografia asimmetrica. Fondamentalmente, la crittografia asimmetrica è un sistema che usa una coppia di chiavi, cioè la *chiave pubblica* e quella *privata*.
|
||||
Il protocollo SSH utilizza una tecnica di crittografia chiamata `crittografia asimmetrica`. Fondamentalmente, la crittografia asimmetrica è un sistema che usa una coppia di chiavi, cioè la *chiave pubblica* e quella *privata*.
|
||||
|
||||
La chiave pubblica può essere condivisa con chiunque, avendo come scopo principale quello di criptare i dati, convertendo il messaggio in un codice segreto. Questa chiave viene solitamente inviata ad altri sistemi, per esempio i server, per criptare i dati prima di inviarli su Internet.
|
||||
|
||||
@@ -50,53 +50,32 @@ ssh-keygen -t ed25519 -C "<commento>" -f /home/user/.ssh/key_name
|
||||
Ecco un esempio:
|
||||
|
||||
```bash
|
||||
dado@WORKSTATION03:~
|
||||
ssh-keygen -t ed25519 -C "dado"
|
||||
ssh-keygen -t ed25519 -C "dado" -f ~/.ssh/key_name
|
||||
Generating public/private ed25519 key pair.
|
||||
Enter file in which to save the key (~/.ssh/id_ed25519): ~/.ssh/<file_name>
|
||||
```
|
||||
|
||||
- <file_name> indica il nome del file in cui sarà salvata la chiave.
|
||||
|
||||
Poi verrà chiesta una *passphrase* da aggiungere alla coppia di chiavi. Questo aggiunge un ulteriore livello di sicurezza se, in qualsiasi momento, il vostro dispositivo viene compromesso. Non è obbligatorio aggiungere una passphrase, ma è sempre raccomandato.
|
||||
Poi verrà chiesta una *passphrase* da aggiungere alla coppia di chiavi. Questo aggiunge un ulteriore livello di sicurezza se, in qualsiasi momento, il vostro dispositivo venisse compromesso. Non è obbligatorio aggiungere una passphrase, ma è sempre raccomandato.
|
||||
|
||||
Questo comando genera due file nella directory selezionata (comunemente ~/.ssh):
|
||||
|
||||
- la chiave pubblica con l’estensione `.pub`;
|
||||
- e quella privata senza estensione.
|
||||
|
||||
La chiave pubblica può essere vista con un semplice comando:
|
||||
## Caricamento della chiave SSH nella macchina remota
|
||||
|
||||
L'output del comando precedente deve essere copiato nel file `.ssh/authorized_keys` presente sulla macchina remota.
|
||||
|
||||
```bash
|
||||
dado@WORKSTATION03:~
|
||||
cat /home/dado/.ssh/<file_name>.pub
|
||||
ssh-copy-id -i ~/.ssh/key_name.pub -p <port_number> <username>@<host>
|
||||
```
|
||||
|
||||
## Caricamento della chiave SSH nella macchina remota (server)
|
||||
|
||||
L'output del comando precedente deve essere copiato nel file **.ssh/authorized_keys** presente sulla macchina remota.
|
||||
|
||||
Per prima cosa, Si accede tramite SSH alla macchina remota:
|
||||
|
||||
```bash
|
||||
ssh user@indirizzo_ip
|
||||
dado@WORKSTATION03:~
|
||||
ssh root@10.21.81.138 -p 1220 (per una porta differente dalla 22)
|
||||
[15:33:25]root@server:~
|
||||
cd .ssh
|
||||
[15:33:31]root@server:~/.ssh
|
||||
echo ssh-ed25519 ******************************************************* dado >> authorized_keys
|
||||
```
|
||||
|
||||
Oppure, se si preferisce, si può utilizzare Nano ovvero Vim. Tramite il comando `cat .ssh/authorized_keys` o `less .ssh/authorized_keys` è possibile vedere la propria chiave nel file di configurazione.
|
||||
|
||||
### Configurazione SSH sulla macchina locale
|
||||
|
||||
Nel file di configurazione locale, va indicato come raggiungere l'host remoto:
|
||||
|
||||
```bash
|
||||
dado@WORKSTATION03:~
|
||||
vim .ssh/config
|
||||
cat .ssh/config
|
||||
|
||||
host <key_name> #il nome della macchina remota alla quale si accederà
|
||||
hostname 10.21.81.138 #indirizzo ip della macchina remota
|
||||
user root
|
||||
@@ -107,61 +86,11 @@ port 22
|
||||
|
||||
### Accedere alla macchina remota
|
||||
|
||||
Per accedere a una macchina server tramite SSH è necessario conoscere l'indirizzo ip di questa macchina e il nome dell'utente. Ciò è possibile scoprirlo con questi semplici comandi:
|
||||
|
||||
```bash
|
||||
hostname -I
|
||||
192.168.0.115
|
||||
|
||||
whoami
|
||||
dado
|
||||
```
|
||||
|
||||
In assenza della chiave, quindi si può sempre accedere in questo modo:
|
||||
|
||||
```bash
|
||||
ssh dado@192.168.0.115
|
||||
```
|
||||
|
||||
Altrimenti, per accedere alla macchina basta digitare:
|
||||
`ssh <key_name>`
|
||||
Ad esempio:
|
||||
|
||||
```bash
|
||||
dado@WORKSTATION03:~
|
||||
ssh mnt-bbb
|
||||
```
|
||||
|
||||
## Aggiungere la Chiave SSH all’Account Git
|
||||
|
||||
Nelle impostazioni del proprio account, aggiungere la propria chiave pubblica nel campo `SSH and GPG keys`.
|
||||
|
||||
Quindi, configurare il file .ssh/config nella macchina locale:
|
||||
|
||||
```bash
|
||||
# host gitea.it/dado
|
||||
# hostname 10.97.57.55
|
||||
user <name>
|
||||
IdentityFile /home/user/.ssh/<file>
|
||||
TCPKeepAlive yes
|
||||
port 22
|
||||
```
|
||||
|
||||
Modificare le impostazioni di `git`:
|
||||
`git config --global --edit`
|
||||
|
||||
## Copiare la chiave pubblica in remoto
|
||||
|
||||
```bash
|
||||
ssh-copy-id -i ~/.ssh/id_rsa.pub -p <port_number> <username>@<host>
|
||||
```
|
||||
Ora, per accedere alla macchina basta digitare: `ssh <key_name>`
|
||||
|
||||
## Riferimenti
|
||||
|
||||
- [https://linuxhint.com/enable-ssh-server-debian/](https://linuxhint.com/enable-ssh-server-debian/)
|
||||
|
||||
- [https://wiki.debian.org/it/SSH](https://wiki.debian.org/it/SSH)
|
||||
|
||||
- [https://docs.github.com/en/authentication/connecting-to-github-with-ssh](https://docs.github.com/en/authentication/connecting-to-github-with-ssh)
|
||||
|
||||
- [https://kinsta.com/it/blog/generare-chiavi-ssh/](https://kinsta.com/it/blog/generare-chiavi-ssh/)
|
||||
- [enable-ssh-server-debian](https://linuxhint.com/enable-ssh-server-debian/)
|
||||
- [SSH](https://wiki.debian.org/it/SSH)
|
||||
- [connecting-to-github-with-ssh](https://docs.github.com/en/authentication/connecting-to-github-with-ssh)
|
||||
- [generare-chiavi-ssh](https://kinsta.com/it/blog/generare-chiavi-ssh/)
|
||||
|
Reference in New Issue
Block a user