GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment installer CSF (Config Server Firewall) sur CentOS 8

Présentation

CSF est un pare-feu Stateful Packet Inspection (SPI), une application de détection de connexion/intrusion et de sécurité pour les serveurs Linux.

Il se compose du pare-feu lui-même (CSF) qui est complet, simple, facile et flexible à configurer.

Il dispose également d'un démon d'échec de connexion (LFD) qui complète parfaitement CSF. Ce LFD fonctionne tout le temps et analyse périodiquement (toutes les X secondes) les dernières entrées du fichier journal pour les tentatives de connexion contre votre serveur qui échouent continuellement dans un court laps de temps. De telles tentatives sont souvent appelées « attaques par force brute » et le processus démon répond très rapidement à de tels modèles et bloque rapidement les IP offensantes.

Installer CSF sur CentOS 8

Comme prévu, CSF n'est pas disponible dans les référentiels CentOS officiels. Cependant, il est possible de l'installer car il est fortement lié à Perl et ce langage est supporté sur CentOS 8.

Alors, ouvrez une session de terminal et mettez à jour CentOS 8

sudo dnf install

À la fin, installez le Perl modules élémentaires et autres outils que nous utiliserons plus tard comme vim

sudo dnf install @perl curl tar vim

A la fin de l'installation, vous devez installer d'autres modules Perl supplémentaires sur CentOS 8

sudo dnf install perl-libwww-perl.noarch perl-LWP-Protocol-https.noarch perl-GDGraph

Vous pouvez vérifier l'installation de Perl en exécutant la commande :

[root@unixcop ~]# perl -v

This is perl 5, version 26, subversion 3 (v5.26.3) built for x86_64-linux-thread-multi
(with 55 registered patches, see perl -V for more detail)

Copyright 1987-2018, Larry Wall

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.

[root@unixcop ~]# 

Vous pouvez maintenant télécharger CSF en utilisant la commande curl

[root@unixcop ~]# curl -O https://download.configserver.com/csf.tgz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 2244k  100 2244k    0     0   655k      0  0:00:03  0:00:03 --:--:--  655k
[root@unixcop ~]# 

Comme vous pouvez le constater, il est assez léger. Maintenant, décompressez-le.

tar xvfz csf.tgz

Accédez donc au dossier généré, et à l'intérieur de celui-ci, exécutez le script d'installation appelé install .chut

cd csf
sudo sh install.sh

Cela lancera le processus d'installation et la configuration par défaut sera appliquée.

Configuration de CSF sur CentOS 8

Une fois installé, CFS applique de très bons paramètres par défaut, cependant, chacun de nous a quelques ajustements à faire.

Le fichier est /etc/csf/csf.conf qui doit être sauvegardé avant d'être modifié pour être sûr.

sudo vim /etc/csf/csf.conf

Et dans ce dossier, vous trouverez un tas de paramètres très bien documentés. Et l'une des sections les plus importantes est celle qui répertorie les ports ouverts pour les connexions entrantes et sortantes.

Dans ce même fichier, vous pouvez activer ou désactiver CSF en modifiant la valeur suivante :

TESTING = "1"

Pour

TESTING = "0"

De cette façon, vous indiquez au programme qu'il est prêt à démarrer.

Enregistrez les modifications et fermez le fichier.

Vous pouvez maintenant démarrer le service CSF.

sudo systemctl enable --now csf

Il est également conseillé de vérifier l'état du service pour voir s'il fonctionne correctement.

[root@unixcop csf]# sudo systemctl enable --now csf
[root@unixcop csf]# sudo systemctl status csf
● csf.service - ConfigServer Firewall & Security - csf
   Loaded: loaded (/usr/lib/systemd/system/csf.service; enabled; vendor preset: disabled)
   Active: active (exited) since Mon 2021-07-26 17:43:04 EET; 17s ago
  Process: 20176 ExecStart=/usr/sbin/csf --initup (code=exited, status=0/SUCCESS)
 Main PID: 20176 (code=exited, status=0/SUCCESS)

