Installer oracle 11 express sur linux

Oracle_logo

Voici les étapes pour pouvoir installer Oracle 11 express sur une machine Linux.

Prérequis

Sous Linux, Oracle est conçu pour s'installer sur les distributions Red Hat.

Il est possible de l'installer sur un autre type de distribution en transcodant les fichiers d'installation dans le format du Linux souhaité.

Pour simplifier, on utilise une machine virtuelle avec un CentOs 6 installé (la version publique de Red Hat).

La première étape est de s'assurer que les paquets suivants soient installés :

sudo yum install libaio bc flex

 

La seconde étape est de récupérer les fichiers d'installation ici

Routage dynamique avec OSPF sous Linux Debian

Le routage dans un réseau informatique consiste à choisir le chemin que les données doivent emprunter pour atteindre leur destination. Dans le routage statique, cette opération est effectuée par les administrateurs réseaux qui indiquent les routes disponibles sur chaque routeur. Dans les protocoles de routage dynamique, comme OSPF, ce sont les routeurs qui échangent ces routes entre eux et qui calculent le meilleur chemin pour atteindre une destination.

Les groupes de contrôle

Pour réduire les coûts de production d'une infrastructure informatique, la virtualisation est une pratique couramment utilisée. Le principe consiste à avoir un gros serveur physique sur lequel nous déployons plusieurs systèmes d'exploitation isolés les uns des autres. De cette façon, la consommation énergétique est répartie entre toutes les applications, qui du coup, est unitairement très faible en comparaison avec ce qu'il faudrait pour les alimenter sur des hôtes distincts.

Bien que cette technique permette déjà de sauvegarder pas mal de ressources, un nouveau procédé a commencé à émerger cette dernière décennie : la conteneurisation.

Terminator, la galère avec les terminaux est terminée !

Si vous avez l'habitude de développer sous GNU/Linux, alors vous passez certainement une bonne partie de votre temps à pianoter dans un terminal - ou même dans plusieurs terminaux simultanément.

Or ce n'est pas toujours pratique de switcher d'une console à une autre lorsqu'on en a plusieurs d'ouverts (D'ailleurs, lancer plusieurs consoles n'est pas très économique en terme de ressources pour la machine).

Autrement, il est toujours possible d'avoir plusieurs onglets dans une même fenêtre de terminal. Mais alors impossible de toutes les visualiser en même temps... On se retrouve bien embêté lorsque l'on doit par exemple, lancer un script en visualisant des fichiers de logs...

Mais il y a une solution: Terminator, vous connaissez ?

Cryptographie en java 2/3 : Mise en oeuvre sous linux avec openssl

Création et utilisation de mes clés

Création de la clé publique et de la clé privée

Rien de tel que la ligne de commande pour mieux comprendre comment tout s'articule.

Voici la commande la plus basique pour créer une clé. Il y a de nombreuses options, notamment pour modifier la taille de la clé et donc augmenter la sécurité.

 openssl genrsa -out macle 

J'obtiens un fichier "macle" qui contient les informations suivantes :

 -----BEGIN RSA PRIVATE KEY----- MIIBOwIBAAJBAKXu5nR7bqwMw2YKOs6VGBn1+WIi/rR5Rxk+VFc7dBhKtZ6usUSy YdgzeRjHcMyulwvZzxkpIZ1ixBvNKAZEV60CAwEAAQJASqcx3aQOxa80VfsyO/EO F9f3a/SMnUuW9j95mIlyEN8KXcshx2xI3uz7qPi9Th9SIv/6eoaTQcGu2Ynxb+3I LQIhANGquiLFVCYsmPn7erd6gq14Is1+SgBE/hxTeLBL5ee/AiEAypoSKtGoviN9 t9HJGvSfQ6dnz2PwDdm3v8vLx/r4+5MCIQC7A2Vzjj84rZ7lmwIilgvpXrbsRDEN fHyMF4gW+BvhUQIhAKbZg6SnzWPpLpu3tPryAkdhEmkFUKjXaDAX0db7pRjpAiBp rOD5SA3Wq/GDzB0w9ffhXgKw+8rpkMW8/VkECEuKVg== -----END RSA PRIVATE KEY----- 

C'est sous cette forme que se présente une clé privée la plupart du temps.

Une fois que j'ai obtenu ma clé privée, il me faut extraire ma clé publique pour pouvoir l'envoyer à mes correspondants :

 openssl rsa -in macle -pubout -out macle.pub 

