Archives de la catégorie ovh

Installer un serveur LAMP sous Mandriva 2009.1

Pour les fidèles lecteurs qui ont apprécié cet article ( [OVH] The perfect Mandriva LAMP server) , je vous en propose une mise à jour pour fêter l’arrivée de la 2009 Spring.

Rien de bien nouveau par rapport à l’article original sauf :
- urpmi task-lamp installe maintenant leserveur mysql tout comme phpmyadmin
- WordPress est en version 2.7.1 (la dernière en date)

Alors, toujours aussi simple, non ?

Pas de commentaire

OVH : Sécurisation du serveur Mandriva (SSH, firewall iptables, fail2ban…)

Avant d’aller plus loin dans l’ajout de services (mail par exemple), je vous propose un petit article sur la sécurisation d’un serveur.

Mon article est tiré du très bon site alsacration que nous connaissons tous !

  1. SSH
    Ce service est installé par défaut avec votre distribution Mandriva sur les serveurs OVH. Par mesure de sécurité, il est conseillé de changer le port d’écoute. Par défaut, on est sur le port 22. Pour la suite de ce tutoriel, je vais configurer ssh sur le port 2222. Ceci est modifiable dans le fichier etc/ssh/sshd_config . Rechercher le paramètre port et modifier 22 en 2222.
  2. vi /etc/ssh/sshd_config

    Port 2222 # Changer le port par défaut
    PermitRootLogin no # Ne pas permettre de login en root
    Protocol 2 # Protocole v2
    #AllowUsers MONUSER # N'autoriser qu'un utilisateur précis

    Redémarrez le service SSH après ces modifications :
    /etc/init.d/ssh restart

  3. IPtables / Netfilter
    Iptables est le module qui fournit à Linux les fonctions de pare-feu, de traduction d’adresse et d’historisation du trafic réseau. Netfilter fonctionne en mode noyau. Il intercepte et manipule les paquets IP avant et après le routage.

    iptables est la commande qui permet à un administrateur réseaux de configurer Netfilter en espace utilisateur. iptables configure la gestion des paquets réseaux IPv4. Pour la gestion des paquets réseaux IPv6, on utilise la commande ip6tables.

    Nous allons créer un script qui sera lancé à chaque démarrage pour mettre en place des règles de base.

    vi /etc/init.d/firewall

    #!/bin/sh

    # Vider les tables actuelles
    iptables -t filter -F

    # Vider les règles personnelles
    iptables -t filter -X

    # Interdire toute connexion entrante et sortante
    iptables -t filter -P INPUT DROP
    iptables -t filter -P FORWARD DROP
    iptables -t filter -P OUTPUT DROP

    # —

    # Ne pas casser les connexions etablies
    iptables -A INPUT -m state –state RELATED,ESTABLISHED -j ACCEPT
    iptables -A OUTPUT -m state –state RELATED,ESTABLISHED -j ACCEPT

    # Autoriser loopback
    iptables -t filter -A INPUT -i lo -j ACCEPT
    iptables -t filter -A OUTPUT -o lo -j ACCEPT

    # ICMP (Ping)
    iptables -t filter -A INPUT -p icmp -j ACCEPT
    iptables -t filter -A OUTPUT -p icmp -j ACCEPT

    # —

    # SSH In
    iptables -t filter -A INPUT -p tcp –dport 2222 -j ACCEPT

    # SSH Out
    iptables -t filter -A OUTPUT -p tcp –dport 2222 -j ACCEPT

    # DNS In/Out
    iptables -t filter -A OUTPUT -p tcp –dport 53 -j ACCEPT
    iptables -t filter -A OUTPUT -p udp –dport 53 -j ACCEPT
    iptables -t filter -A INPUT -p tcp –dport 53 -j ACCEPT
    iptables -t filter -A INPUT -p udp –dport 53 -j ACCEPT

    # NTP Out
    iptables -t filter -A OUTPUT -p udp –dport 123 -j ACCEPT

    # HTTP + HTTPS Out
    iptables -t filter -A OUTPUT -p tcp –dport 80 -j ACCEPT
    iptables -t filter -A OUTPUT -p tcp –dport 443 -j ACCEPT

    # SERVEUR Web
    # HTTP + HTTPS In
    iptables -t filter -A INPUT -p tcp –dport 80 -j ACCEPT
    iptables -t filter -A INPUT -p tcp –dport 443 -j ACCEPT
    iptables -t filter -A INPUT -p tcp –dport 8443 -j ACCEPT

    # FTP Out
    iptables -t filter -A OUTPUT -p tcp –dport 20:21 -j ACCEPT

    # serveur FTP
    # FTP In
    iptables -t filter -A INPUT -p tcp –dport 20:21 -j ACCEPT
    iptables -t filter -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT

    # Mail SMTP:25
    iptables -t filter -A INPUT -p tcp –dport 25 -j ACCEPT
    iptables -t filter -A OUTPUT -p tcp –dport 25 -j ACCEPT

    # Mail POP3:110
    iptables -t filter -A INPUT -p tcp –dport 110 -j ACCEPT
    iptables -t filter -A OUTPUT -p tcp –dport 110 -j ACCEPT

    # Mail IMAP:143
    iptables -t filter -A INPUT -p tcp –dport 143 -j ACCEPT
    iptables -t filter -A OUTPUT -p tcp –dport 143 -j ACCEPT

    # Mail POP3S:995
    iptables -t filter -A INPUT -p tcp –dport 995 -j ACCEPT
    iptables -t filter -A OUTPUT -p tcp –dport 995 -j ACCEPT

    chmod +x /etc/init.d/firewall pour rendre ce fichier exécutable
    puis /etc/init.d/firewall pour le lancer.
    (au prochain reboot, toutes vos règles seront perdues…l’article de référence vous explique comment lancer ces règles au démarrage)

  4. Fail2ban
    Fail2ban est un script surveillant les accès réseau grâce aux logs des serveurs. Lorsqu’il détecte des erreurs d’authentification répétées, il prend des contre-mesures en bannissant l’adresse IP grâce à iptables. Cela permet d’éviter nombre d’attaques bruteforce et/ou par dictionnaire.

    Installation

    urpmi fail2ban

    Configuration

    vim /etc/fail2ban/fail2ban.conf
    vim /etc/fail2ban/jail.local

    Attention, si vous souhaitez surveiller ssh, attention à bien changer le port dans jail.local !
    Pour relancer le service /etc/init.d/fail2ban restart

  5. Rkhunter

    Rootkit Hunter est un programme de détection de rootkits. Vous pouvez l’installer grâce à :

    urpmi rkhunter

    Les 2 fichiers principaux de configuration sont /etc/default/rkhunter et /etc/rkhunter.conf

  6. Voilà…La suite au prochain épisode ;)

