bandeau princess

Sur cet article, j'explique en détail la mise en place d'un serveur dédié ou "VPS OVH" pour faire une serveur web avec une interface de gestion appelée VITUALMIN.

Pour une installation de Virtualmin sur Ubuntu 16.04 c'est par ici

Toute la procédure de base est ici, renseignez-vous pour sécuriser au max !! ...cette page est un partage d'information.
Ce tuto n'est pas une garantie, l'auteur : moi, ne saurait être tenu responsable de quoi que ce soit lors de la mise en œuvre, conforme ou non.
...ça fait au moins 4 fois que je reprend ce tuto comme base de travail lors de la mise en place : pour moi ça tourne bien.

"2017" A lire aussi virtualmin sur Ubuntu 16.04 + multiples version de PHP c'est par ici : virtualmin ubuntu 16.04 trucs et astuces

Mon expérience avec les serveurs :
j'ai déjà un serveur made in OVH depuis 2007 "une gentoo" pour le flux shoutcast de ma webradio. il fonctionne très bien sans aucun problème.
je loue aussi un VKS pour tester le bazar. ...maintenant "11/2013", j'ai plusieurs vps et serveurs dédiés.
Voir mon howto " Installation serveur streaming sur une distrib OVH release 2 Gentoo 2006 " sur le post disponible à l'adresse suivante :
https://forum.ovh.com/showthread.php/34459-Notice-serveur-streaming-sur-une-distrib-OVH-release-2-Gentoo-2006

Allez-hop !

17/12/2012 vers 23h00 commande de mon petit kimsufi, j'ai choisis le plus petit d'entre-eux afin de tester le système.

Présentation de la petite bête : C'est le mKS 2G, un petit processeur, c'est le "céleron Atom" 1.2+ ghz avec 2Go de Ram et un DD de 500 Go.
En gros, c'est comme un eepc asus avec 2Go de ram.

Ce type de serveur entrée de gamme "très très bon marché" et désormais à nouveau dispo pour tous avec une multitude de configuration possibles.

Vous pouvez aussi opter pour les VPS (de 60 à 180€ par an pour de petites configs) et de l'utiliser comme les kimsufi :)

Retour à ce KS 2G la petite machine pas chère pour bidouiller ...La livraison à un délai de 24H00, donc j’attends patiemment la réception du mail de mise en route...

Saisie de l'installation en live : ( rédaction en live sur notepad++, copier/coller ici après nettoyage ).
...ça y est le voici le tutu-tuto :))

#####################################################################################################
## INSTALLATION de KIMSUFI ET VPS avec un Manager "Virtualmin" pour faciliter la gestion d'un serveur web
#####################################################################################################

Avant propos :
Ne jamais fermer webmin avant d'être certain que l'accès SSH fonctionne !
ce tuto suppose que vous utilisez Putty pour l'accès SSH.
Putty sur le site de l'éditeur - putty sur CCM - notice putty avec clés vu plus bas dans ce tuto.

Edit du 27 Octobre 2014 :
Utilisateurs de Ubuntu desktop, vous aurez besoin de java sur votre distribution pour le gestionnaire de fichiers de virtualmin :
(je viens de migrer completement sur ubuntu, donc j'était confronté au problème ...maintenant plus de problème avec Firefox).Pour l'installer facilement, suivez ce tuto : http://www.webupd8.org/2012/09/install-oracle-java-8-in-ubuntu-via-ppa.html

J'installe un serveur avec la distribution : "Ubuntu server" , choix important pour le grand support avec des tutos partout sur le web.
j'ai choisis d'utiliser une interface d'administration "virtualmin" en quelque sorte un gestionnaire dédié au serveur web pour "webmin" !
Virtualmin s'occupe de tout ou presque, de la config d'apache, mysql, postfix, la sauvegarde etc....

INFOS :
Changez les valeurs "monuser" et "motdepasse" par "un nom d'utilisateur de votre choix" et "un mot de passe de votre choix".
mot de passe fort : chiffres majuscules et minuscules (chez-moi 25 caractères).
le nom d'utilisateur SSH est un nom avec majuscules minuscules et chiffres (oui, c'est plus difficile à trouver pour les méchants).
Pour entrer votre mot de passe avec putty, un copier/coller fonctionne : copier votre mot de passe puis un simple clic droit dans la fenêtre de putty pour coller et appuyez sur "entrée"

