Serveur Debian

Administration con centré . com !

Serveur Debian

Debian :

                sudo apt update && sudo apt upgrade -y
                sudo apt update && sudo apt full-upgrade -y
                sudo apt autoremove -y
                sudo apt clean
                sudo timedatectl set-timezone Europe/Paris
                timedatectl status
              
cd ~ - cd $HOME - pwd

IP Static pour un serveur local

              ip -4 addr
              ip route
              nslookup google.com

              sudo systemctl status networking
              ping -c 4 google.com
              chmod -R
              su -  #connexion a l'utilisateur système root cela évite de se tapé sudo a chaque début de ligne !

              
                          
Edition du fichier
            cp /etc/network/interfaces /etc/network/interfaces-old # sauvegarde du fichier
            sudo nano /etc/network/interfaces
            
              #iface enp0s3 inet dhcp
              iface enp0s3 inet static
              address 192.168.1.250/24
              dns-nameservers 212.27.40.240 212.27.40.241
              post-up iptables-restore < /etc/iptables.up.rules
              post-up ip6tables-restore < /etc/ip6tables.up.rules
            
            sudo systemctl restart networking
            sudo systemctl status networking
            sudo reboot
          

Bienvenue !

message statique simple de bienvenue, Histoire d'identifier que c'est le bon serveur!!


textfancy.com
patorjk.com
        ______                                                                    __               ________                     __     
        /      \                                                                  |  \             |        \                   |  \    
        |  ▓▓▓▓▓▓\ ______   ______  __     __  ______  __    __  ______        ____| ▓▓ ______       \▓▓▓▓▓▓▓▓ ______   _______ _| ▓▓_   
        | ▓▓___\▓▓/      \ /      \|  \   /  \/      \|  \  |  \/      \      /      ▓▓/      \        | ▓▓   /      \ /       \   ▓▓ \  
        \▓▓    \|  ▓▓▓▓▓▓\  ▓▓▓▓▓▓\\▓▓\ /  ▓▓  ▓▓▓▓▓▓\ ▓▓  | ▓▓  ▓▓▓▓▓▓\    |  ▓▓▓▓▓▓▓  ▓▓▓▓▓▓\       | ▓▓  |  ▓▓▓▓▓▓\  ▓▓▓▓▓▓▓\▓▓▓▓▓▓  
        _\▓▓▓▓▓▓\ ▓▓    ▓▓ ▓▓   \▓▓ \▓▓\  ▓▓| ▓▓    ▓▓ ▓▓  | ▓▓ ▓▓   \▓▓    | ▓▓  | ▓▓ ▓▓    ▓▓       | ▓▓  | ▓▓    ▓▓\▓▓    \  | ▓▓ __ 
        |  \__| ▓▓ ▓▓▓▓▓▓▓▓ ▓▓        \▓▓ ▓▓ | ▓▓▓▓▓▓▓▓ ▓▓__/ ▓▓ ▓▓          | ▓▓__| ▓▓ ▓▓▓▓▓▓▓▓       | ▓▓  | ▓▓▓▓▓▓▓▓_\▓▓▓▓▓▓\ | ▓▓|  \
        \▓▓    ▓▓\▓▓     \ ▓▓         \▓▓▓   \▓▓     \\▓▓    ▓▓ ▓▓           \▓▓    ▓▓\▓▓     \       | ▓▓   \▓▓     \       ▓▓  \▓▓  ▓▓
        \▓▓▓▓▓▓  \▓▓▓▓▓▓▓\▓▓          \▓     \▓▓▓▓▓▓▓ \▓▓▓▓▓▓ \▓▓            \▓▓▓▓▓▓▓ \▓▓▓▓▓▓▓        \▓▓    \▓▓▓▓▓▓▓\▓▓▓▓▓▓▓    \▓▓▓▓ 
          sudo nano /etc/motd
        
messages dynamiques : /etc/update-motd.d/ messages de session utilisateur : dans /etc/profile ou .bashrc ou .profile echo "Bienvenue sur le serveur !"

Fish Shell

Console ludique en couleur

sudo apt update
      sudo apt install fish
      sudo chsh -s /usr/bin/fish
      fish
      fishshell.com

Explorez votre arborescence Linux avec tree

sudo apt update
    sudo apt-get install tree
    tree
    tree -d
    tree -a -u -g

Protéger son serveur ?

La sécurisation d'un serveur est une tâche cruciale

  • Pare-feu (accès non autorisés): UFW
  • Tentatives intrusion (activités malveillantes bannit les adresses IP) : Fail2Ban
  • Antivirus (logiciels et fichier malveillants) : ClamAV
  • Surveillance (état de santé du serveur) : Nagios, Zabbix ou Prometheus
  • Sécurisation des accès : SSH & Port
  • Mises à jour (correctifs de sécurité)
  • Sécurité des applications web (injections SQL...) : ModSecurity

Firewall Un pare-feu ? UFW (pare-feu)

UFW, est un utilitaire conçu pour simplifier la gestion du pare-feu intégré à Debian. Plutôt que de recourir à des commandes complexes pour modifier directement les iptables, UFW permet de gérer les règles du pare-feu de manière intuitive et simplifiée.

