SSH Port Forwarding su Linux

SSH Port Forwarding su Linux
L'inoltro delle porte SSH viene utilizzata per inoltrare le porte tra una macchina Linux locale e remota utilizzando il protocollo SSH. Viene utilizzato principalmente per crittografare le connessioni a diverse applicazioni. Anche se quell'applicazione non supporta la crittografia SSL, l'inoltro delle porte SSH può creare una connessione sicura. Puoi persino utilizzare il trasferimento di porte per esporre una macchina a Internet senza un indirizzo IP instradabile su Internet, in modo da poterlo accedervi in ​​remoto e in modo sicuro. Ci sono molti altri usi dell'accordatura delle porte SSH.

Esistono principalmente due tipi di inoltro della porta SSH. Forwarding di porte locali e port forwarding remoto.

In questo articolo ti mostrerò come eseguire l'inoltro di porte su Linux. Per seguire questo articolo, dovrai installare utilità SSH sul tuo computer Linux. Ti mostrerò come farlo, non preoccuparti. Iniziamo.

Installazione di utility SSH su Red Hat Enterprise Linux (RHEL) 7 e CentOS 7

Su RHEL 7 e CentOS 7 è possibile installare SSH Utilities con il seguente comando:

$ sudo yum installa opensssh-cliens opensssh-server

Premere y e poi premere continuare.

Le utility SSH dovrebbero essere installate.

Installazione di utility SSH su Ubuntu, Debian e altre distribuzione basata su Ubuntu/Debian

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

$ sudo apt-get Installa OpenSsh-Client OpenSsh-Server

Ora premi y e poi premere continuare.

Le utility SSH dovrebbero essere installate.

Installazione di utility SSH su Arch Linux

Se sei su Arch Linux, esegui il seguente comando per installare utilità SSH:

$ sudo pacman -sy opensssh

Ora premi y e poi premere .

Le utility 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 avvia sshd

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

$ sudo systemctl abilita sshd

Port Forwarding locale

L'inoltro della porta 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. Naturalmente se sei connesso alla stessa rete del server Server1, Quindi è possibile digitare l'indirizzo IP nel browser e connetterti Server1 dal tuo computer. Ma cosa succede se si desidera accederlo come se il servizio è in esecuzione sul tuo computer su una porta? Bene, questo è quello 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) sulla 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 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 seguente.

Fordazione a portata remota

L'inoltro della porta remoto sta trasmettendo una porta di un server/computer locale a un server remoto. Quindi, anche se il 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 telecomando (come VPS) a cui è possibile accedere da Internet e eseguire il trasferimento di porta remoto con esso. Non ho un VPS. Supponiamo solo 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 Gatewayports come contrassegnato nello screenshot seguente.

Ora il rompere e impostalo come contrassegnato nello screenshot seguente.

Ora premi + X e poi premere y e poi premere Per salvare il file.

Ora riavvia il server ssh di Server1 con il seguente comando:

$ sudo systemctl riavvio sshd

Sul mio computer locale, un server web è in esecuzione 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 a porta 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 premere .

Digita la password del 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.

È così che esegui l'inoltro della porta SSH su Linux. Grazie per aver letto questo articolo.