Remoto in workstation Linux dietro un firewall


8

Diciamo che ho una workstation Linux al lavoro, dietro un firewall. Quindi, anche se potrei avere un server di accesso remoto impostato su di esso (come il server NoMachine NX più eccellente), non posso accedervi da casa.

La mia rete domestica sembra avere un server Linux. È possibile ssh dal lavoro alla macchina Linux domestica e impostare un tunnel in modo che una volta che sono a casa, posso eseguire il client NX, puntarlo sulla mia scatola Linux domestica su una porta come 9000 e farlo avanzare attraverso il tunnel alla porta 22 sulla mia scatola di lavoro Linux? Come lo configurerei?


La tua azienda non fornisce alcun tipo di accesso VPN?
Keith,

Risposte:


8

Dalla macchina al lavoro, crea un tunnel per la tua macchina che esegue ssh a casa:

randolf@workserver:~$ ssh -vvv randolf@myhomeserver -R 44455:localhost:22

Questo inoltrerà la porta remota 44455 dal tuo server di casa alla porta 22 (o qualunque porta ssh stia ascoltando) sulla tua macchina di lavoro.

Da casa, controlla se qualcosa è in ascolto su 44455

randolf@homeserver:~$ netstat -an | grep 44455
tcp        0      0 127.0.0.1:44455         0.0.0.0:*               LISTEN 

Quindi, per connetterti da casa alla tua macchina da lavoro, dal tuo server di casa:

randolf@homeserver:~$ ssh localhost -p 44455
Password: ******

Da lì dovresti essere collegato alla tua macchina di lavoro tramite il tunnel.


Perfetto, esattamente quello che stavo cercando. Quindi posso usare NX per accedere in remoto.
CaptSaltyJack,

Fantastico, felice di aver aiutato!
CJ Travis,

1

Potresti impostare un port forwarding con il tuo firewall, o magari usare uno strumento come "rimbalzo" per reindirizzare le porte se ci sono delle restrizioni su cosa ti è permesso fare con il tuo firewall, ma ecco cosa farei se fossi in te:

Installa l'eccellente software OpenVPN gratuito, open source e userland. Configurare il server di destinazione come client OpenVPN (e configurare infiniti tentativi di connessione) e il server Linux di casa come server OpenVPN. In questo modo, il server di destinazione che esegue il client OpenVPN sarà connesso al tuo server Linux di casa ogni volta che è operativo e connesso a Internet - tramite questa connessione VPN, puoi avere pieno accesso al tuo server di lavoro / destinazione (eseguendo il client OpenVPN) .

  OpenVPN (soluzione VPN gratuita, open source e completa per l'utente)
  http://www.openvpn.net/index.php/open-source.html


Quindi, per essere sicuro di avere questo diritto: la mia scatola Linux domestica esegue un server OpenVPN e la mia scatola Linux al lavoro esegue un client OpenVPN che rimane connesso alla mia VPN domestica Linux? E questo mi permetterà (a casa) di remotare nel mio box di lavoro Linux?
CaptSaltyJack,

@CaptSaltyJack: Sì. Lo scopo di una VPN è estendere la rete a un altro computer o un'altra rete di più computer e le comunicazioni possono andare in entrambe le direzioni. Puoi configurarne uno come server VPN (e probabilmente sarebbe più utile impostare il tuo lavoro come server, ma il modo in cui hai posto la tua domanda mi ha spinto a suggerire altrimenti - non importa davvero in che modo lo fai però). L'IP privato del server OpenVPN sarà 10.8.0.1 (impostazione predefinita) e il primo client OpenVPN sarà 10.8.0.6 (impostazione predefinita): saranno in grado di eseguire il ping / connettersi l'un l'altro.
Randolf Richardson,

@CaptSaltyJack: il server che ha un indirizzo IP statico dovrebbe in realtà essere anche il server OpenVPN (a meno che non abbia un nome host che cambia automaticamente con l'IP).
Randolf Richardson,

Bene, al lavoro, la rete è configurata in modo tale che tutti i computer siano protetti da firewall e al mondo esterno abbiano un IP. Quindi non penso di poter eseguire un server VPN sulla mia macchina di lavoro e connettermi ad esso. Probabilmente dovrei averlo collegato al mio computer di casa.
CaptSaltyJack,

@CaptSaltyJack: Proprio come sospettavo. In entrambi i casi, (qualsiasi lato sia il server OpenVPN), le tue applicazioni (incluso ssh) non conosceranno la differenza.
Randolf Richardson,

1

Come connettersi a un box Linux sulla porta 3389 (RHEL5)

Sfortunatamente, la porta 22 è bloccata da molti firewall e i tunnel possono aprire falle di sicurezza, quindi l'approccio migliore è impostare ssh e NX per l'ascolto sulla porta 3389 invece dello standard 22 che potrebbe confondere la maggior parte degli hacker

Configura OpenBSD per ascoltare la porta 3389

vim /etc/ssh/sshd_config

Port 3389

service sshd restart

Scarica NX Client per Windows sul sito ftp RHEL

wget http://64.34.173.142/download/3.5.0/Windows/nxclient-3.5.0-9.exe

Scarica NX Free Edition per Linux

wget http://64.34.173.142/download/3.5.0/Linux/nxclient-3.5.0-7.i386.rpm
wget http://64.34.173.142/download/3.5.0/Linux/nxnode-3.5.0-9.i386.rpm
wget http://64.34.173.142/download/3.5.0/Linux/FE/nxserver-3.5.0-11.i386.rpm

Come root: installa NX in questo ordine

rpm –ivh nxclient-3.5.0-7.i386.rpm
rpm –ivh nxnode-3.5.0-9.i386.rpm
rpm –ivh nxserver-3.5.0-11.i386.rpm

Configurare NX per la porta 3389

vim /usr/NX/etc /node.cfg
#
# Specify the TCP port where the NX node SSHD daemon is running.
#
SSHDPort = "3389"

vim /usr/NX/etc /server.cfg
#
# Specify the TCP port where the NX server SSHD daemon is running.
#
SSHDPort = "3389"

service nxsensor restart
nxserver --daemon restart
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.