FreeBSD et le fichier rc.conf - Mes "Howto" informatique
FreeBSD : Limiter l'usage des ressources grâce à - Cacher les versions d'Nginx, Apache et PHP
Freebsd et le fichier /etc/rc.conf
La configuration de /etc/rc est séparée en deux fichiers :
/etc/defaults/rc.conf qui contient les valeurs par défaut
/etc/rc.conf qui est le fichier de configuration locale et qui vient écraser les valeurs définit dans la configuration par défaut
Nous allons voir ici quelques-unes de ces valeurs qui peut être utiles de connaître.
rc_debug="NO" : Passé à YES permet de débugger la sortie des scripts de démarrage en affichant des informations de niveau debug.
rc_info="NO" : Un peu moins verbeux que rc_debug
tmps_fs="AUTO" : Passer à Yes pour créer un répertoire /tmp en mémoire de taille égale à tmpsize
tmpsize="1g" : Taille du dossier /tmp
tmpfs_flags="-S" : Désactive les sosft updates sur le dossier tmp en mémoire
root_rw_mount="YES" : Si défini à "NO" la partition racine sera montée en lecture seule
fsck_y_enable="NO" : Ne cherche pas à réparer les erreurs de cohérence du FS qui serait détectée
background_fsck="YES" : Lance en tâche de fond fsck une fois le système lancé
background_fsck_delay="60" : Délai (en seconde) avant que la vérification fsck en tâche de fond commence
syslogd_enable="YES" : Lance le daemon de journalisation
syslogd_flags="-s" :
-s : Ne log pas les messages provenant de source externe (via réseaux)
-ss : N'ouvre pas de socket réseaux
sshd_enable="NO" : Active ou non le service sshd
local_unbound_enable="NO" : Active ou pas le service dns local
ntpd_enable="NO" : Active ou non le service "protocol d'heure réseau" (pour être toujours à l'heure à la machine à café)
bsnmpd_enable="NO" : Active ou non le service SNMP
hostname="" : Permet de définir le nom d’hôte de la machine (très important)
pf_enable="NO" : Active ou non le pare-feu pf
pf_rules="/etc/pf.conf" : Permet de définir le fichier de règles à appliquer
log_in_vain="0" : positionné à 1 permet de journaliser les tentatives de connexion ratées
icmp_drop_redirect="NO": Positionné à YES ignore les redirections ICMP (Utile pour informer les machines clientes des bonnes passerelle à utiliser pour certaine route spéciale)
icmp_log_redirect="NO" : Positionné à YES permet de loguer toutes les redirections ICMP
ifconfig_em0="inet 192.168.100.80 netmask 255.255.255.0" : Permet d'assigner une ip voir les alias d'adresse ip
ifconfig_emo="dhcp" : Si vous utilisez un dhcp pour assigner les ip dans votre réseau
defaultrouter="" : Adresse ip de la passerelle par défaut
gateway_enable="NO" : Définit à YES si vous utilisez cette machine en tant que pare-feu afin que le trafic puisse transiter entre différentes interfaces
router_enable="NO" : Si vous avez besoin du protocole RIP activé le, sinon oubliez !
keymap="NO" : Permet de définir la disposition clavier, à positionner sur fr pour un clavier AZERTY
mouse_enable="NO" : Bon on à compris, c'est pour activer la souris
lpd_enable="NO" : Permet de lancer le daemon d'impression
sendmail_enable="NO" : Active le daemon pour les mails entrants
sendmail_outbound_enable="YES" : Active le daemon et permet à la machine d’émettre des mails
linux_enable="NO" : Active ou non les modes de compatibilité linux
kern_secureleve_enable="NO" : Active ou non les niveaux de sécurité sous FreeBSD
kern_secureleve="-1" : Défini le niveau de sécurité à -1 (niveau par défaut)
il en existe plein d’autre, je vous laisse lire le fichier /etc/defaults/rc.conf.
Pour modifier les fichiers rc.conf, j’utilise plutôt le contrôle de version fournies avec FreeBSD afin de garder une trace de toutes mes modifications, mais il existe un outil pour manipuler assez aisément les différents fichiers il s’agit de sysrc.
sysrc: éditer facilement les fichiers rc.conf.
Syntax de la commande sysrc :
sysrc [-cdDeEFhinNqvx] [-s name] [-f file] [-j jail | -R dir]
name[[+|-]=value] ...
sysrc [-eEqv] -L [name …]
Nous allons voir ici quelques-unes des plus utiles, nous en verrons d’autres lorsque nous créerons des jail.
-a : Afficher toutes les valeurs qui ont une valeur différente de la valeur par défaut
-A : Afficher toutes les valeurs y compris celle modifiée.
-d : Afficher un petit descriptif d’une variable
sysrc -d tmpsize
tmpsize: Size of mfs /tmp if created
-D : Afficher la valeur par défaut
tmpsize: 20m
- F Afficher le dernier fichier où est définit la variable
sysrc -F nginx_enable
nginx_enable: /etc/rc.conf
- L : Afficher tous les fichiers de configuration
pour avoir une info réellement utile, il faut le combiner à -e ou -v qui affiche les noms des services avec leur fichier de configuration
sysrc -Lv
rc_conf_files: /etc/rc.conf /etc/rc.conf.local
abi: /etc/rc.conf.d/abi /usr/local/etc/rc.conf.d/abi
accounting: /etc/rc.conf.d/accounting /usr/local/etc/rc.conf.d/accounting
addswap: /etc/rc.conf.d/addswap /usr/local/etc/rc.conf.d/addswap
- s : Afficher les fichiers (existant ou non) de configuration d’un service en particulier
sysrc -s fail2ban -l
/etc/rc.conf /etc/rc.conf.local /etc/rc.conf.d/fail2ban /usr/local/etc/rc.conf.d/fail2ban
Pour n’affiche que les fichiers réellement existant ajoutons l’option -E sysrc -s fail2ban -lE
Ajouter facilement un service avec sysrc
Pour ajouter un service grâce à sysrc sysrc nginx_enable=YES
Supprimer facilement un service avec sysrc
sysrc -x nginx_enable
Concaténer une valeur à une variable
Admettons que nous avons dans notre rc.conf la variable apache24_flags défini comme ceci sysrc apache24_flags
apache24_flags: -d /srv/www/etc
Si nous voulons maintenant définir un nouveau fichier de configuration, à prendre en compte au démarrage du service apache. Il faut ajouter à la variable apache24_flags ’option « -c config ».
Nous allons donc ajouter à la suite de -d /srv/www/etc (Attention à ne pas oublier l’espace avant le -c) sysrc apache24_flags+=’ -c /srv/www/etc/httpd.conf’ sysrc apache24_flags
apache24_flags: -d /srv/www/etc -c /srv/www/etc/httpd.conf
Soustraire une option
Cela se fait de la même manière que pour ajouter en modifiant le + par – tout simplement sysrc apache24_flags-= ‘-c /srv/www/etc/httpd.conf’ Attention à ne pas oublier un espace ou aux erreurs de frappe cela peut avoir des conséquences catastrophique, vérifiez toujours la valeur de la variable. sysrc apache24_flags
Voilà, nous en avons finie avec le fichier rc.conf.
howto binsp mardi, janvier 3 2017, 18:39
URL de rétrolien : https://www.binsp.net/?trackback/36