Post

OVH VPS-1 Debian 13

OVH VPS-1 Debian 13

vps-1780de45.vps.ovh.net
4 vCPU Cores
8 Go RAM
75 Go SSD NVME
1 Backup auto
Location: Gravelines
IP: 51.38.37.240
IPv6: 2001:41d0:305:2100::c1c
OS: Debian 13

OVH VPS-1

OVH

Première connexion

Après avoir récupére le mot de passe sur sur le site OVH

Se connecter utilisateur debian via SSH

1
ssh debian@51.38.37.240

La procédure nous demande la création d’un nouveau mot de passe puis reconnexion utilisateur “debian”

Modifier le mot de passe root

1
2
3
sudo -s
passwd
exit

Autoriser la connexion root en créant le fichier /etc/ssh/sshd_config.d/10-root.conf

1
echo "PermitRootLogin yes" > /etc/ssh/sshd_config.d/10-root.conf

Redémarrer le service sshd

1
systemctl restart sshd

Se déconnecter de la session SSH en cours

Se connecter en root via SSH

1
ssh root@51.38.37.240

Mise à jour debian

Mise à jour

1
apt update && apt upgrade -y

Renommer utilisateur debian en uservps

Renommer l’utilisateur debian en uservps

1
2
3
4
# Renommer l’utilisateur
usermod -l uservps debian
# Renommer le dossier /home
usermod -d /home/uservps -m uservps

Modifier les accès sudo en remplaçant debian par uservps

1
sed -i 's/debian/uservps/g' /etc/sudoers.d/90-cloud-init-users

Modifier le paramétrage SSH pour interdire la connexion root

1
2
3
4
# Supprimer le PermitRootLogin yes
rm /etc/ssh/sshd_config.d/10-root.conf
# Redémarrer le serveur sshd: 
systemctl restart sshd

Date et heure + Synchro

Reconfigurer locales

Activer uniquement fr_FR.UTF-8

1
dpkg-reconfigure locales

Default fr_FR.UTF-8

1
2
3
Generating locales (this might take a while)...
  fr_FR.UTF-8... done
Generation complete.

Activer le fuseau Europe/Paris

1
timedatectl set-timezone Europe/Paris

Horloge système synchronisée : timedatectl

1
2
3
4
5
6
7
               Local time: Thu 2025-11-27 20:32:22 CET
           Universal time: Thu 2025-11-27 19:32:22 UTC
                 RTC time: Thu 2025-11-27 19:32:22
                Time zone: Europe/Paris (CET, +0100)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

Motd

Motd

1
rm /etc/motd && nano /etc/motd
1
2
3
4
5
6
7
8
9
10
11
12
 __   __ ___  ___            ___ __   __ _  _         
 \ \ / /| _ \/ __|          / _ \\ \ / /| || |        
  \ V / |  _/\__ \         | (_) |\ V / | __ |        
   \_/  |_|  |___/      _   \___/  \_/  |_||_|        
           _  _ (_) __ | |__    ___  _  _             
          | || || |/ _|| / / _ / -_)| || |            
           \_, ||_|\__||_\_\(_)\___| \_,_|            
  ___  _   |__/__ ___     ____ ____   ___  _ _    __  
 | __|/ |   |__ /( _ )   |__ /|__  | |_  )| | |  /  \ 
 |__ \| | _  |_ \/ _ \ _  |_ \  / /_  / / |_  _|| () |
 |___/|_|(_)|___/\___/(_)|___/ /_/(_)/___|  |_|  \__/ 
                                                                                                                       

Outils

Quelques outils

1
apt install rsync curl tmux jq figlet git tree -y

Hostname

Hostname yick.eu

1
hostnamectl set-hostname yick.eu

Vérifier: hostnamectl

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 Static hostname: yick.eu
       Icon name: computer-vm
         Chassis: vm 🖴
      Machine ID: e0cdfae1b8884977a07acb4570fd559d
         Boot ID: 096af63faa0145cb931f4c204bb9de24
    Product UUID: e0cdfae1-b888-4977-a07a-cb4570fd559d
    AF_VSOCK CID: 1
  Virtualization: kvm
Operating System: Debian GNU/Linux 13 (trixie)        
          Kernel: Linux 6.12.48+deb13-cloud-amd64
    Architecture: x86-64
 Hardware Vendor: OpenStack Foundation
  Hardware Model: OpenStack Nova
 Hardware Serial: e0cdfae1-b888-4977-a07a-cb4570fd559d
Firmware Version: 1.16.3-debian-1.16.3-2~bpo12+1
   Firmware Date: Tue 2014-04-01
    Firmware Age: 11y 7month 4w                       

Déconnexion ‘root’

Se déconnecter de la session ssh root

OpenSSH, clé et script

OpenSSH
connexion avec clé
sur l'ordinateur de bureau Générer une paire de clé curve25519-sha256 (ECDH avec Curve25519 et SHA2) pour une liaison SSH avec le serveur.

1
ssh-keygen -t ed25519 -o -a 100 -f ~/.ssh/vps-1780de45