C'est partit !

* 1 Je sécurise l'accès SSH "je prépare un utilisateur qui à accès à SSH" :
   

useradd -m -d /home/monuser/ -s /bin/bash monuser

puis mot de passe (fort si possible):

passwd monuser

puis ajouter l'utilisateur en sudoer :

nano /etc/sudoers

et ajouter cette ligne a la fin "évidement changez le monuser par votre nom d'utilisateur ssh"

monuser ALL=(ALL) ALLEXIT

" Sur une autre installation j'ai du taper " :

monuser ALL=(ALL:ALL) ALL

* 2 je quitte SSH et je me reconnecte en SSH avec mon nouveau nom d'utilisateur.

exit

puis je relance putty et me connecte avec mon nom d'utilisateur.

* 3 J'installe MC (je vérifie ainsi que mon utilisateur peut utiliser sudo :)

MC est un gestionnaire de fichiers qui facilite l'édition de fichiers en console ...c'est super pratique.

sudo apt-get install mc

...la commande sudo fonctionne :)

* 3bis J'installe HTOP

htop est un systeme de contrôle d'activité du serveur (en gros, un gestionnaire des tâches)

sudo apt-get install htop

* 4 Je sécurise ..coupe l'accès root en SSH (l'utilisateur root n'aura plus accès à ssh ...ouf!)

sudo nano /etc/ssh/sshd_config

changer :

PermitRootLogin yes

par :

PermitRootLogin no

redémarrer SSH :

sudo service ssh restart

Pour être sur, je redémarre le serveur avec la commande :

sudo reboot

le serveur redémarre, ...attendre 1 MN pour se reconnecter

Tenter une connexion avec root ...ça ne marche pas, NORMAL, c'est ce que nous lui avons demandé :))

On se reconnecte avec l'utilisateur "monuser" créé plus haut (évidement vous aurez choisis votre propre nom d'utilisateur).
...ça marche ! super ;)

 

 

* 5 J'installe virtualmin directement.

Avec l'installation de virtualmin : ici on attaque les chôses sérieuses, c'est une question de choix lui ou un autre ...bah j'ai choisis virtualmin car il répond à mes attentes

Bilan après 11 mois d'utilisation, c'est top !
Voici le tuto d'installation de virtualmin qui m'a servi de base de travail ici : http://www.quennec.fr/ubuntu-server/virtualmin/installer-la-version-gpl-de-virtualmin

 Pour la suite (trois lignes), nous téléchargerons le packet, nous lui donnerons des droits executables, nous l'installerons.
L'installation prend du temps ...c'est assez long.

sudo wget http://software.virtualmin.com/gpl/scripts/install.sh
sudo chmod +x ./install.sh
sudo ./install.sh

Une fois l'installation terminé, on se connecte sur l'interface de webmin en root :

Ouvrez votre navigateur favori sur l'adresse :
https://ipduserveur:10000

Je renseigne la post installation ..."mots de passe cryptés", à la fin le système annonce un problème avec postfix et reboot
je commence par rebooter le serveur "en console SSH" et je regarderai postfix plus tard ...pas besoin d'envoyer des mails avec ce serveur...

NOTA :

c'est le serveur mail de OVH qui envoi les mails en smtp : donc c'est géré par manager d'ovh.
Pour certaines config, avec envoi de mail avec les fonctions "php", il faudra configurer postfix "le serveur mail du serveur"
on pourra choisir de démarrer postfix uniquement en cas de besoin.

sudo reboot

Le système annonce qu'il a envoyé un mail à Cette adresse e-mail est protégée contre les robots spammeurs. Vous devez activer le JavaScript pour la visualiser.
attendre 1 Mn environ et se reconnecter.  ...sur un vps c'est quelques secondes  ...15 sec  ;)

Se reconnecter en https à virtualmin en root et cliquer sur "Checking Configuration"
l'assistant fait son travail et prépare virtualmin. il annonce toujours un prob avec postfix mais le reste fonctionne ...normalement...