A nouveau je n'utilise aucune option de manière à avoir la commande la plus simple possible, j'obtiens ainsi le fichier "macle.pub" suivant :

 -----BEGIN PUBLIC KEY----- MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKXu5nR7bqwMw2YKOs6VGBn1+WIi/rR5 Rxk+VFc7dBhKtZ6usUSyYdgzeRjHcMyulwvZzxkpIZ1ixBvNKAZEV60CAwEAAQ== -----END PUBLIC KEY----- 

C'est ce fichier que j'envoie à mes correspondants.

Signature et vérification de la signature

Déjà il me faut un fichier à signer. Si vous n'en avez pas un sous la main, la commande suivante devrait vous dépanner :

 echo "Bonjour tout le monde" > clair.txt 

J'utilise la sous-commande dgst pour signer le fichier "clair.txt" à l'aide de ma clé privée "macle" :

 openssl dgst -sign macle clair.txt > clair.sig 

J'envoie ensuite à mon correspondant le fichier original et le fichier de signature. Il utilisera alors ma clé publique "macle.pub" pour vérifier ma signature. Ce qui est vraiment vérifié, c'est à la fois que le fichier clair.sig à bien été généré avec ma clé privée et également que le fichier clair.txt n'a pas été modifié depuis la signature.

openssl dgst -verify macle.pub -signature clair.sig clair.txt

Si tout est correct, la commande répond "Verified OK". Si le fichier original ou la signature a été modifiée, on obtient "Verification Failure".

Cryptage et decryptage d'un fichier

Pour crypter un fichier à l'aide de la clé publique :

 openssl rsautl -encrypt -pubin -inkey macle.pub -in clair.txt -out crypte.enc 

Le fichier crypte.enc n'est pas un fichier texte. Il est obligatoire de posséder la clé privée pour décrypter :

 openssl rsautl -decrypt -inkey macle -in crypte.enc -out decrypte.dec 

On obtient bien deux fichiers identiques : decrypte.dec = clair.txt !

Gestion des certificats

Pour me relier à ma clé publique, Il faut que je demande à une autorité de certification de ... certifier ma clé publique et de la lier à mes informations personnelles. Pour cela je dois générer une demande de certificat en utilisant ma clé privée :

 openssl req -new -key macle > macle.csr 

Pour créer ma demande, je dois répondre à quelques questions :

 Country Name (2 letter code) [AU]:FR State or Province Name (full name) [Some-State]:ILE-DE-FRANCE Locality Name (eg, city) []:PARIS Organization Name (eg, company) [Internet Widgits Pty Ltd]:NETAPSYS Organizational Unit Name (eg, section) []:POLE JAVA Common Name (e.g. server FQDN or YOUR name) []:netapsys.com Email Address []:contact@netapsys.com Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []:monpassword An optional company name []:MA COMPAGNIE 

J'envoie ensuite ce fichier à l'autorité de certification.

Pour les besoins du test, nous allons personnifier l'autorité de certification et ainsi signer nous même notre certificat. Evidemment ce certificat ne sera pas automatiquement accepté par les logiciels mais il restera utilisable la plupart du temps en créant une exception dans le logiciel. On parle de certificat auto-signé.

Je crée donc la clé de l'autorité de certification, puis le certificat :

 openssl genrsa -out ca openssl req -new -x509 -days 365 -key ca > ca.crt 

On remplit nos propres informations :

 Country Name (2 letter code) [AU]:FR State or Province Name (full name) [Some-State]:ILE-DE-FRANCe Locality Name (eg, city) []:PARIS Organization Name (eg, company) [Internet Widgits Pty Ltd]:CERTIF NETAPSYS Organizational Unit Name (eg, section) []:CERTIFICATION Common Name (e.g. server FQDN or YOUR name) []:certif-netapsys.com Email Address []:certif@netapsys.com 

On peut maintenant valider la demande de certificat avec la cle privée de notre autorité de certification.

 openssl x509 -req -in macle.csr -out macle.crt -CA ca.crt -CAkey ca -CAcreateserial -CAserial ca.srl 

Le fichier macle.crt contient notre certificat, que nous allons pouvoir intégrer dans notre Keystore dans une troisième partie consacrée plus spécifiquement à JAVA.

Créer des tunnels SSH

L'objectif de ce billet est d'apprendre à créer des tunnels SSH.

