# Debian 12
!!!abstract "Objectif"
    Avoir installé Debian 12 et les dépendances principales pour avoir un OS pret à l'emploi, joignable en SSH.

![picture](/img/serveex/server.svg)

## Installation
---
1. [Paramètrage BIOS](https://www.debian.org/releases/stable/i386/ch03s06.fr.html#bios-setup)
2. [Téléchargement de l'image Debian](https://www.debian.org/download.fr.html)
3. [USB bootable (Rufus)](https://dev.to/devops2808/how-to-create-bootable-usb-installer-for-debian-12-4f66)
4. [Installer Debian et configurer SSH](https://www.howtoforge.com/tutorial/debian-minimal-server/)
5. Installer sudo et ajouter un utilisateur au groupe sudo, pour les privilèges administrateurs
    - Installer sudo : 
        
        Se connecter en root :

        `::::console $ su -` 

        mettre son mot de passe puis taper :

        `::::console # apt install sudo`

    - Ajouter l'utilisateur au groupe sudo : 

        `::::console # adduser <nomdutilisateur> sudo`

    La prochaine fois que l'utilisateur se connectera, il pourra utiliser la commande `sudo` et ainsi executer des commandes avec les privilèges administrateurs.

6. [Tout savoir sur la connexion à distance à la console (SSH)](https://www.digitalocean.com/community/tutorials/ssh-essentials-working-with-ssh-servers-clients-and-keys)
7. Optionnel - [UPS client en cas de coupure](https://www.sindastra.de/p/2078/how-to-connect-linux-server-to-synology-ups-server) / [et aussi](https://www.reddit.com/r/synology/comments/gtkjam/use_synology_nas_as_ups_server_to_safely_power/)
8. Optionnel - Réveil en cas de coupure de courant -> régler le BIOS S0 state
9. Optionnel - [Réveiller le serveur à distance (WoW - WoL)](https://dev.to/zakery1369/enable-wake-on-lan-on-debian-4ljd)

## CLI apps à avoir près de soi
---
Quelques app que vous utiliserez forcément à un moment donné, autant les installer dès le départ
```console
$ sudo apt update
$ sudo apt upgrade
$ sudo apt install vim btop ranger git duf neofetch samba cifs-utils tree unzip ufw
```

En plus :

- [gping](https://www.linode.com/docs/guides/how-to-use-gping-on-linux/) - Outil graphique de ping
- [lazydocker](https://github.com/jesseduffield/lazydocker) - Gestion de conteneurs docker en CLI

## Fonctions utiles
---
### Pare-feu
- [ufw](https://www.zenarmor.com/docs/network-security-tutorials/how-to-set-up-a-firewall-with-ufw-on-debian)
- [Firewalld](https://linuxcapable.com/how-to-install-firewalld-on-debian-linux/)

### Partage Samba (accès à un disque réseau distant)
- [Créer et accéder à un partage Samba](../../samba)


### Transfert de fichier via rsync

```console
$ sudo rsync -avhHSP  /source /destination
```
!!!note
    Ajoutez `::::console --exclude @eaDir` si la source est un NAS Synology