UFW protège votre serveur des accès non autorisés en filtrant les connexions réseau.
WAF protège vos applications web des attaques courantes comme les injections SQL, les XSS, et les attaques de force brute.

	  
	  
	 

        ss -ap  #afficher sockets réseau actives
        sudo apt install net-tools
		apt-get install ufw -y
		
		ufw allow ssh

     
        ufw allow 2222/tcp    			  # changé le port SSH (ex : 2222) :
		
		
		ufw allow OpenSSH                 #pour ne pas te faire verrouiller hors du serveur
        #sudo ufw allow ssh               #Autorise les connexions entrantes sur le port SSH (port 22 par défaut)
        #sudo ufw delete allow 22          
		 ufw delete 3
		  ufw reset                  #réinitialiser entièrement

        ufw default allow outgoing   # Politique par défaut pour autoriser toutes les connexions sortantes
        ufw default deny incoming    # Politique par défaut pour refuser toutes les connexions entrantes
        ufw app list                 # Liste toutes les applications disponibles

        ufw status numbered          # Affiche l'état actuel de UFW avec les règles numérotées
        ufw status verbose			 # Vérifie que tout est OK


        ufw enable                   # Active le pare-feu UFW
        ufw disable                  # Désactive complètement UFW
		systemctl start ufw          # le service peut tourner sans filtrer quoi que ce soit)
        systemctl restart ufw
        systemctl stop ufw

        ufw allow 80/tcp   # HTTP
        ufw allow 443/tcp  # HTTPS
        ufw allow 21/tcp
        ufw allow 20/tcp
        ufw allow 49156/tcp

#  Ports réellement à l’écoute 
ss -tuln  
netstat -tuln




      

Installation de Fail2ban



     # sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local   # jail.conf (c'est écrasé à chaque mise à jour).
     # sudo nano /etc/fail2ban/jail.local  #Créer la config personnalisée


rm -rf /etc/fail2ban
apt-get purge --auto-remove fail2ban -y

apt-get install fail2ban -y
systemctl restart fail2ban
systemctl status fail2ban


apt-get update && apt-get install fail2ban -y
systemctl restart fail2ban
systemctl enable fail2ban
systemctl status fail2ban


Crée une config propre par servive

nano /etc/fail2ban/jail.d/ssh.conf
[sshd]
enabled = true
port = 22
logpath = /var/log/auth.log
maxretry = 5
findtime = 600
bantime = 3600
ignoreip = 127.0.0.1 192.168.1.0/24  86.202.148.239


fail2ban-client status sshd
	  
	  


Fail2ban & UFW


      sudo nano /var/run/fail2ban/fail2ban.sock








Désinstallation complète de Fail2Ban  & les fichiers résiduels (au cas où)
apt-get purge --auto-remove fail2ban -y
rm -rf /etc/fail2ban
rm -rf /etc/fail2ban
rm -rf /var/log/fail2ban.log

cat /etc/fail2ban/jail.d/ssh.conf
[sshd]
enabled = true
port = 22
logpath = /var/log/auth.log
maxretry = 5
findtime = 600
bantime = 3600
ignoreip = 127.0.0.1 192.168.1.42


      
        [DEFAULT]
        banaction = ufw
        bantime  = 10h    # 10 heures de 
        findtime  = 10m
        maxretry = 5

        [ufw]
        enabled = true
        port = all
        filter = ufw
        logpath = /var/log/ufw.log
        maxretry = 3

        [sshd]
        enabled = true
        port = ssh
        filter = sshd
        logpath = /var/log/auth.log
        maxretry = 5

      
      sudo systemctl restart fail2ban
      sudo systemctl restart ufw
      sudo systemctl stop postgresql
      sudo systemctl stop ufw
      sudo systemctl start fail2ban
      sudo systemctl start ufw

Commande	Sert à…	Niveau
systemctl status fail2ban			Vérifie que le service tourne	OS
fail2ban-client status				Vérifie que Fail2Ban fonctionne bien	App
fail2ban-client status sshd			Voit les détails de la jail sshd	Fine


      sudo systemctl status fail2ban
      sudo fail2ban-client status
      sudo apt remove --purge fail2ban
      sudo tail -f  /var/log/fail2ban.log

      sudo systemctl start fail2ban
      sudo systemctl status fail2ban


      sudo systemctl restart fail2ban
      sudo ls -l /var/run/fail2ban
      sudo mkdir -p /var/run/fail2ban
      sudo chown -R root:root /var/run/fail2ban
      sudo chmod 755 /var/run/fail2ban
      sudo journalctl -xeu fail2ban
      sudo ls -l /var/run/fail2ban/fail2ban.sock
      sudo apt remove --purge fail2ban
      sudo apt install fail2ban
      sudo rm -rf /etc/fail2ban




Console de surveillance : Htop

Console de surveillance avec graphiques représentant l'activité des processeurs et la consommation totale de mémoire

  sudo apt-get install htop
  htop
  [F2] accéder aux options
  
sudo tail -f /var/log/fail2ban.log sudo tail -f /var/log/monit.log sudo tail -f /var/log/vsftpd.log # Vide fichier de log sudo cat /dev/null > /var/log/vsftpd.log sudo truncate -s 0 /var/log/vsftpd.log sudo echo "" > /var/log/vsftpd.log