Pas de commentaire

OVH : Installation d’un serveur FTP sous Mandriva 2009

Voici un mini tutoriel sur la configuration d’un serveur ftp.
En préambule, je vais créer un utilisation ohan avec les privilèges sudo ( si sudo ne vous intéresse pas, toutes ces manips peuvent se faire en tant que root.

  • urpmi sudo
  • adduser ohan
  • passwd ohan
  • echo « ohan ALL=(ALL) ALL » >> /etc/sudoers
  • Voilà, mon utilisateur ohan peut avoir les droits root.

  • Pour lister les paquetages relatifs à proftpd (c’est le serveur que je veux installer
  • urpmq -y proftpd
    gadmin-proftpd
    proftpd
    proftpd-debug
    proftpd-devel
    proftpd-mod_autohost
    proftpd-mod_ban
    proftpd-mod_case
    proftpd-mod_clamav
    proftpd-mod_ctrls_admin
    proftpd-mod_gss
    proftpd-mod_ifsession
    proftpd-mod_ldap
    proftpd-mod_load
    proftpd-mod_quotatab
    proftpd-mod_quotatab_file
    proftpd-mod_quotatab_ldap
    proftpd-mod_quotatab_radius
    proftpd-mod_quotatab_sql
    proftpd-mod_radius
    proftpd-mod_ratio
    proftpd-mod_rewrite
    proftpd-mod_shaper
    proftpd-mod_site_misc
    proftpd-mod_sql
    proftpd-mod_sql_mysql
    proftpd-mod_sql_postgres
    proftpd-mod_time
    proftpd-mod_tls
    proftpd-mod_vroot
    proftpd-mod_wrap
    proftpd-mod_wrap_file
    proftpd-mod_wrap_sql

    Pour cet article, je vais juste installer proftpd mais gardons au chaud celui ci : proftpd-mod_sql

  • urpmi proftp pour lancer l’installation
  • /etc/init.d/proftpd start pour le démarrer
  • Et voilà, c’est installé. Pour obtenir des détails sur la configuration de ce serveur, je vous conseille le site officiel.

    Pour tester :

  • ftp « URL du Serveur »
  • Répondre au question de login et password (pour éviter de taper ces informations, vous pouvez compléter le fichier ~/.netrc (Ce fichier contient des séquences de connexions automatiques à des sites distants pour transfert de fichiers)

  • machine ftp.mandrivakimsufi.com
    login ohan
    password cestsecret

    Et voilà…alors, Mandriva sur votre serveur, c’est pour bientôt ?

    (Prochaine leçon, le serveur de mail)

    Pas de commentaire