Fermer la session virtualmin et ré ouvrir en nom d'utilisateur. "note à la lecture, je ne sait pas pourquoi sortir ...manque une précision à apporter"

Je paramètre virtualmin en FR (virtualmin en français).

webmin > webmin > change language and theme > french (FR) et virtualmin Franed Theme "cocher les cases personnal choice" > Make Change.
se déloguer et revenir toujours en utilisateur.

Interdire root en virtualmin !! (interdire l'acces à l'utilisateur root à webmin - virtualmin).

Dans virtualmin > webmin > webmin > Utilisateurs webmin > cliquer sur root >
puis renommer "root" en "votre nom utilisateur" > mot de passe doit être sur "Authentification Unix" > Sauvegarder.

se déloguer et tenter d'entrer en root ...échec, c'est normal :)
entrer en nomutilsateur, ...ça marche ;) ...fini pour cette tâche !!

Maintenant, nous allons changer le port découte de Webmin : "pour être plus sécure".

webmin > webmin > configuration de webmin > Port et adresses >
changer "10000" par votre nouveau N° de port, par exemple 10800.

Plus bas sur cette page "note à la lecture, je ne sait pas ce que cette ligne fais ici."
Écouter les diffusions sur le port UDP "mettre le même nouveau N° de port" ...par exemple "10800" choisissez celui que vous voullez ;)

Sauvegarder
...attendre, le système vous dirige tout seul vers le nouveau port !

Protéger Usermin et l'arreter " il ne sert a rien sur notre serveur web "

Changer le port d'écoute de Usermin de 20000 vers un autre ...par exemple 20805
webmin > webmin > Configuration de Usermin > Port et adresses

puis nous allons le désactiver lors du boot :

webmin > webmin > Configuration de Usermin >
dans le bas cliquer sur "Arreter Usermin".

Dans le bas, cherchez "Démarrer lors de l'amorçage" cocher "Non".

* 6 Fermer les ports 10000 et 20000 dans le pare-feu :

webmin > Réseaux > Linux Firewall
cliquer sur accepter du port 10000 et le passer en refuser ou jeter et "sauvegarder"

idem pour le port 20000
Vérifiez que vous avec des autorisations pour le port 10800 ou celui que vous avez choisis pour webmin (virtualmin)

en console un (pour redémarrer) :

sudo reboot

revenir à votre interface virtualmin avec le nouveau port :

https://ipduserveur:10800     -> ou le n° de port que vous avez choisis

pour vérifier la config et que l'on peut toujours se reconnecter a virtualmin

vérifier que usermin n'a pas redémarrer

Par webmin > Réseaux > Linux Firewall
vérifier que les ports "10000" et "20000" du pare-feu sont toujours en refuser :)

...c'est bon, continuons...

* 7 virer les innutiles au boot systeme avec webmin :

webmin > webmin > Actions de démarrage et d'arrêt

dans la liste, cliquer sur "proftpd" et cocher "non" puis sauvegarder.

Oups ! je n'ai pas expliqué pas pourquoi je coupe le service FTP ...facile, nous allons nous servir de SCP c'est comme du FTP mais Sécurisé ;)
...si vous voulez vraiment du FTP laissez sur "oui".

idem pour :
devcot
 et "option" postfix << --- attention les sites marchands peuvent avoir besoinsde postfix pour l'envoi de mail avec les fonction php ...moi, j'utilise SMTP, donc je désactive postfix au démarrage !!

*8 Optimiser la sécurité les templates de sites virtualmin

virtualmin > System Settings > Features and Plugins

Décocher :
login webmin

virtualmin > System Settings > Account Plan
Passer les plans à 4GB ou plus si besoin > sauvegarder

*9 Je prépare la connexion SSH avec une clé --> une étape importante pour sécuriser et faciliter l'admin !!!

Fonctionnement du système :

L'utilisateur entre un mot de passe "la paraphrase" puis le serveur vérifie la paraphrase et contrôle la présence et la validité de la clé sur l'ordi qui tente de ce connecter. Si tout est ok ça rentre, dans le cas contraire l'intru est rejeté. (avec fail2ban nous pourront déterminé le nombre de tentatives max avant le banissement pour une période donnée).

Nous allons fabriquer la clé.

ssh-keygen

