Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
pratique:informatique:start_serveur [14/08/2023 11:19] Zatalyzpratique:informatique:start_serveur [30/05/2024 11:08] (Version actuelle) – [Xen] Zatalyz
Ligne 4: Ligne 4:
 Les commandes sont présentées pour Debian.  Les commandes sont présentées pour Debian. 
  
-===== Apt ; logiciels à installer =====+===== Installation ===== 
 +Lorsque c'est possible, les options qui font que c'est mieux... 
 + 
 +==== Partitions et LVM ==== 
 +Utiliser la puissance de LVM... En partition primaire :  
 +  * /boot = 510MB. Debian le met en ext2 par défaut (bookworm). Ni trop ni trop peu. 
 +  * /swap = 2GB. Potentiellement autant que de RAM 2GB c'est pas mal ceci dit. 
 +  * "/" = le reste qui va en réalité être en VG 
 + 
 +En LVM, faire un VG avec le reste du disque, puis faire les premiers lv : 
 +  * / = 50GB (chez moi ce VG est appelé "root"). 
 +  * /tmp = 5GB, ext4 
 + 
 +=== Mémo de commandes LVM === 
 +Plus de détail sur [[https://khaganat.net/wikhan/fr:lvm_snapshot]]. 
 + 
 +Créer un snaphshot de root (si sur le VG appelé VgPoste) :  
 +  sudo lvcreate -L 20g -s -n snap_root_$(date --iso) /dev/VgPoste/root 
 + 
 +S'il y a un souci, on revient en arrière : 
 +  sudo lvconvert --merge /dev/VgPoste/snap_root_XXX 
 + 
 +Et s'il y a un souci pour recréer un snapshot après ça, c'est : 
 +  sudo lvchange --refresh VgPoste 
 + 
 +Ne pas oublier de redémarrer après un retour en arrière sur root... 
 + 
 +Pour supprimer un volume, s'assurer qu'il est démonté, puis simplement : 
 + 
 +  lvremove /dev/NOM_VG/NOM_LV 
 + 
 +===== Apt : logiciels à installer ===== 
 +<WRAP center round info 60%> 
 +Révisé avec Bookworm. 
 +</WRAP>
  
 <code>apt update <code>apt update
-apt install nano bash-completion cron logrotate msmtp msmtp-mta apt-listbugs debsums apt-listchanges sudo bsd-mailx sshguard rsyslog+apt install nano bash-completion cron logrotate apt-listbugs debsums apt-listchanges sudo rsyslog net-tools htop iotop-c nload binutils dnsutils 
 +apt install msmtp msmtp-mta bsd-mailx sshguard git
 apt upgrade apt upgrade
 </code> </code>
 +La première ligne, un peu forcé (et certains sont déjà installés suivant les versions de debian). La seconde, ça dépend un peu des serveurs.
  
   * **nano** sauf si vous aimez vim. Si vous êtes à l'aise avec vim, il est installé de base. Sinon, nano est un éditeur de texte un peu plus facile à utiliser pour les néophytes, car les raccourcis sont affichés et son comportement est assez proche des éditeurs de textes plus classiques.    * **nano** sauf si vous aimez vim. Si vous êtes à l'aise avec vim, il est installé de base. Sinon, nano est un éditeur de texte un peu plus facile à utiliser pour les néophytes, car les raccourcis sont affichés et son comportement est assez proche des éditeurs de textes plus classiques. 
Ligne 22: Ligne 58:
   * **sshguard** ajoute un peu d'ennui aux attaquants par SSH, pourquoi s'en priver ? Rien à configurer, de base ça marche.   * **sshguard** ajoute un peu d'ennui aux attaquants par SSH, pourquoi s'en priver ? Rien à configurer, de base ça marche.
   * **rsyslog** permet d'avoir des fichiers de log lisible avec systemd, sans pour autant gêner son fonctionnement de base.   * **rsyslog** permet d'avoir des fichiers de log lisible avec systemd, sans pour autant gêner son fonctionnement de base.
 +  * **net-tools**, **htop**, **iotop-c**, **binutils**, **dnsutils** et **nload** fournissent des utilitaires fort utiles quand on croise un souci. Plus d'infos [[pratique:informatique:debug_problem|ici]]. 
  
  
Ligne 44: Ligne 81:
 </code> </code>
  
 +Éviter aussi d'installer plus que nécessaire en créant dans ''/etc/apt/apt.conf.d/'' le fichier qui va bien :
 +  sudo nano /etc/apt/apt.conf.d/00recommandperso
 +Mettre le contenu suivant : 
 +  APT::Install-Recommends "0";
 +  APT::Install-Suggests "0";
 +
 +==== Xen ====
 +Si on veut jouer avec Xen (et en sélectionnant les recommandés utiles, donc pas "tout") : 
 +  sudo apt install xen-tools xen-system-amd64 grub-xen-host qemu-utils gnupg arch-test bridge-utils qemu-system-xen shared-mime-info xdg-user-dirs
 +
 +On fait un reboot et on voit si la commande "xl list" fonctionne, sinon faut [[https://khaganat.net/wikhan/fr:xen#booter_sur_le_bon_noyauconfiguration_de_grub|bidouiller grub]].
 +
 +=== Réseau en local derrière un routeur ===
 +Le routeur gère déjà pas mal de choses, ça va être assez simple.
 +
 +Donc on gère surtout surtout ce qui entre (input) et sort (output). On peut oublier les trucs genre forward, nat, etc). 
 +
 +
 +
 +=== Réseau de base (serveur chez un hébergeur) ===
 +Là, pas de routeur en amont (même si l'hébergeur peut gérer d'autres trucs genre attaque DDoS), donc on va paramétrer la partie "NAT".
 +
 +<WRAP center round todo 60%>
 +
 +Configuration du réseau : je vais laisser l'hyperviseur gérer l'aspect pare-feu. Modifier ''/etc/sysctl.conf'' et décommentez/ajoutez la ligne suivante :
 +
 +  net.ipv4.ip_forward=1
 +
 +(Et ptet la suivante sur l'ipv6 ?).
 +
 +Pour une prise en charge immédiate des modification du fichier ''/etc/sysctl.conf'' taper la commande :
 +
 +  sysctl -p /etc/sysctl.conf
 +
 +Ensuite... faut configurer mais faut aussi que je comprenne [[pratique:informatique:parefeu:nftables|nftables]].
 +</WRAP>
  
 ===== Sécurité ===== ===== Sécurité =====
Ligne 129: Ligne 202:
  
 <wrap warning>Testez bien la connexion avant de vous déconnecter, dans un autre terminal ! Un mauvais paramétrage peut vous empêcher d'accéder à votre serveur !</wrap> <wrap warning>Testez bien la connexion avant de vous déconnecter, dans un autre terminal ! Un mauvais paramétrage peut vous empêcher d'accéder à votre serveur !</wrap>
 +
 +==== Autres logiciels de sécurité ====
 +=== Rkhunter ===
 +<WRAP center round info 100%>
 +rkhunter (pour Rootkit Hunter) est un programme qui essaye de détecter les rootkits, portes dérobées et exploits. Pour cela, il compare le hash SHA256, SHA512, SH1 et MD5 des fichiers importants avec les hash connus, qui sont accessibles à partir d'une base de données en ligne. Il alerte également l'utilisateur lorsqu'il trouve des permissions qu'il juge anormales, des fichiers cachés, des chaînes suspectes dans le kernel etc.
 +
 +De par l'exhaustivité des tests qu'il effectue, et à cause du nombre de systèmes sur lesquels il tourne, rkhunter renvoie généralement de nombreux avertissements. L'analyse de ces avertissements (warnings) nécessite une bonne connaissance des systèmes Unix. Dans une écrasante majorité des cas, ces avertissements sont bénins et peuvent être ignorés.
 +
 +Source : [[https://doc.ubuntu-fr.org/rkhunter|Ubuntu-fr]]
 +</WRAP>
 +J'ai souvenir qu'il est effectivement bavard. Et aussi que ce n'est pas une sécurité en soi, juste un outil permettant de détecter certains problèmes. 
 +
 +  sudo apt install rkhunter
 +
 +On le configure un chouia :
 +
 +  sudo nano /etc/rkhunter.conf
 +
 +Modifier les options suivantes pour qu'elles aient ces valeurs : 
 +
 +<code>
 +UPDATE_MIRRORS=1
 +MIRRORS_MODE=0
 +#WEB_CMD="/bin/false"
 +ALLOWHIDDENDIR=/etc/.git
 +ALLOWHIDDENDIR=/dev/.lxc
 +ALLOWHIDDENDIR="/dev/.udev"
 +ALLOWHIDDENDIR="/dev/.static"
 +ALLOWDEVFILE="/dev/.udev/rules.d/root.rules"
 +PKGMGR=DPKG
 +ALLOW_SSH_PROT_V1=0
 +</code>
 +
 +Après ces modifications, exécuter ceci : 
 +  rkhunter -C
 +  rkhunter --propupd
 +
 +Modifier aussi ''/etc/default/rkhunter''.
 +<code>CRON_DAILY_RUN="true"
 +CRON_DB_UPDATE="true"
 +APT_AUTOGEN="yes"</code>
 +
 +Quand à envoyer un mail quotidien... ça fait du bruit, qu'il se passe un truc ou non. Et il faut configurer l'envoi de mail.
 +
 +On se fait un petit test en mettant à jour l'ensemble puis en affichant juste ce qui est avec des warnings : 
 +<code>rkhunter --update
 +rkhunter --list
 +rkhunter -c --rwo</code>
 +
 +=== Fail2ban/Reaction et Pare-feu (iptables, nftable, ipset, etc) ===
 +Tout est noté dans un article à part, parce que ça commençait à être long : [[pratique:informatique:parefeu:start]].
 +
 +
 +
 +
 +
 +===== Grub =====
 +<WRAP center round todo 60%>
 +Attention, chez OVH (et d'autres potentiellement ?) grub/le système a tendance à ne pas être sur notre noyau mis à jour. Faudrait que je retrouve les détails, mais ça finit par mettre un sacré bazar...
 +</WRAP>
 +
 +Paramétrer Grub pour qu'il ne mette pas 4 secondes à se lancer…
 +  * ''nano /etc/default/grub''
 +    * ''GRUB_TIMEOUT=1''
 +  * ''grub-mkconfig -o /boot/grub/grub.cfg''
 +
 ===== Confort personnel dans l'interface ===== ===== Confort personnel dans l'interface =====
  
Ligne 180: Ligne 319:
   * https://help.ubuntu.com/community/CustomizingBashPrompt   * https://help.ubuntu.com/community/CustomizingBashPrompt
  
 +Et pour générer autre chose :
 +  * https://bash-prompt-generator.org/
 ==== Changer le nom de la machine ==== ==== Changer le nom de la machine ====
 Si vous avez un VPS ou un dédié, vous avez peut-être un début de ligne en console qui ressemble à "root@vps158745547". C'est moche et surtout, c'est vite fait de s'emmêler les pinceaux si vous avez plusieurs consoles ouvertes sur plusieurs VPS. Si vous avez un VPS ou un dédié, vous avez peut-être un début de ligne en console qui ressemble à "root@vps158745547". C'est moche et surtout, c'est vite fait de s'emmêler les pinceaux si vous avez plusieurs consoles ouvertes sur plusieurs VPS.
CC Attribution-Noncommercial-Share Alike 4.0 International Driven by DokuWiki
pratique/informatique/start_serveur.1692004748.txt.gz · Dernière modification : 14/08/2023 11:19 de Zatalyz