blog ID-INFO

IBM i : comment faire fonctionner des repository Open Source tiers sans accès internet ?

C’est tout d’abord pour assurer la sécurité des IBM i (AS/400). Afin de les protéger de potentielles menaces externes et sécuriser les données précieuses contenues sur ces machines au cœur d’un grand nombre de fonctionnalités critiques dans de nombreuses entreprises, ils se trouvent souvent derrière un pare-feu et sont souvent complètement isolé d’internet. 

Or ceci peut être problématique pour les équipes ayant fait le choix de moderniser leur système en prenant avantage du gestionnaire des modules Open Source d’IBM qui permets d’apporter de multiples solutions logicielles importantes du marché tel que PHP, Node ou Python par exemple. L’installation de ceux-ci se fait à travers de repositories se situant sur des serveurs se situant potentiellement à l’autre bout de la planète. 

Certes il est possible de demander aux équipes réseaux d’ouvrir les flux en cas de besoin cependant ceci n’est pas toujours envisageable : Des procédures longues ou très strictes, souvent auprès de prestataires externes, peuvent être un véritable frein pour rapidement ajouter une nouvelle fonctionnalité critique pour l’équipe de développement. De plus l’installation ou la mise à jour de composants Open Source est dans la majorité des cas assez ponctuelle : Il n’y a pas forcément le besoin d’avoir un flux ouvert en permanant. 

Il y a théoriquement la possibilité de cloner le repository sur une machine sur le réseau local. Cette configuration peut être utile si jamais vous avez un nombre conséquent d’IBM i sur lesquels il faudra déployer les solutions. Cependant le maintien d’un tel clone peut être assez lourd pour simplement déployer quelques solutions sur une machine de développement et une production. 

IBM a prévu une solution très simple pour son propre repository : L’option « Tunnelisation SSH » sur l’interface de connexion au gestionnaire des modules Open Source. Un petit bémol par contre est d’y ajouter des repositories tiers comme par exemple le repository du Seiden Group pour installer les nouvelles alternatives PHP sur IBM i. 

Sans connectivité Internet l’ajout du repository échoue directement comme on peut le voir sur la capture suivante:

 

Cet ajout de repository ayant échoué il sera impossible de l’exploiter sur le gestionnaire de modules Open Source. On y retrouvera comme avant uniquement celui d’IBM. 

Pour contourner ce problème il y a une solution très simple. Ouvrez tout simplement l’url du fichier définissant le repository depuis un navigateur et sauvegardez le fichier texte affiché sur votre PC pour ensuite le transférer sur votre IBM i:

 

Une fois le fichier téléchargé sur votre IBM on pourra rejouer l’ajout du repository en SSH en précisant le chemin absolu sur l’IFS de celui-ci :

PATH=/QOpenSys/pkgs/bin:$PATH export PATH yum-config-manager --add-repo /QOpenSys/etc/phprepo/seiden_stable.repo yum repolist yum clean all

 

Comme on peut le voir sur la capture on a bien réussi à ajouter le repository par contre pour le moment l’IBM i n’a toujours pas réussi à joindre celui-ci vu l’absence de connectivité internet. 

C’est maintenant qu’on peut pleinement exploiter l’option « Tunnelisation SSH » d’ACS:

 

On a désormais accès à un repository tiers malgré le fait que l’IBM i n’a pas de connectivité internet:

 

Il reste à noter que naturellement votre PC servira d’intermédiaire pour la récupération des fichiers d’installation et donc la tunnelisation sera uniquement possible si votre PC est capable de joindre les repositories et naturellement le débit sera limité par les capacités de votre machine. Notos-IDInfo recommande fortement d’utiliser également la dernière version d’ACS. 

 

Le PHP CommunityPlus+ du Seiden Group ( https://www.seidengroup.com/install-communityplus-php/ ) est une bonne alternative au Zend Server pour de nombreux cas d’utilisation n’hésitez pas à nous contacter à ce sujet. 

 

Vous avez des questions concernant un sujet autour de l’ IBM i ? Alors contactez-nous au 01 88 32 12 34, ou via le formulaire de contact.

Partager cet article