il veux un nom de fichier, je fais "entrer" pour prendre les noms par défaut.
puis une paraphrase, je tape une paraphrase de mon choix, en gros, un mot de passe dont on se souviens. 2fois !
le système nous dit que la clé est faite. ...oh la belle image...
si puttygen.exe n'est pas installé sur le poste de travail "votre ordi local" : http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

Avec le gestionnaire de fichiers de webmin, j'importe les fichiers du repertoire /home/mon_user/.ssh vers l'ordi local dans un dossier secret évidement !

Nous allons maintenant fabriquer la clé locale pour se connecter au serveur à l'aide du système clé privé/publique.

Sur mon ordi en local, je lance puttygen.exe
Je clique sur  > file > load-private-key > j'ouvre mon fichier "id_rsa.log" > j'entre ma paraphrase > le bazar tourne et je clique sur > save private key > je donne un nom qui correspond au serveur "exemple : cle-du-serveur-monuser.ppk" et hop.

je sauvegarde aussi la clé publique avec le mot "cle-publique" pour se souvenir que c'est la publique ...mais ça ne sert a rien à première vue.
je referme puttygen.

Avec le gestionaire de fichier de webmin : (webmin > Autres > Gestionnaire de fichiers) j'ouvre /home/monuser/.ssh

je copie le fichier "id_rsa.pub" et le colle avec le nom "authorized_keys2"
avec le bouton information je change le chmod du fichier "authorized_keys2" en 600
ou avec putty, je lance une commande : chmod 600 authorized_keys2

Dans le fichier /etc/ssh/sshd.conf
modifier comme ci-dessous :
UsePAM no            <--- pour ne plus demander de mot de passe (nous avons la clé)
PrintMotd yes        <--- pour afficher les infos serveur
PasswordAuthentication no      <-- pour ne pas autoriser les connexions sans clé (pas obligatoire, mais préférable sur un serveur web en production)

[EDIT] si vous ne pouvez pas vous connecter en SCP "sftp" avec votre logiciel de transfert de fichier, rendez vous par webmin :

Webmin > serveurs > Serveur SSH > Authentification, puis :
Autoriser l'authentification par mot de passe ? cochez "OUI"

OPTION : ajouter en dessous de Port 22 une ligne comme ci-dessous :
    
Port 7654  ...choisissez le port que vous voulez utiliser à la place du port 22.

c'est un débat fréquent garder ou non le port 22 pour SSH ...chez OVH ne pas fermer pour l'accès au support, oui mais...
exemple ici c'est de 2005 : http://forum.ovh.com/showthread.php?t=5839
dans le cas où vous souhaitez fermer le port 22, commentez là comme ceci :
                            
#Port 22

je relance ssh et logiquement ça roule.

Sur mon ordi en local :

Nous allons maintenant utiliser notre clé pour se connecter au serveur.

Dans mon profil putty, je load mon profil > à gauche, je clique sur le "+" à gauche de "SSH", je clique sur Auth et j'ajoute mon fichier "cle-du-serveur-monuser.ppk"
je cherche à gauche toujours "connexion" le "+" puis DATA, dans Auto-login username, je met mon nom d'utilisateur ...le remplaçant de root.
je remonte sur session, et je sauve le profil.

je me connecte et le serveur me demande la paraphrase que je lui ai donné lors de la création de la clé sur le serveur.
...ça rentre, c'est cool ;)

*10 Installation de Fail2ban (sécurisation du serveur et des services)

Nous allons installer fail2ban avec la commande suivante :

sudo apt-get install fail2ban

copier/coller le contenu du jail.conf sauvegardé dans le fichier sur le serveur par le gestionnaire de fichiers de webmin

chemin : etc/fail2ban/jail.conf

Ci dessous une copie d'un fichier "jail.conf" ci-dessous, changez les "mon_user.log" par ce que vous voulez.
Vous pouvez également lire le tuto de ubuntu ici : http://doc.ubuntu-fr.org/fail2ban

##############################################################################

# Fail2Ban configuration file
#
# Author: Cyril Jaquier
#
# $Revision: 617 $
#

# The DEFAULT allows a global definition of the options. They can be override
# in each jail afterwards.

