À distance dans un poste de travail Linux derrière un pare-feu

8

Disons que j'ai un poste de travail Linux au travail, derrière un pare-feu. Donc, même si j'ai un serveur d'accès à distance configuré (comme le meilleur serveur NoMachine NX), je ne peux pas y accéder depuis chez moi.

Mon réseau domestique a un serveur Linux. Est-il possible de passer du travail à la machine Linux domestique et de configurer un tunnel de sorte qu'une fois que je suis à la maison, je puisse exécuter le client NX, le pointer vers ma boîte Linux domestique sur un port comme 9000, et l'avoir en avant à travers le tunnel au port 22 sur ma boîte Linux de travail? Comment pourrais-je configurer cela?

CaptSaltyJack
la source
Votre entreprise ne fournit pas une sorte d'accès VPN?
Keith

Réponses:

8

De la machine au travail, créez un tunnel vers votre machine exécutant ssh à la maison:

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

Cela transfèrera le port distant 44455 de votre serveur domestique vers le port 22 (ou quel que soit le port que ssh écoute) sur votre machine de travail.

De chez vous, vérifiez si quelque chose écoute sur 44455

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

Ensuite, pour vous connecter de votre domicile à votre machine de travail, depuis votre serveur domestique:

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

De là, vous devez être connecté à votre machine de travail via votre tunnel.

CJ Travis
la source
Parfait, exactement ce que je cherchais. Ensuite, je peux utiliser NX pour me connecter à distance.
CaptSaltyJack
Génial, heureux d'avoir aidé!
CJ Travis
1

Vous pouvez définir une redirection de port avec votre pare-feu, ou même utiliser un outil comme "rebondir" pour rediriger les ports s'il y a des restrictions sur ce que vous êtes autorisé à faire avec votre pare-feu, mais voici ce que je ferais si j'étais toi:

Installez l'excellent logiciel OpenVPN gratuit et open source. Configurez le serveur cible en tant que client OpenVPN (et configurez des tentatives de connexion infinies) et votre serveur Linux domestique en tant que serveur OpenVPN. De cette façon, le serveur cible exécutant le client OpenVPN sera connecté à votre serveur Linux domestique chaque fois qu'il est opérationnel et connecté à Internet - grâce à cette connexion VPN, vous pouvez avoir un accès complet à votre serveur professionnel / cible (exécutant le client OpenVPN) .

  OpenVPN (solution VPN complète, open source et open source)
  http://www.openvpn.net/index.php/open-source.html

Randolf Richardson
la source
Donc, juste pour m'assurer d'avoir ce droit: ma box Linux domestique exécute un serveur OpenVPN, et ma box Linux au travail exécute un client OpenVPN qui reste connecté à mon VPN Linux domestique? Et cela me permettra (à la maison) de me connecter à distance à ma boîte Linux professionnelle?
CaptSaltyJack
@CaptSaltyJack: Oui. Le but d'un VPN est d'étendre le réseau à un autre ordinateur ou à un autre réseau de plusieurs ordinateurs, et les communications peuvent aller dans les deux sens. Vous pouvez configurer l'un comme serveur VPN (et il serait probablement plus utile de configurer votre travail comme serveur, mais la façon dont vous avez posé votre question m'a incité à suggérer le contraire - peu importe de quelle manière vous le faites cependant). L'adresse IP privée du serveur OpenVPN sera 10.8.0.1 (par défaut), et le premier client OpenVPN sera 10.8.0.6 (par défaut) - ils pourront se ping / se connecter les uns aux autres.
Randolf Richardson
@CaptSaltyJack: Le serveur qui a une adresse IP statique devrait cependant être aussi le serveur OpenVPN (à moins qu'il ait un nom d'hôte qui change automatiquement avec l'IP).
Randolf Richardson
Eh bien, au travail, le réseau est configuré de manière à ce que tous les ordinateurs soient pare-feu et au monde extérieur, ils ont une adresse IP. Je ne pense donc pas pouvoir exécuter un serveur VPN sur ma machine de travail et me connecter à celui-ci. Je devrais probablement le faire connecter à ma machine domestique.
CaptSaltyJack
@CaptSaltyJack: Tout comme je le soupçonnais. Quoi qu'il en soit, vous le configurez (quel que soit le côté du serveur OpenVPN), vos applications (y compris ssh) ne feront pas la différence.
Randolf Richardson
1

Comment se connecter à une box Linux sur le port 3389 (RHEL5)

Malheureusement, le port 22 est bloqué par de nombreux pare-feu et les tunnels peuvent ouvrir des failles de sécurité, la meilleure approche consiste donc à configurer ssh et NX pour écouter sur le port 3389 au lieu du standard 22, ce qui peut dérouter la majorité des pirates

Configurer OpenBSD pour écouter le port 3389

vim /etc/ssh/sshd_config

Port 3389

service sshd restart

Téléchargez NX Client pour Windows sur le site ftp de RHEL

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

Télécharger NX Free Edition pour 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

En tant que root - Installez NX dans cet ordre

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

Configurer NX pour le port 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
George
la source