Jul 26 17:43:03 unixcop csf[20176]: ACCEPT  all opt    in * out lo  ::/0  -> ::/0
Jul 26 17:43:03 unixcop csf[20176]: LOGDROPOUT  all opt    in * out !lo  ::/0  -> ::/0
Jul 26 17:43:03 unixcop csf[20176]: LOGDROPIN  all opt    in !lo out *  ::/0  -> ::/0
Jul 26 17:43:03 unixcop csf[20176]: csf: FASTSTART loading DNS (IPv4)
Jul 26 17:43:03 unixcop csf[20176]: csf: FASTSTART loading DNS (IPv6)
Jul 26 17:43:03 unixcop csf[20176]: LOCALOUTPUT  all opt -- in * out !lo  0.0.0.0/0  -> 0.0.0.0/0
Jul 26 17:43:03 unixcop csf[20176]: LOCALINPUT  all opt -- in !lo out *  0.0.0.0/0  -> 0.0.0.0/0
Jul 26 17:43:03 unixcop csf[20176]: LOCALOUTPUT  all opt    in * out !lo  ::/0  -> ::/0
Jul 26 17:43:03 unixcop csf[20176]: LOCALINPUT  all opt    in !lo out *  ::/0  -> ::/0
Jul 26 17:43:04 unixcop systemd[1]: Started ConfigServer Firewall & Security - csf.
[root@unixcop csf]# 

Vous pouvez également vérifier les ports qui sont ouverts lorsque CSF est en cours d'exécution.

[root@unixcop csf]# sudo csf -p
Ports listening for external connections and the executables running behind them:
Port/Proto Open Conn  PID/User             Command Line                            Executable
22/tcp     4/6  1     (910/root)           /usr/sbin/sshd -D -oCiphers=aes256-g... /usr/sbin/sshd
323/udp    -/-  -     (853/chrony)         /usr/sbin/chronyd                       /usr/sbin/chronyd
[root@unixcop csf]# 

Activer l'interface utilisateur dans le pare-feu CSF sur CentOS

Le pare-feu CSF est livré avec une interface utilisateur autonome. Ceci est désactivé par défaut. Sur CentOS, installez les exigences suivantes yum install perl-IO-Socket-SSL perl-Net-SSLeay perl-Net-LibIDN perl-IO-Socket-INET6 perl-Socket6

yum install perl-IO-Socket-SSL perl-Net-SSLeay perl-Net-LibIDN perl-IO-Socket-INET6 perl-Socket

Modifier le fichier de configuration CSF

vim /etc/csf/csf.conf

Remplacez UI ="0" avec UI ="1"

Modifiez les paramètres suivants si nécessaire.

UI_PORT = "6666"
UI_USER = "username"
UI_PASS = "password"

Par défaut, seules les adresses IP sur liste blanche peuvent accéder à l'interface utilisateur. Pour mettre votre adresse IP sur liste blanche, exécutez

echo "YOUR_IP_ADDR" >> /etc/csf/ui/ui.allow

Si vous souhaitez autoriser l'interface utilisateur CSF à partir de toutes les adresses IP, définissez UI_ALLOW sur 0 dans csf.conf

UI_ALLOW = "0"

CSF utilise un SSL auto-signé, si vous avez un certificat SSL, vous pouvez l'utiliser. Le certificat SSL est disponible dans le dossier

/etc/csf/ui/

Pour utiliser le certificat SSL gratuit LetsEncrypt pour l'interface utilisateur CSF, j'ai défini le lien symbolique sur le certificat SSL.

cd /etc/csf/ui
mv server.key server.key.old
mv server.crt server.crt.old
ln -s /etc/letsencrypt/live/DOMAIN/fullchain.pem server.crt
ln -s /etc/letsencrypt/live/DOMAIN/privkey.pem server.key

Redémarrez maintenant CSF et LDF

systemctl restart lfd
systemctl restart csf

Cela demandera d'abord l'authentification de l'utilisateur. Après une connexion réussie, vous trouverez l'écran comme ci-dessous.

Conclusion

Vous avez donc appris à installer Config Server Firewall sur CentOS 8. Comme vous pouvez le constater, le processus n'est pas complexe, mais il nécessite quelques étapes supplémentaires pour terminer le processus.


Cent OS
  1. Comment installer le serveur Minecraft sur CentOS 7

  2. Comment installer Nginx sur CentOS 8

  3. Comment installer le serveur Teamspeak 3 sur CentOS 8

  4. Comment installer Config Server Firewall (CSF) sur Debian 11

  5. Comment installer le pare-feu CSF sur CentOS 7

Comment installer Nginx sur CentOS

Comment installer et configurer CSF (Config Server Firewall) sur Ubuntu 20.04 LTS

Comment installer MySQL 8 sur CentOS 8

Comment installer Config Server Firewall (CSF) sur Debian 11

Comment installer Shoutcast Server sur CentOS 8

Comment installer Config Server Firewall (CSF) sur Rocky Linux 8