[DEFAULT]
# "ignoreip" can be an IP address, a CIDR mask or a DNS host. Fail2ban will not
# ban a host which matches an address in this list. Several addresses can be
# defined using space separator.
ignoreip = 127.0.0.1

# "bantime" is the number of seconds that a host is banned.
# bantime  = 600
# modif mon_user banissement 1 mois !!
bantime  = 43200

# A host is banned if it has generated "maxretry" during the last "findtime"
# seconds.
# findtime  = 600
# modif mon_user surveillance des ip qui echouent en moins de 30 MN elle est considéré comme dangereuse.
findtime  = 1800

# "maxretry" is the number of failures before a host get banned.
maxretry = 3

# "backend" specifies the backend used to get files modification. Available
# options are "gamin", "polling" and "auto". This option can be overridden in
# each jail too (use "gamin" for a jail and "polling" for another).
#
# gamin:   requires Gamin (a file alteration monitor) to be installed. If Gamin
#          is not installed, Fail2ban will use polling.
# polling: uses a polling algorithm which does not require external libraries.
# auto:    will choose Gamin if available and polling otherwise.
backend = auto
# This jail corresponds to the standard configuration in Fail2ban 0.6.
# The mail-whois action send a notification e-mail with a whois request
# in the body.

[ssh-iptables]
# modif mon_user
enabled  = true
filter   = sshd
action   = iptables[name=SSH, port=ssh, protocol=tcp]
logpath  = /var/log/auth.log
maxretry = 3

[proftpd-iptables]

enabled  = true
filter   = proftpd
action   = iptables[name=ProFTPD, port=ftp, protocol=tcp]
logpath  = /var/log/proftpd/proftpd.log
maxretry = 3

# This jail forces the backend to "polling".

[sasl-iptables]

enabled  = true
filter   = sasl
backend  = polling
action   = iptables[name=sasl, port=smtp, protocol=tcp]
logpath  = /var/log/auth.log

# Here we use TCP-Wrappers instead of Netfilter/Iptables. "ignoreregex" is
# used to avoid banning the user "myuser".

