Come controllare il pc da remoto con SSH [GUIDA]
Sommario:
- Prerequisiti
- Posizione del file di configurazione SSH
- Struttura e schemi dei file di configurazione SSH
- Esempio di file di configurazione SSH
- Esempio di file di configurazione SSH condiviso
- Sostituisci opzione file di configurazione SSH
- Conclusione
Un'opzione sarebbe quella di creare un alias bash per ogni connessione al server remoto. Tuttavia, esiste un'altra soluzione, molto migliore e più semplice a questo problema. OpenSSH consente di impostare un file di configurazione per utente in cui è possibile memorizzare diverse opzioni SSH per ogni macchina remota a cui ci si connette.
Questa guida illustra le basi del file di configurazione del client SSH e spiega alcune delle opzioni di configurazione più comuni.
Prerequisiti
Supponiamo che tu stia utilizzando un sistema Linux o macOS con il client OpenSSH installato.
Posizione del file di configurazione SSH
Il file di configurazione sul lato client di OpenSSH è chiamato
config
ed è archiviato nella directory
.ssh
nella home directory dell'utente.
La directory
~/.ssh
viene creata automaticamente quando l'utente esegue il comando
ssh
per la prima volta. Se la directory non esiste sul tuo sistema, creala usando il comando seguente:
mkdir -p ~/.ssh && chmod 700 ~/.ssh
Per impostazione predefinita, il file di configurazione SSH potrebbe non esistere, pertanto potrebbe essere necessario crearlo utilizzando il comando touch:
touch ~/.ssh/config
Questo file deve essere leggibile e scrivibile solo dall'utente e non accessibile da altri:
Struttura e schemi dei file di configurazione SSH
Il file di configurazione SSH ha la seguente struttura:
Host hostname1 SSH_OPTION value SSH_OPTION value Host hostname2 SSH_OPTION value Host * SSH_OPTION value
Il contenuto del file di configurazione del client SSH è organizzato in stanze (sezioni). Ogni stanza inizia con la direttiva
Host
e contiene opzioni SSH specifiche che vengono utilizzate quando si stabilisce una connessione con il server SSH remoto.
Il rientro non è necessario ma è consigliato poiché semplifica la lettura del file.
La direttiva
Host
può contenere un pattern o un elenco di pattern separato da spazi bianchi. Ogni modello può contenere zero o più caratteri non bianchi o uno dei seguenti identificatori di modello:
-
*
- Corrisponde a zero o più caratteri. Ad esempio,Host *
corrisponde a tutti gli host, mentre192.168.0.*
Corrisponde agli host nella sottorete192.168.0.0/24
.?
- Abbina esattamente un personaggio. Il modello,Host 10.10.0.?
corrisponde a tutti gli host in10.10.0.
gamma.!
- Se utilizzato all'inizio di un modello, annulla la corrispondenza. Ad esempio, l'Host 10.10.0.* !10.10.0.5
corrisponde a qualsiasi host nella sottorete10.10.0.5
tranne10.10.0.5
.
Il client SSH legge la stanza del file di configurazione in base alla stanza e, se più di un modello corrisponde, le opzioni della prima stanza corrispondente hanno la precedenza. Pertanto, all'inizio del file devono essere fornite più dichiarazioni specifiche dell'host e sostituzioni più generali alla fine del file.
Puoi trovare un elenco completo delle opzioni ssh disponibili digitando
man ssh_config
nel tuo terminale o visitando la pagina man ssh_config.
Il file di configurazione SSH viene letto anche da altri programmi come
scp
,
sftp
e
rsync
.
Esempio di file di configurazione SSH
Ora che abbiamo coperto la base del file di configurazione SSH, diamo un'occhiata al seguente esempio.
In genere, quando ci si connette a un server remoto tramite SSH, è necessario specificare il nome utente remoto, il nome host e la porta. Ad esempio, per accedere come utente di nome
john
a un host chiamato
dev.example.com
sulla porta
2322
dalla riga di comando, digitare:
ssh [email protected] -p 2322
Per connettersi al server utilizzando le stesse opzioni fornite nel comando precedente semplicemente digitando
ssh dev
, inserire le seguenti righe nel file
"~/.ssh/config
:
Host dev HostName dev.example.com User john Port 2322
Ora quando si digita
ssh dev
, il client ssh leggerà il file di configurazione e utilizzerà i dettagli di connessione specificati per l'host
dev
:
Esempio di file di configurazione SSH condiviso
Questo esempio fornisce informazioni più dettagliate sui modelli host e sulla precedenza delle opzioni.
Prendiamo il seguente file di esempio:
Host targaryen HostName 192.168.1.10 User daenerys Port 7654 IdentityFile ~/.ssh/targaryen.key Host tyrell HostName 192.168.10.20 Host martell HostName 192.168.10.50 Host *ell user oberyn Host * !martell LogLevel INFO Host * User root Compression yes
-
Quando si digita
ssh targaryen
, il client ssh legge il file e applica le opzioni dalla prima corrispondenza, ovveroHost targaryen
. Quindi controlla le stanze successive una ad una per un modello corrispondente. Il prossimo corrispondente èHost * !martell
(che significa tutti gli host trannemartell
) e applicherà l'opzione di connessione da questa stanza. Anche l'ultima definizioneHost *
corrisponde, ma il client ssh accetterà solo l'opzioneCompression
perché l'opzioneUser
è già definita nella stanzaHost targaryen
.L'elenco completo delle opzioni utilizzate quando si digita
ssh targaryen
è il seguente:HostName 192.168.1.10 User daenerys Port 7654 IdentityFile ~/.ssh/targaryen.key LogLevel INFO Compression yes
Quando si esegue
ssh tyrell
i pattern host corrispondenti sono:Host tyrell
,Host *ell
,Host * !martell
eHost *
. Le opzioni utilizzate in questo caso sono:HostName 192.168.10.20 User oberyn LogLevel INFO Compression yes
HostName 192.168.10.50 User oberyn Compression yes
Per tutte le altre connessioni, il client ssh utilizzerà le opzioni specificate nelle sezioni
Host * !martell
eHost *
.
Sostituisci opzione file di configurazione SSH
Il client ssh legge la sua configurazione nel seguente ordine di precedenza:
- Opzioni specificate dalla riga di comando. Opzioni definite in
~/.ssh/config
Opzioni definite in/etc/ssh/ssh_config
.
Host dev HostName dev.example.com User john Port 2322
e vuoi usare tutte le altre opzioni ma per connetterti come utente
root
anziché
john
semplicemente specifica l'utente sulla riga di comando:
ssh -o "User=root" dev
L'opzione
-F
(
configfile
) consente di specificare un file di configurazione alternativo per utente.
Per dire al client
ssh
di ignorare tutte le opzioni specificate nel file di configurazione ssh, usare:
ssh -F /dev/null [email protected]
Conclusione
Ti abbiamo mostrato come configurare il tuo file di configurazione ssh dell'utente. È inoltre possibile impostare un'autenticazione basata su chiave SSH e connettersi ai server Linux senza immettere una password.
Per impostazione predefinita, SSH è in ascolto sulla porta 22. La modifica della porta SSH predefinita aggiunge un ulteriore livello di sicurezza al server riducendo il rischio di attacchi automatici.
terminale sshConverti file Ps1 in file Exe utilizzando software gratuito o strumento online

Ps1 To Exe è un software gratuito che consente di convertire facilmente lo script PS1 in un file EXE. Questo post copre anche uno strumento gratuito per il convertitore di Ps1 To Exe.
Quali programmi e file saranno interessati dopo Ripristino configurazione di sistema

Il sistema ripristinerà o cancellerà i miei file o documenti personali ? Quali programmi, i driver saranno interessati dopo aver effettuato un ripristino del sistema? Modifiche che avverranno dopo un effetto di ripristino del sistema.
Rischi dell`utilizzo del file di configurazione automatica del proxy (PAC) - Furto di identità e altro

Questo post spiega minacce relative ai file Proxy Auto Config PAC e come evitare il reindirizzamento dannoso manualmente o tramite Phrozensoft Auto Config Risk Protector.