Happy hacking :-)

petit bloc-notes à usage interne qui peut peut-être servir à d'autres ...

Aller au contenu | Aller au menu | Aller à la recherche

30jan

Gandi Hébergement -- part 3: préparer son serveur Ubuntu - ntp, mail, sec updates

Quelques préparations sont à effectuer afin d'avoir un serveur prêt à accueillir des services évoluées comme HTTP ou DNS. Au menu donc :

  • synchronisation horaire
  • envoi de mails
  • mises à jour de sécurité

Rien de compliqué mais il faut le faire dès le début.

1. Synchronisation horaire :

Cela peut sembler superflu ou trivial mais, par exemple, la moindre opération de corrélation de logs ne peut être efficiente sans cela.

apt-get install ntp

Cette commande va installer un serveur NTP qui va veiller à garder en permanence votre serveur à l'heure.

Extrait de mon fichier /etc/ntp.conf :

# You do need to talk to an NTP server or two (or three).
server 0.fr.pool.ntp.org
server 1.fr.pool.ntp.org
server 2.fr.pool.ntp.org
server 3.fr.pool.ntp.org

Quelques extraits de mes logs pour voir si cela est utile :

Feb 19 10:28:06 happyhacking ntpd[2415]: synchronized to 91.121.10.82, stratum 3
Feb 19 10:28:43 happyhacking ntpd[2415]: synchronized to 88.191.14.223, stratum 2
Feb 19 10:35:03 happyhacking ntpd[2415]: synchronized to 91.121.22.48, stratum 2
Feb 19 10:39:24 happyhacking ntpd[2415]: time reset -2.447818 s
Feb 19 10:44:33 happyhacking ntpd[2415]: synchronized to 88.191.14.223, stratum 2
Feb 19 10:55:13 happyhacking ntpd[2415]: time reset -2.447043 s

Visiblement oui ;-)

2. l'envoi de mail

Le besoin d'envoi de mails depuis le serveur va très vite se faire sentir et je ne parle pas du besoin émis par tout botnet issu d'un hack de votre serveur ! ;-)

En effet, il y a de grandes chances que vous vouliez lancer via Cron un certain nombre de tâches dont vous voudrez récupérer la sortie. Le mail sera alors le moyen naturel de communication.

Pour cela, installons la commande mailx et le serveur SMTP Exim, et via la commande dpkg reconfigurons Exim.

apt-get install mailx exim4-daemon-light
dpkg-reconfigure exim4-config

2 écrans utiles sinon vous pouvez choisir les choix par défaut :

exim4

Là il vous demande de choisir le mode d'envoi de votre serveur. J'ai choisi Internet car le support Gandi m'a précisé qu'il ne mettait pas un relais SMTP Gandi à disposition des serveurs de l'hébergement. Si vous aviez ce type de serveur à disposition, vous valideriez le mode SmartHost.

exim - locla host

Choisir 127.0.0.1 pour ne pas mettre votre serveur de mail Exim à disposition de tout l'internet. Là, uniquement les process locaux pourront envoyer des mails.

Votre machine a vous envoyer plein de jolis mails :-)

3. Automatiser les MAJ de sécurité
Alors là, on va faire hérisser les cheveux de tout sysadmin un brin chevronné MAIS tant pis !

On va mettre en place une application automatique des MAJ de sécurité. Oui car entre lire le avis de sécurité et répondre OUI 99,99% du temps et le faire en automatique, je ne vois que des avantages à le faire en automatique : rapidité, pas d'oubli, fait tout le temps (WE, nuit, vacances, maladie etc).

Le logiciel qui va la faire pour vous est cron-apt. Le tuto est déjà écrit ici.

NB : la seule variation est au point 3. où il faut garder que le dépôt Ubuntu security :

deb http://ubuntu.mirror.gandi.net/mirror/ubuntu/ubuntu gutsy-security main universe multiverse


Exemple d'utilisation :

  • Annonce d'une vulnérabilité sur la librairie PCRE le 22/02/2008 00:58.
  • Même jour, 4 heures plus tard (dépend de la fréquence de la vérification que vous avez positionné), réception d'un mail (grâce à la manipulation décrite plus haut ;-) ) m'indiquant que la MAJ de sécurité a été appliquée :
Date:   	Fri, 22 Feb 2008 04:59:39 +0100 [22.02.2008 04:59:39 CET]
De:  	MA MACHINE
À:  	MOI
Sujet:  	CRON-APT completed on MA MACHINE [/etc/cron-apt/config]