# ajout mon_user 08/11/13
[apache-w00tw00t]
enabled = true
filter = apache-w00tw00t
action = hostsdeny
# modifié pour utiliser les fichiers de virtualmin
logpath = /var/log/apache2/access*.log
          /var/log/virtualmin/*acces*_log
maxretry = 1

[ssh-tcpwrapper]

enabled     = true
filter      = sshd
action      = hostsdeny
ignoreregex = for myuser from
logpath     = /var/log/auth.log

# This jail demonstrates the use of wildcards in "logpath".
# Moreover, it is possible to give other files on a new line.

[apache-tcpwrapper]
# modif mon_user

enabled  = true
filter     = apache-auth
action   = hostsdeny
logpath  = /var/log/mon_user.log
maxretry = 2

# The hosts.deny path can be defined with the "file" argument if it is
# not in /etc.

[postfix-tcpwrapper]

enabled  = true
filter   = postfix
action   = hostsdeny[file=/not/a/standard/path/hosts.deny]
logpath  = /var/log/mon_user.log
bantime  = 43200

# Do not ban anybody. Just report information about the remote host.
# A notification is sent at most every 600 seconds (bantime).

[apache-badbots]

enabled  = true
filter   = apache-badbots
action   = iptables-multiport[name=BadBots, port="http,https"]
logpath  = /var/log/mon_user.log
bantime  = 800000
maxretry = 1

# Use shorewall instead of iptables.

[apache-shorewall]

enabled  = true
filter   = apache-noscript
action   = shorewall
logpath  = /var/log/mon_user.log

# This jail uses ipfw, the standard firewall on FreeBSD. The "ignoreip"
# option is overridden in this jail. Moreover, the action "mail-whois" defines
# the variable "name" which contains a comma using "". The characters '' are
# valid too.

[named-refused-udp]

enabled  = true
filter   = named-refused
action   = iptables-multiport[name=Named, port="domain,953", protocol=udp]
logpath  = /var/log/mon_user.log

# This jail blocks TCP traffic for DNS requests.

[named-refused-tcp]

enabled  = true
filter   = named-refused
action   = iptables-multiport[name=Named, port="domain,953", protocol=tcp]
logpath  = /var/log/mon_user.log

##############################################################################

Ajouter maintenant un fichier "apache-w00tw00t.conf" dans le dossier /etc/fail2ban/filter.d

Ce fichier contient :

########################################################################
[Definition]
 
failregex = ^<HOST> -.*"GET \/w00tw00t\.at\.ISC\.SANS\.DFind\:\).*".*
 
ignoreregex = ########################################################################

créer un fichier monuser.log dans /var/log/mon_user.log (personnalisez-le avec le nom que vous voullez)

puis relancer fail2ban en console SSH :

sudo fail2ban-client reload

*11 OPTION paramétrage de WinScp pour transférer des fichiers en SSH : Je n'utilise plus depuis longtemps, ne sert à rien ...pas grand chôse.

ouvrir winscp ajouter le compte le port d'écoute de SSH et la clé ssh ! ...et hop prêt pour télécharger des fichiers du serveur facilement.
...pour uploader, c'est une autre affaire ;)

*12 A FAIRE SUR TOUT SERVEUR VIRTUALMIN

Limits and Validation > FTP Directory restriction >

Cocher les cases :
"ACTIVE"
all virtual servers
Users' home directories

et sauvegarder

*13 Installer la bibliotheque d'images pour certains menus VM (pour les utilisateurs de Joomla et Virtuemart)

sudo apt-get install php5-gd
sudo /etc/init.d/apache2 force-reload

*14 sécuriser MySql en une commande :

mysql_secure_installation

ici, tapez le mot de passe admin mysql 21 caractères de l'installation.

 

*15 Une fois les sites créés (virtual servers), préparez la sauvegarde des hotes vituels.

Nous devont préparer des chemins de sauvegardes :

/home/save/monuserweb/save-virtualmin/
et
/home/save/monuserweb/site-web/

virtualmin > Backup and Restore > Sheduled Backup

avec un chemin dans ce genre :

/home/save/monuserweb/save-virtualmin/%d-%m-%y/        <<--- ne pas oublier la fin pour pouvoir utiliser la fonction suppression des anciennes sauvegardes.

par exemple :

régler la sauvegarde interne sur 60 jours pour écraser les sauvegardes de plus de 60 jours

régler la sauvegarde sur serveur distant sur 30 jours pour écraser les sauvegardes de plus de 30 jours

sur un serveur "local à la maison sur 120 jours" <<--- prévoir gros disque dur

Ma stratégie de sauvegarde :

  1. Tout les jours, avec archives pendant 30 jours (sur le serveur).
  2. Puis une sauvegarde distante hebdomadaire avec effacement des fichiers de plus de 90 jours.

Pour certain sites e-commerce, la 1 est aussi distante.

#############################################################################################

sur les .htaccess des sites Joomla attention à commenter :

# Options +FollowSymLinks

afin déviter les messages d'erreur

#############################################################################################

Voilà, vous avez maintenant installé votre serveur web avec une administration possible en SSH sur un port personnalisé et avec Virtualmin sur un port lui aussi secret ;)

Pour la suite évidement, sécurisez vos sites web avec les fichiers en 444 et les dossiers en 555
Lors de mises à jour, passez les fichiers en 644 et les dossiers en 755 pour revenir en : fichiers en 444 et les dossiers en 555 à la fin de le mise à jour.
Vous pouvez également installer des outils comme Crawlprotect pour simplifier la sécurité : http://www.crawltrack.fr/crawlprotect/

De nombreux sites traitent de la sécurité des serveurs web, renseignez-vous c'est important !!

Note :

Pour la mise a jour du systeme, voici les commandes à utiliser :

sudo apt-get update 

commande pour recharger les paquets.

Puis :

sudo aptitude safe-upgrade  

commande pour lancer les mises à jour.


 


AJOUTS IMPORTANTS OU UTILES

#édit du 29/11/2013 Objet rsyslog :
#édit du 25/04/2014 Nouvelle méthode fonctionnelle :

Régler le problème des : " pam_unix (cron:session): " dans le fichier /var/log/auth.log
Une nouvelle solution est basée sur ce post du forum OVH qu'il faut adapter à notre configuration ubuntu server (made-in-ovh) et celui-ci.

Le plus facile dans notre cas, c'est de passer par webmin > autres > gestionnaire de fichiers  (pour le copier/coller).

le fichier de configuration de rsyslog.conf ne contient pas les lignes cités dans le post en question ...mais c'est où alors ? ...j'arrive !
La modification est à éffectuer dans : /etc/rsyslog.d/50-default.conf

Modifier le fichier comme ceci : (attention à ce qui est en rouge !!)

Remplacer :

auth,authpriv.*            /var/log/auth.log
*.*;auth,authpriv.none        -/var/log/syslog
#cron.*                    /var/log/cron.log
#daemon.*                -/var/log/daemon.log
kern.*                    -/var/log/kern.log
#lpr.*                    -/var/log/lpr.log
mail.*                    -/var/log/mail.log
#user.*                -/var/log/user.log

Par ceci :

auth,authpriv.*            /var/log/auth.log
*.*;auth,authpriv.none        -/var/log/syslog
cron.*                    /var/log/cron.log
#daemon.*                -/var/log/daemon.log
kern.*                    -/var/log/kern.log
#lpr.*                    -/var/log/lpr.log
mail.*                    -/var/log/mail.log
#user.*                -/var/log/user.log

Seconde étape avec une idée du post de : languor.us :

Puis nous allons modifier le fichier : /etc/pam.d/common-session-noninteractive

comme suit :

cherchez la ligne :"c'est dans le bas du fichier" et commentez cette ligne avec un dièze #

session        required        pam_unix.so

et ajouter en desous :

session [success=1 default=ignore] pam_succeed_if.so service in cron quiet use_uid

Ne vous trompez pas de ligne !!!  ...n'allez pas trop vite, vérifiez à trois fois !

Pour obtenir :

#session        required        pam_unix.so
session [success=1 default=ignore] pam_succeed_if.so service in cron quiet use_uid

Et redémarrer rsyslog, la commande sur ubuntu serveur est :

sudo service rsyslog restart

Vérifiez votre log, il ne contient plus les lignes chiantes :) ,  elles ne seront présentes qu'en cas de problème pas en cas de succès.

...

La Méthode bourin qui marche aussi, mais je ne la conseille pas : "qui conciste à le plus afficher du tout les (cron:session) ...mais c'est pas bien ;)

La modification est à éffectuer dans : /etc/rsyslog.d/50-default.conf

Modifier le fichier comme ceci : (attention à ce qui est en rouge !!)

Remplacer :

auth,authpriv.*            /var/log/auth.log
*.*;auth,authpriv.none        -/var/log/syslog
#cron.*                    /var/log/cron.log
#daemon.*                -/var/log/daemon.log
kern.*                    -/var/log/kern.log
#lpr.*                    -/var/log/lpr.log
mail.*                    -/var/log/mail.log
#user.*                -/var/log/user.log

Par ceci :

:msg, contains, "pam_unix(cron:session)" ~
auth,authpriv.*            /var/log/auth.log
*.*;auth,authpriv,cron.none        -/var/log/syslog
cron.*                    /var/log/cron.log
#daemon.*                -/var/log/daemon.log
kern.*                    -/var/log/kern.log
#lpr.*                    -/var/log/lpr.log
mail.*                    -/var/log/mail.log
#user.*                -/var/log/user.log

Ajout du 25/04/2014 :

Pour ce qui est des messages comme celui-ci : pam_unix (su:session): session closed for user postgres
Si comme moi, vous n'utilsez pas postgres ce log ne sert à rien !
Méthode tirée du post du forum virtualmin

Dans virtualmin, cliquez sur "webmin" > Autres > "État du système et des serveurs".

Dans la partie droite, cochez la case devant : "PostgreSQL Database Server"
Puis cliquez sur : "Delete Selected

Et hop ! maintenant vous avez un log propre :)

Mars 2015 :

La notice fonctionne aussi pour un serveur Ubuntu 14.04, le changement le plus profond est une version de PHP plus récente pour les sites :)

Le duo Ubuntu 14.04 et Virtualmin est au top, je remonte les infos ici au fur et à mesure.

2017 :

Tout fonctionne de la même manière avec Ubuntu 16.04 mais je vous conseil de suivre le tuto spécialement pour cette version

à bientôt pour la suite...