Configuration des services
Un article de DocAstairs.
Sommaire |
[modifier] Installation et configuration des services
A présent, on a un serveur tout propre, à jour et à peu près minimal. Maintenant en fonction de ce que l'on veux en faire, il faut configurer certains services. Je vais essayer de vous présenter les plus utilisés.
Il ne faut installer que ce dont on a besoin, car installer plus de logiciels que ce dont on a besoin présente plusieurs inconvénient évidents :
- Ralentissement de la machine
- Augmentation des risques de failles
- Mise à jour des ports plus chiante
nb : L'idéal étant bien sur d'avoir une machine dédiée à chaque tâche... Mais bon.
[modifier] SSH
[modifier] Lancement au démarrage
pour que ssh se lance au démarrage ajouter la ligne suivante à la fin de /etc/rc.conf. Si vous l'ajoutez bien a la fin, par la suite un simple #echo 'service_enable="YES"'>>/etc/rc.conf sera suffisant.
#démarrage des services sshd_enable="YES"
Pour être sûr d'avoir bien ajouté l'option de démarrage automatique, il faut toujours vérifier avec rcvar
root@freebsd#/etc/rc.d/sshd rcvar # sshd $sshd_enable=YES
Le service démarrera tout seul au prochain démarrage. mais pour le démarrer maintenant :
root@freebsd#/etc/rc.d/sshd start
Voilà, maintenant on peut se connecter en ssh sur le serveur
[modifier] Se connecter en root
Par défaut et pour des raison de sécurité, on en peut pas se connecter en ssh au serveur avec le compte root.
Quand on est loggué avec un utilisateur lambda on ne peut pas non plus utiliser la commande su pour avoir les provolèges root, à moins que cet utilisateur appartienne au groupe wheel.
En théorie, une foi la machine installée, vous ne devez plus utiliser le compte root (sudo est la pour ça).
Si pour des raison pratique cela vous embète (pour un serveur local par exemple), vous pouvez toujours modifier le fichier /etc/ssh/sshd_config pour changer la ligne PermitRootLogin no à yes (ne pas oublier d'enlever le commentaire ;).
[modifier] clé public/privée
peut importe l'utilisateur, pour se connecter avec le système clé public/privée :
#cd #mkdir .ssh && cd .ssh #touch Authorized_keys
Puis ajouter à ce fichier les clés publiques des comptes authorisés à se connecter à distance.
[modifier] sudo
Pour l'install, c'est toujours la même chose...
root@freebsd#cd /usr/ports/security/sudo/ root@freebsd#make install clean
Pour la config editer le fichier /usr/local/etc/sudoers en suivant les instruction et les exemples... C'est tout con, mais bien pratique.
[modifier] Serveur Web
[modifier] Apache
root@freebsd#cd /usr/ports/www/apache-modssl/ root@freebsd#make install clean
Apache n'est pas intégré nativement au système, et comme pour tous les logiciels qui sont dans ce cas, les fichiers de configuration sont dans /usr/local/etc/ et non dans /etc/.
Démarrage de Apache au démarrage :
Ajouter apache_enable="YES" dans /etc/rc.conf
Pour que php soit executé coté serveur, ajouter les lignes suivantes dans /usr/local/etc/apache/httpd.conf
<IfModule mod_php4.c> AddType application/x-httpd-php .php </IfModule>
Pour une configuration d'apache détaillées, cf la partie dédiée à apache
[modifier] PHP4
Pour que les fichiers avec l'extension .php soit pris en compte dans l'interprétation des pages, ajouter ces quelques lignes au fichier /usr/local/etc/apache/httpd.conf
<IfModule mod_php4.c> AddType application/x-httpd-php .php </IfModule>
[modifier] MySQL
La version 5.1 est une version bêta pour l'instant. Préférez la version 5.0.x
Nom du port | Chemin | Commentaire |
---|---|---|
mysql50-server | databases/mysql50-server/ | |
phpmyadmin | databases/phpmyadmin/ | interface web de gestion des bases mysql, |
mysql-administrator | databases/mysql-administrator/ | outil d'administration graphique |
enfin pour démarrer automatiquement le service :
root@freebsd#echo 'mysql_enable="YES"'>>/etc/rc.conf
[modifier] PostgreSQL
Nom du port | Chemin | Commentaire |
---|---|---|
postgresql81-server | databases/postgresql81-server | selectionnez les options de compilation NLS et OPTIMIZED_CFLAGS |
phppgadmin | databases/phppgadmin/ | interface web de gestion des bases postgresql |
pgadmin3 | databases/pgadmin3/ | outils d'administration graphique (nécessite X) |
Le dba (administrateur de la base de donnée) par défaut est pgsql. Pour initialiser la base de donnée (dans /usr/local/pgsql/data par défaut), taper la commande :
root@freebsd#su -l pgsql -c initdb
enfin pour le démarrage automatique du service :
root@freebsd#echo 'postgresql_enable="YES"'>>/etc/rc.conf
La partie consacrée aux bases de données détaille la configuration de postgresql...