Envoyer les clés publiques sur le serveur KVM

1
ssh-copy-id -i ~/.ssh/vps-1780de45.pub uservps@51.38.37.240

sur le serveur KVM On se connecte via SSH

1
ssh uservps@51.38.37.240

Créer la configuration utilisateur SSH dans le VPS

1
sudo nano /etc/ssh/sshd_config.d/10-uservps.conf

Ajouter le contenu suivant

1
2
3
#PasswordAuthentication yes
Port = 55240
PasswordAuthentication no

Relancer le serveur

1
sudo systemctl restart sshd

Test connexion

1
ssh -p 55240 -i ~/.ssh/vps-1780de45 uservps@51.38.37.240

Historique de la ligne de commande

Ajoutez la recherche d’historique de la ligne de commande au terminal Se connecter en utilisateur debian Tapez un début de commande précédent, puis utilisez shift + up (flèche haut) pour rechercher l’historique filtré avec le début de la commande.

1
2
3
# Global, tout utilisateur
echo '"\e[1;2A": history-search-backward' | sudo tee -a /etc/inputrc
echo '"\e[1;2B": history-search-forward' | sudo tee -a /etc/inputrc

Parefeu

Texte alternatif

Alternative: Configurer le pare-feu sous Linux avec Iptables

Installation UFW sur Debian / Ubuntu

1
sudo apt install ufw

Les règles

1
2
3
4
5
# Pour autoriser un port personnalisé et correspondant à votre accès SSH
sudo ufw allow 55240/tcp  # port SSH
sudo ufw allow https      # port 443
# Activer le parefeu
sudo ufw enable

Command may disrupt existing ssh connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startup

Vérifier : sudo ufw status

1
2
3
4
5
6
7
8
Status: active

To                         Action      From
--                         ------      ----
55240/tcp                  ALLOW       Anywhere                  
443                        ALLOW       Anywhere                  
55240/tcp (v6)             ALLOW       Anywhere (v6)             
443 (v6)                   ALLOW       Anywhere (v6)             

Docker

Docker Debian

Nebula + NFS

Nebula Lighthouse

Nebula

Client NFS

Configuration du client NFS

installez le paquet nfs

1
sudo apt install nfs-common # debian

Une fois le package installé, exécutez la commande suivante pour créer les répertoires de montage cibles

1
2
sudo mkdir -p /srv/media/
sudo chown 1000:1000 -R /srv/media

Pangolin

Créer un dossier

1
2
sudo mkdir /srv/pangolin
sudo chown $USER:debian /srv/pangolin

Prérequis

  • Nom de domaine VPS: yick.eu
  • Ports TCP 80, 443 et port UDP 51820, 21820 ouverts sur les machines concernées
  • Adresse mail: pangolin@cinay.eu

Installation

1
2
3
cd /srv/pangolin/
curl -fsSL https://static.pangolin.net/get-installer.sh | bash
sudo ./installer

Déroulement installation

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
Welcome to the Pangolin installer!
This installer will help you set up Pangolin on your server.

Please make sure you have the following prerequisites:
- Open TCP ports 80 and 443 and UDP ports 51820 and 21820 on your VPS and firewall.

Lets get started!

=== Basic Configuration ===
Do you want to install the Enterprise version of Pangolin? The EE is free for persoal use or for businesses making less than 100k USD annually. (yes/no): no
Enter your base domain (no subdomain e.g. example.com): yick.eu
Enter the domain for the Pangolin dashboard (default: pangolin.yick.eu): 
Enter email for Let's Encrypt certificates: pangolin@cinay.eu
Do you want to use Gerbil to allow tunneled connections (yes/no) (default: yes): 

=== Email Configuration ===
Enable email functionality (SMTP) (yes/no) (default: no): 

=== Advanced Configuration ===
Is your server IPv6 capable? (yes/no) (default: yes): 
Do you want to download the MaxMind GeoLite2 database for geoblocking functionality? (yes/no) (default: yes): 

=== Generating Configuration Files ===

Configuration files created successfully!

=== Downloading MaxMind Database ===
Downloading MaxMind GeoLite2 Country database...
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100 4805k  100 4805k    0     0  14.4M      0 --:--:-- --:--:-- --:--:-- 48.3M
MaxMind GeoLite2 Country database downloaded successfully!

=== Starting installation ===
Would you like to install and start the containers? (yes/no) (default: yes): 
Would you like to run Pangolin as Docker or Podman containers? (default: docker): 


=== CrowdSec Install ===                                                                           1
Would you like to install CrowdSec? (yes/no) (default: no):       

=== Setup Token ===
Waiting for Pangolin to generate setup token...
Setup token: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

This token is required to register the first admin account in the web UI at:
https://pangolin.yick.eu/auth/initial-setup

Save this token securely. It will be invalid after the first admin is created.

Installation complete!

To complete the initial setup, please visit:
https://pangolin.yick.eu/auth/initial-setup

Organisation: pangoyan

Noeud: pangoyanone
Installer Newt via docker compose

Cet article est sous licence CC BY 4.0 par l'auteur.