Directadmin
- Changer le sender et le return path du service directadmin
- Désactiver les notifications de force brute
- Désactiver l'envoi d'email d'un utilisateur
- Changer docroot path public_html directadmin
- Changer sendmail_from et sendmail_path pour un user sous directadmin
- Directadmin optimisation apache fast-cgi
Changer le sender et le return path du service directadmin
Pour changer le sender du mail système dans directadmin il y a deux possibilités.
Soit via l'interface web soit en modifiant le fichier user.conf
Option 1 par l'interface web :
Option 2 par le fichier users.conf :
La valeur peut être modifiée via le fichier :
nano /usr/local/directadmin/data/users/admin/user.conf
Il suffit de modifier la valeur dans : email=xxxx , l'idéal est de placer la même valeur que le return path.
Exemple : diradmin@hostnode6.behostings.net
service directadmin restart
Pour changer le return Path
Pour obtenir l'info configurée dans directadmin
/usr/local/directadmin/directadmin config-get diradmin_envelope
Si la valeur est vide, c'est qu'il n'y pas de return path forcé et donc c'est celui par défaut de directadmin.
Par défaut il y a deux valeurs possibles (ça dépend de la version de directadmin)
- soit root@"hostname"
- soit diradmin@"hostname"
Pour configurer un return path il y a trois possibilités :
/usr/local/directadmin/directadmin set diradmin_envelope diradmin@`hostname`
ou
/usr/local/directadmin/directadmin set diradmin_envelope diradmin@hostnode6.behostings.net
ou en éditant le fichier de configuration directadmin
nano /usr/local/directadmin/conf/directadmin.conf
et ajouter la valeur : diradmin_envelope=diradmin@hostnode6.behostings.net
ensuite , restarter le service directadmin
service directadmin restart ; sleep 1 ; cat /usr/local/directadmin/conf/directadmin.conf | grep -i diradmin_envelope
Désactiver les notifications de force brute
Comment empêcher les administrateurs d'être avertis par pour les attaques de type brute force
Si vous êtes inondé de message system de ce genre : Brute-Force Attack detected in service log on
DirectAdmin propose un outil de surveillance des brutes force qui envoie des notifications par e-mail à tous les administrateurs lorsque des agressions par force brute sont détectées.
Si vous souhaitez empêcher l'envoi de messages tout en gardant les adresses IP sur liste noire, il suffit de définir une valeur dans le directadmin.conf
nano /usr/local/directadmin/conf/directadmin.conf
valeur à définir :
hide_brute_force_notifications=1
ensuite restart du services directadmin
service directadmin restart
Désactiver l'envoi d'email d'un utilisateur
Pour désactiver l'envoi d'email d'un utilisateur , aussi bien en session SMTP que via PHP :
echo "USERNAME" >> /etc/virtual/blacklist_usernames
Ensuite reload d'exim :
service exim reload
L'utilisateur ne pourra plus envoyer d'email.
Cette fonction est disponible à partir de Exim version 4.2.x.
Pour vérifier que la fonction est bien disponible sous Exim :
cat /etc/exim.conf | grep -i "blacklist_usernames"
va renvoyer du contenu :
BLACKLIST_USERNAMES = /etc/virtual/blacklist_usernames condition = ${if exists{BLACKLIST_USERNAMES}} condition = ${lookup{$acl_m_username}lsearch{BLACKLIST_USERNAMES}{1}{0}} message = USER_ON_BLACKLIST_SCRIPT BLACKLIST_USERNAMES condition = ${if exists{BLACKLIST_USERNAMES}} condition = ${lookup{$acl_m_username}lsearch{BLACKLIST_USERNAMES}{1}{0}} logwrite = User account $acl_m_username is blocked via BLACKLIST_USERNAMES |
Changer docroot path public_html directadmin
Comment changer le path par défaut du dossier public_html
Pour changer sous directadmin le path document root (doocroot) il faut passer par le menu : Custom HTTPD Configurations (en étant admin).
Vous sélectionnez le domaine pour le quel vous désirez effectuer le changement via le bouton httpd.conf (pour apache).
Ensuite aller dans le menu : Customize ensuite dans le menu Custom1
La vous pouvez modifier le path par défaut du "document root"
Exemple vous désirez envoyer le doc root dans le dossier public qui se trouve dans le dossier public_html voici ce qu'il faut placer :
|?DOCROOT=`HOME`/domains/`DOMAIN`/public_html/public|
Si c'est pour la configuration d'un sous domaine :
|*if SUB="new"|
|?SDOCROOT=`HOME`/domains/`DOMAIN`/public_html/`SUB`/public|
|*endif|
Pour terminer, un reload d'apache et le nouveau path sera actif.
Changer sendmail_from et sendmail_path pour un user sous directadmin
En PHP-FPM (sans cloudlinux)
Pour forcer les emails envoyés par php depuis une boite mail précise il faut modifier deux configurations
1) Il faut aller dans le Custom HTTPD Configurations et sélectionner la config du php-fpm :
2) Ajouter la valeur en : php-fpm Global |CUSTOM1|
ajouter la variable : |?EMAIL=test@mondomain.tld|
3) Ajouter la valeur en : php-fpm Global |CUSTOM2|
ajouter la variable : php_admin_value[sendmail_from]=test@mondomain.tld
Sauvegarder , attendre que php recharge la config (quelques minutes).
4) Vérification de la bonne application des valeurs via PHPinfo.
Vous pouvez vérifier via un PHP info dans les valeurs : sendmail_from et sendmail_path.
Elles devront êtres celles configurée dans les deux custome.
En Fast-CGI ( avec cloudlinux)
A écrire ...
Directadmin optimisation apache fast-cgi
Comment augmenter le nombre de process fast-cgi dans une configuration Apache Fast-CGI dans directadmin (avec ou sans cloudlinux).
Par défaut les valeurs sont assez basse dans la configuration Fast-cgi d'apache sous Directadmin:
- FcgidMaxProcesses 300
- FcgidMaxProcessesPerClass 8
C'est normalement suffisant pour des sites web à trafic normal (quelques centaines voir millier de visiteurs par jour).
Cependant, si votre site génère plus de trafic ou de visiteurs, vous pouvez rapidement saturer le nombre de process autorisé par user.
Si dans les erreurs logs vous rencontrez ce genre d'erreur : mod_fcgid: can't apply process slot for
[Wed Feb 26 11:25:10.427390 2025] [fcgid:warn] [pid 3066103:tid 3066338] [remote xxx.xxx.xxx.xxx:52376] mod_fcgid: can't apply process slot for /usr/local/safe-bin/fcgid81.sh /usr/local/directadmin/data/users/myuser/php/mywebsite.tld.ini -d sendmail_from="myuser@mywebsite.tld" -d open_basedir="/home/myuser/:/tmp:/var/tmp:/opt/alt/php81/usr/share/pear/:/dev/urandom:/usr/local/lib/php/:/usr/local/php81/lib/php/" -d mail.log="/home/myuser/.php/php-mail.log", referer: https://mywebsite.tld/
Procédure pour augmenter le nombre de process :
mkdir -p /usr/local/directadmin/custombuild/custom/ap2/conf/extra/
cp -rp /usr/local/directadmin/custombuild/configure/ap2/conf/extra/httpd-fcgid.conf /usr/local/directadmin/custombuild/custom/ap2/conf/extra/httpd-fcgid.conf
sed -i 's/ FcgidMaxProcesses 300/ FcgidMaxProcesses 900/g' /usr/local/directadmin/custombuild/custom/ap2/conf/extra/httpd-fcgid.conf
sed -i 's/ FcgidMaxProcessesPerClass 8/ FcgidMaxProcessesPerClass 100/g' /usr/local/directadmin/custombuild/custom/ap2/conf/extra/httpd-fcgid.conf
cd /usr/local/directadmin/custombuild
./build rewrite_confs
Vous pouvez ensuite vérifier que l'update a bien été appliqué dans le fichier de configuration d'apache :
cat /etc/httpd/conf/extra/httpd-fcgid.conf
Lien de documentation officiel de directadmin : https://docs.directadmin.com/webservices/apache/customizing.html