Cet article ne vise pas à expliquer ce qu'est un tunnel SSH mais à clarifier la mise en place et l'utilisation de cet outil.

Il existe trois modes de tunnels :

  • le mode local ;
  • le mode distant ;
  • le mode dynamique (basé sur l'utilisation d'un serveur SOCKS).

Ce billet traitera des deux premiers. Pour chaque mode, nous étudierons deux cas.

Et pour chaque cas, il sera expliqué comment créer des tunnels, dans un premier temps en ligne de commandes (ex : sur Linux), et dans un second à l'aide de Putty (ex: sur Windows).

Configuration d’un serveur SMTP de test

Tester l'envoi de mail peut parfois se révéler pénible et potentiellement dangereux. Une solution consiste à modifier systématiquement l'adresse des destinataires, malheureusement un oubli est vite arrivé. Une autre solution est l'utilisation en test et en pré-production d'une librairie qui n'envoie pas les mails mais il devient alors impossible de vérifier que les mails envoyés son corrects.

Pour sécuriser ces envois, il est possible de configurer un serveur SMTP pour qu'il redirige tous les e-mails vers une boîte locale. Cela permettra de configurer les applications de test ou de pré-production de manière très simple : En changeant simplement l'adresse du serveur SMTP utilisé aucun mail de test ne partira chez un client. Ce système permet aussi d'accéder aux e-mails comme si on en était le destinataire.

Pour cela j'aurai besoin d'installer un serveur postfix et un serveur courier-imap. L'installation se fera sur une machine ubuntu mais la configuration de postfix est évidemment valable sur n'importe quelle distribution linux.

Installation du serveur postfix

pour installer le serveur postfix j'utilise la commande suivante

sudo aptitude install postfix

ou

sudo apt-get install postfix

selon vos petites habitudes...

Le système propose différentes options de configuration, je choisis "Pas de configuration".

Je crée le fichier [/etc/postfix/main.cf] avec seulement trois petites lignes.

 # See /usr/share/postfix/main.cf.dist for a commented, more complete version default_transport = local luser_relay= dev home_mailbox = Maildir/ 

La première ligne indique que le serveur livre par défaut les mails en local. La deuxième ligne précise que les mails seront déposés sur le compte de l'utilisateur "dev". Il s'agit de l'utilisateur linux. La troisième ligne définit le répertoire dans lequel Postfix stockera les mails.

Test du serveur postfix

Pour tester notre nouveau serveur, le plus simple est d'utiliser la commande "mail". On évite ainsi de devoir configurer exprès un logiciel de mail. Par défaut la commande mail utilise "localhost" comme serveur smtp.

Si la commande mail n'est pas installée :

sudo aptitude install mailutils

puis on envoie un mail avec la commande suivante :

echo "Message de test" | mail test@test.com -s "Test `date`"

On vérifie dans le répertoire [/home/dev/Maildir/new/] la présence d'un fichier. Afficher ce fichier devrait donner à peu près cela :

more Maildir/new/1318834019.V805I1ef58M800270.net26p

 Return-Path: <utilisateur[[@net26p.localdomain]]> X-Original-To: test@test.com Delivered-To: test@test.com Received: by net26p.localdomain (Postfix, from userid 1000) 	id C25C7EE2D; Mon, 17 Oct 2011 08:46:59 +0200 (CEST) **Subject: Test lundi 17 octobre 2011, 08:46:59 (UTC+0200)** To: <test@test.com> X-Mailer: mail (GNU Mailutils 2.1) Message-Id: <20111017064659.C25C7EE2D@net26p.localdomain> Date: Mon, 17 Oct 2011 08:46:59 +0200 (CEST) From: Utilisateur[[@net26p.localdomain]] (Nom Utilisateur) **Message de test** 

Installation du serveur courier-imap

Cette partie est facultative mais vous permettra d'autoriser l'accès aux mails de tests à toutes les personnes que vous souhaitez.

Là encore rien de bien compliqué :

sudo aptitude install courier-imap

La configuration par défaut permet de l'utiliser

Test du serveur courier-imap

Dans mon logiciel de mail préféré, je configure un serveur IMAP avec l'adresse IP de mon nouveau serveur, les identifiants de l'utilisateur "dev" et je peux lire les messages. L'adresse de destination est bien la véritable adresse donc cela me permet de vérifier à qui le mail aurait du être envoyé.