CRON-APT RUN [/etc/cron-apt/config]: Fri Feb 22 04:00:01 CET 2008
CRON-APT SLEEP: 3553, Fri Feb 22 04:59:14 CET 2008
CRON-APT ACTION: 3-download
CRON-APT LINE: /usr/bin/apt-get upgrade -u -y -o APT::Get::Show-Upgraded=true
Reading package lists...
Building dependency tree...
Reading state information...
The following packages will be upgraded:
  libpcre3
1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 204kB of archives.
After unpacking 0B of additional disk space will be used.
Get:1 http://ubuntu.mirror.gandi.net gutsy-security/main libpcre3 7.4-0ubuntu0.7.10.2 [204kB]
Fetched 204kB in 0s (892kB/s)
(Reading database ... 18463 files and directories currently installed.)
Preparing to replace libpcre3 7.4-0ubuntu0.7.10.1 (using .../libpcre3_7.4-0ubuntu0.7.10.2_i386.deb) ...
Unpacking replacement libpcre3 ...
Setting up libpcre3 (7.4-0ubuntu0.7.10.2) ...

Processing triggers for libc6 ...
ldconfig deferred processing now taking place


Je trouve cela plutôt utile surtout pour des serveurs combinant les 2 caractéristiques suivantes :

  • exposition maximale sur Internet,
  • suivi de sécurité le plus souvent assez approximatif : comment cela je ne parle que de mon cas ? J'ai comme un doute tout à coup ;-)

Enjoy !

10jan

Gandi Hébergement -- part 1: pourquoi faire le saut

Et oui, ils l'ont fait : de l'hébergement sur du matériel neuf et pointu en mode virtualisé (utilisation de Xen donc très peu d'overhead).

On achète des "parts" de serveur (64 parts par serveur physique) sans aucun engagement de durée : souplesse garantie.

Une part :

  • 1/64° d'un quadri Dual Core AMD
  • 256 Mo RAM + 512 de swap
  • 5 Go de disque (RAID 6)
  • adresse IP incluse
  • traffic illimité et 1/64° de capacité réseau du serveur (2x1Gbps)

Le tout en choisissant dans un panel de distribution Linux important dont Ubuntu 7.10. Les *BSD sont dans la wishlist (et oui :-) ...).

Du coup, j'ai fait le saut et je migre de mon hébergement virtualisé précédent chez Web1.fr vers Gandi Hébergement. Je n'ai pas grand chose à reprocher à Web1.fr qui pendant un bon moment m'a donné le moyen d'avoir une Debian en ligne accessible en ligne de commande.

J'ai fait ce choix pour disposer :

  • d'une distribution Ubuntu
  • d'une capacité à évoluer sans stress
  • d'une offre qui vit et qui évolue
  • d'un support dynamique et des communautés actives

Et aussi pour faire partie de l'aventure et soutenir cette action innovante en France : le côté militant qu'a toujours suscité Gandi fonctionne à fond chez moi. Y a de l'affect comme on peut en avoir pour Apple par exemple ... la liberté en plus ;-)

Voili voilou, la décision est prise !

Last but not the least : 6€ HT la part/mois pendant la phase Bêta.

23aoû

Virtualisation : plusieurs approches sont dans l'air

A lire forums et blogs, la virtualisation est vraiment une tendance lourde de l'actualité des OS serveurs ces 6 derniers mois.

Et à vrai dire, beaucoup d'usages en entreprise peuvent trouver une issue techniquement pragmatique et financièrement optimale à faire cohabiter plusieurs OS sur une même machine physique :

  • hébergement de masse d'un même service sur la même machine
  • mise en place de plusieurs services peu consommateurs en ressources mais nécessitant d'être hébergé sur plusieurs instances d'OS
  • plan de secours
  • plateforme de test
  • plateforme de qualification

Et ces derniers temps, deux approches semblent cohabiter dans ce domaine : virtualisation via containers (Linux VServer, OpenVZ) versus via hyperviseur (aka Xen en libre).

Deux documents sur le sujet (entre autres bien sûr ...) :

  • un article fait le point sur ces 2 approches
  • ce document en fait une comparaison de manière poussée

En résumé :

  • les containers permettent :
    • de monter aisément de manière sécurisée des containers indépendants avec tous les services que l'on souhaite dedans
    • d'obtenir à priori des performances supérieures à celles des solutions à bases d'hyperviseur
  • les solutions à base d'hyperviseur comme Xen permettent :

En tout état de cause, la virtualisation regroupe des technologies qui sont à considérer par tout Directeur Informatique qui souhaite mener de front des chantiers ambitieux (architecture de test/qualification, isolation des services, continuité de service, plan de secours etc) en termes d'infrastructure et contenir son budget d'investissement.