ssh

SSH Port Forwarding su Linux

SSH Port Forwarding su Linux
Il port forwarding SSH viene utilizzato per inoltrare le porte tra una macchina Linux locale e una remota utilizzando il protocollo SSH. Viene utilizzato principalmente per crittografare le connessioni a diverse applicazioni. Anche se l'applicazione non supporta la crittografia SSL, il port forwarding SSH può creare una connessione sicura. Puoi persino utilizzare il port forwarding per esporre una macchina a Internet senza un indirizzo IP instradabile su Internet, in modo da potervi accedere in remoto e in modo sicuro. Ci sono molti altri usi del port forwarding SSH.

Esistono principalmente due tipi di port forwarding SSH. Port forwarding locale e port forwarding remoto.

In questo articolo ti mostrerò come eseguire il port forwarding su Linux. Per seguire questo articolo, dovrai avere le utilità SSH installate sulla tua macchina Linux. Ti mostrerò come farlo, non preoccuparti. Iniziamo.

Installazione delle utilità SSH su Red Hat Enterprise Linux (RHEL) 7 e CentOS 7

Su RHEL 7 e CentOS 7 è possibile installare le utilità SSH con il seguente comando:

$ sudo yum install openssh-clients openssh-server

stampa e poi premere continuare.

Le utilità SSH dovrebbero essere installate.

Installazione delle utilità SSH su Ubuntu, Debian e altre distribuzioni basate su Ubuntu/Debian

Su Ubuntu, Debian, Linux Mint e altre distribuzioni basate sul sistema operativo Ubuntu/Debian, eseguire il comando seguente per installare le utilità SSH:

$ sudo apt-get install openssh-client openssh-server

Ora premi e poi premere continuare.

Le utilità SSH dovrebbero essere installate.

Installazione delle utilità SSH su Arch Linux

Se utilizzi Arch Linux, esegui il comando seguente per installare le utilità SSH:

$ sudo pacman -Sy openssh

Ora premi e poi premere .

Le utilità SSH dovrebbero essere installate.

Su Arch Linux, il server SSH non viene avviato per impostazione predefinita. Dovrai avviarlo manualmente con il seguente comando:

$ sudo systemctl start sshd

Ora aggiungi il server SSH all'avvio del sistema, in modo che si avvii automaticamente all'avvio del sistema:

$ sudo systemctl abilita sshd

Inoltro alla porta locale

Il port forwarding locale viene utilizzato per inoltrare una porta di un server remoto su un'altra porta di un computer locale. Un esempio ti aiuterà a capire cosa intendo.

Diciamo che hai un server, server1 che ha un indirizzo IP di 192.168.199.153. server1 ha un server web in esecuzione. Ovviamente se sei connesso alla stessa rete del server server1, quindi puoi digitare l'indirizzo IP nel browser e connetterti a server1 dal tuo computer. Ma cosa succede se si desidera accedervi come se il servizio fosse in esecuzione sul computer su una porta?? Bene, questo è ciò che fa il port forwarding locale.

Come puoi vedere nello screenshot qui sotto, sono in grado di accedere al server web su server1 utilizzando il suo indirizzo IP:

Ora esegui il seguente comando dal tuo computer locale per inoltrare la porta 80 (http) alla porta 6900 (diciamo) al tuo computer locale:

$ ssh -L 6900:192.168.199.153:80 localhost

Digitare e poi premere continuare.

Ora digita la password del tuo computer locale e premi .

Sei connesso.

Ora puoi accedere al server web che hai fatto prima come http://localhost:6900 come puoi vedere nello screenshot qui sotto.

Inoltro alla porta remota

Il port forwarding remoto sta inoltrando una porta di un server/computer locale a un server remoto. Quindi, anche se il tuo server/computer locale non ha un indirizzo IP instradabile su Internet, puoi comunque connetterti ad esso utilizzando l'IP del server remoto e la porta inoltrata.

Supponiamo che tu voglia connetterti al server web del tuo computer locale da Internet. Ma non ha un indirizzo IP instradabile su Internet. È possibile utilizzare un server remoto (come VPS) a cui è possibile accedere da Internet ed eseguire il port forwarding remoto con esso. Non ho un VPS. Diamo per scontato server1 è il server remoto.

Prima configurazione server1 server per consentire l'accesso alle porte inoltrate su Internet.

Per farlo, modifica /etc/sshd_config con il seguente comando:

$ sudo nano /etc/sshd_config

Dovresti vedere la seguente finestra.

Scorri verso il basso e trova Porte gateway come indicato nello screenshot qui sotto.

Ora decommentalo e impostalo su come indicato nello screenshot qui sotto.

Ora premi + X e poi premere e poi premere per salvare il file.

Ora riavvia il server SSH di server1 con il seguente comando:

$ sudo systemctl riavvia sshd

Sul mio computer locale è in esecuzione un server web come puoi vedere nello screenshot qui sotto.

Ora puoi eseguire il seguente comando dal computer locale per inoltrare la porta 80 (http) del tuo computer locale da portare 9999 sul server remoto server1 che ha un indirizzo IP 192.168.199.153:

$ ssh -R 9999:localhost:80 192.168.199.153

Digitare e premi .

Digita la password del tuo server remoto server1.

Sei connesso.

Come puoi vedere dallo screenshot qui sotto, sono in grado di connettermi alla porta 9999 sul mio server remoto server1 e accedi al mio server web locale.

Posso anche connettermi al mio server web utilizzando l'indirizzo IP del server remoto server1 e la porta inoltrata 9999 da altri computer sulla mia rete come puoi vedere dallo screenshot qui sotto.

Ecco come si esegue il port forwarding SSH su Linux. Grazie per aver letto questo articolo.

Installa l'ultimo Dolphin Emulator per Gamecube e Wii su Linux
L'emulatore Dolphin ti consente di giocare ai giochi Gamecube e Wii scelti su Personal Computer Linux (PC). Essendo un emulatore di giochi liberament...
Come utilizzare GameConqueror Cheat Engine in Linux
L'articolo copre una guida sull'utilizzo del motore cheat GameConqueror in Linux. Molti utenti che giocano su Windows utilizzano spesso l'applicazione...
I migliori emulatori di console di gioco per Linux
Questo articolo elencherà il popolare software di emulazione della console di gioco disponibile per Linux. L'emulazione è un livello di compatibilità ...