J’ai besoin d’exécuter des sessions Telnet 5250 d’un iSeries vers un autre, sur Internet. Mais SSH d’IBM ne reconnaît pas le protocole 5250. J’aimerais bien utiliser SSL Telnet mais il semble que l’iSeries ne puisse assumer que le rôle serveur, pas celui d’un client. Est-il possible de faire cela sans recourir à des hôtes externes […]
Boîte à outils System iNews : Excuter des sessions Telnet 5250 d’un iSeries vers un autre
J’ai besoin d’exécuter des sessions Telnet 5250 d’un iSeries vers un autre, sur Internet. Mais SSH d’IBM ne reconnaît pas le protocole 5250. J’aimerais bien utiliser SSL Telnet mais il semble que l’iSeries ne puisse assumer que le rôle serveur, pas celui d’un client. Est-il possible de faire cela sans recourir à des hôtes externes ?
Oui, il y a un moyen et il utilise SSH, bien que SSH ne prenne pas en charge directement le protocole TN5250. Vous pouvez établir une connexion 5250 de système à système, parfaitement sûre, sur Internet, en utilisant une fonction SSH appelée port forwarding.
Port forwarding (retransmission de port vous permet de vous connecter à un port TCP local avec votre client Telnet 5250 iSeries (via la commande TELNET), puis envoyer cette connexion par l’intermédiaire d’un tunnel crypté vers l’iSeries distant, où la machine distante voit votre connexion comme venant de la machine distante, et pas de celle sur laquelle vous vous trouvez réellement. Cela peut sembler compliqué à première vue, mais c’est simple en pratique.
La fonction OpenSSH provenant de Portable Utilities for i5/OS d’IBM doit être installée sur les deux machines. Assurez-vous ensuite que le serveur Telnet est actif sur la machine distante et démarrez également le serveur SSHD. Une seule commande sur votre machine locale suffit pour établir un tunnel crypté entre les systèmes :
call pgm(QP2TERM)
parm(‘/QOpenSys/usr/bin/ssh’)
‘-L 8888:127.0.0.1:23’
‘-N’ ‘remotehost’)
Cela crée le tunnel en utilisant le numéro de port TCP local 8888. Rappelons que l’adresse spéciale 127.0.0.1 fait référence à votre ordinateur local. Vous pouvez aussi utiliser le nom symbolique localhost. L’option -N oblige SSH à fonctionner en mode batch plutôt qu’en mode interactif. Vous pouvez à présent vous connecter à l’hôte distant en appliquant telnet sur le port 8888 sur votre système local :
telnet
rmtsys(*intnetadr)
intnetadr(127.0.0.1)
PORT(8888)
Vous pourriez facilement créer un objet CMD pour invoquer cette commande automatiquement. L’un des aspects intéressants de ce genre de connexion est que plusieurs utilisateurs peuvent se connecter sur un seul tunnel SSH. Le tunnel reste actif pendant aussi longtemps que le job batch qui l’exécute reste lui-même actif. Vous pouvez supprimer le tunnel en annulant le job batch ou en mettant fin à la session à partir du côté serveur.
Une connexion tunnel SSL pour 5250 présente un autre avantage : vous n’avez plus besoin d’exposer le service terminal 5250 sur le serveur directement vers Internet. Le pare-feu côté serveur doit simplement autoriser le port 22 SSH et, comme ce port n’est authentifié que par le cryptage, il est beaucoup plus sûr qu’un port Telnet ouvert. Vous avez encore besoin d’un mot de passe puissant, mais vous pourriez aussi ajouter une liste de contrôle d’accès sur le serveur pour n’admettre l’adresse IP que du système hébergeant vos utilisateurs.
Téléchargez cette ressource
Livre blanc Sécurité et Stockage des documents
Découvrez dans ce livre blanc Kyocera les outils logiciels qui permettent une approche holistique et efficace de la collecte, du stockage, de la gestion et de la sécurisation des documents en entreprise.