<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Proxmox on slash-root.fr</title><link>https://beta.slash-root.fr/tags/proxmox/</link><description>Recent content in Proxmox on slash-root.fr</description><generator>Hugo -- gohugo.io</generator><language>fr-fr</language><lastBuildDate>Fri, 19 Jul 2024 21:54:45 +0200</lastBuildDate><atom:link href="https://beta.slash-root.fr/tags/proxmox/index.xml" rel="self" type="application/rss+xml"/><item><title>CrowdSec : Protéger l’authentification Proxmox</title><link>https://beta.slash-root.fr/crowdsec-proteger-lauthentification-proxmox/</link><pubDate>Thu, 18 Jul 2024 14:50:45 +0200</pubDate><guid>https://beta.slash-root.fr/crowdsec-proteger-lauthentification-proxmox/</guid><description>&lt;img src="https://beta.slash-root.fr/crowdsec-proteger-lauthentification-proxmox/cover.png" alt="Featured image of post CrowdSec : Protéger l’authentification Proxmox" /&gt;&lt;h2 id="introduction"&gt;&lt;a href="#introduction" class="header-anchor"&gt;&lt;/a&gt;Introduction
&lt;/h2&gt;&lt;p&gt;Ce guide explique comment protéger l'authentification sur Proxmox contre les attaques de Bruteforce à l'aide de CrowdSec. Suite aux dernières actualités de VMware, de nombreux utilisateurs ont migré vers Proxmox. Il est donc essentiel de sécuriser le portail d'authentification, exposé par défaut sur le port TCP 8006.&lt;/p&gt;
&lt;p&gt;Ce guide se base sur une installation de Proxmox sur Debian 12. Par défaut, &lt;code&gt;rsyslog&lt;/code&gt; n'est plus installé sur Debian 12. Nous verrons comment configurer cela avec &lt;code&gt;journald&lt;/code&gt; mais également avec &lt;code&gt;rsyslog&lt;/code&gt; si besoin.&lt;/p&gt;
&lt;hr /&gt;
&lt;h2 id="prérequis"&gt;&lt;a href="#pr%c3%a9requis" class="header-anchor"&gt;&lt;/a&gt;Prérequis
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Une machine Debian 12 avec un accès root ou sudo. Toutes les commandes présentées ci-dessous seront à exécuter en tant que &lt;code&gt;root&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Une connexion internet active.&lt;/li&gt;
&lt;li&gt;Proxmox installé&lt;/li&gt;
&lt;li&gt;CrowdSec installé (voir ici : &lt;a href="https://beta.slash-root.fr/crowdsec-installation-avec-bouncer-iptables-sur-debian-12/"&gt;Installation de CrowdSec&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;hr /&gt;
&lt;h2 id="installation-de-la-collection-pour-proxmox"&gt;&lt;a href="#installation-de-la-collection-pour-proxmox" class="header-anchor"&gt;&lt;/a&gt;Installation de la collection pour proxmox
&lt;/h2&gt;&lt;p&gt;En navigant sur le hub de CrowdSec, une collection pour proxmox est disponible.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Installer la collection :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cscli collections install fulljackz/proxmox
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Ceci a pour effet d'installer 2 parsers et 1 scénario.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Lister les parsers :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cscli parsers list
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# crowdsecurity/syslog-logs ✔️ enabled 0.8 /etc/crowdsec/parsers/s00-raw/syslog-logs.yaml&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# fulljackz/proxmox-logs ✔️ enabled 0.2 /etc/crowdsec/parsers/s01-parse/proxmox-logs.yaml&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Lister les sénarios :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cscli scenario list
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# fulljackz/proxmox-bf ✔️ enabled 0.2 /etc/crowdsec/scenarios/proxmox-bf.yaml&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Pour que ceux-ci soient pris en compte, le service CrowdSec doit être rechargé. Nous le ferons après quelques modifications.&lt;/p&gt;
&lt;hr /&gt;
&lt;h2 id="modification-du-parser-proxmox"&gt;&lt;a href="#modification-du-parser-proxmox" class="header-anchor"&gt;&lt;/a&gt;Modification du parser proxmox
&lt;/h2&gt;&lt;p&gt;Le parser spécifique à proxmox se situe ici : &lt;strong&gt;/etc/crowdsec/parsers/s01-parse/proxmox-logs.yaml&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Pour qu'il soit compatible avec la dernière version de Proxmox, nous allons l'éditer et apporter les modifications suivantes :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;pattern_syntax&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;PVE_AUTH_FAIL&lt;/span&gt;: &lt;span style="color:#e6db74"&gt;&amp;#39;authentication failure; rhost=::ffff:%{IP:client_ip} user=%{USERNAME:source_user}@%{WORD:realm} msg=&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Ajout : &lt;code&gt;::ffff:&lt;/code&gt;&lt;/p&gt;
&lt;hr /&gt;
&lt;h2 id="création-du-fichier-dacquisition"&gt;&lt;a href="#cr%c3%a9ation-du-fichier-dacquisition" class="header-anchor"&gt;&lt;/a&gt;Création du fichier d&amp;rsquo;acquisition
&lt;/h2&gt;&lt;p&gt;Afin que le parser Proxmox puisse être utilisé, il faut définir la méthode d'acquisition.&lt;/p&gt;
&lt;h3 id="utilisation-avec-journald"&gt;&lt;a href="#utilisation-avec-journald" class="header-anchor"&gt;&lt;/a&gt;Utilisation avec journald
&lt;/h3&gt;&lt;p&gt;Pour utiliser le parser avec journald :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Créez le fichier &lt;strong&gt;/etc/crowdsec/acquis.d/proxmox.yaml&lt;/strong&gt; avec le contenu suivant :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;journalctl_filter&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; - &lt;span style="color:#ae81ff"&gt;_SYSTEMD_UNIT=pvedaemon.service&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;labels&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;type&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;syslog&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="utilisation-avec-rsyslog"&gt;&lt;a href="#utilisation-avec-rsyslog" class="header-anchor"&gt;&lt;/a&gt;Utilisation avec rsyslog
&lt;/h3&gt;&lt;p&gt;Si vous préférez utiliser rsyslog avec le fichier de log &lt;code&gt;/var/log/syslog&lt;/code&gt; :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Installez &lt;code&gt;rsyslog&lt;/code&gt; si ce n'est pas déjà fait :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;apt install -y rsyslog
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Créez le fichier &lt;strong&gt;/etc/crowdsec/acquis.d/proxmox.yaml&lt;/strong&gt; avec le contenu suivant :&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-yaml" data-lang="yaml"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;---
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;filenames&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; - &lt;span style="color:#ae81ff"&gt;/var/log/syslog&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;labels&lt;/span&gt;:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;type&lt;/span&gt;: &lt;span style="color:#ae81ff"&gt;pvedaemon&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;hr /&gt;
&lt;h2 id="redémarrage-du-service"&gt;&lt;a href="#red%c3%a9marrage-du-service" class="header-anchor"&gt;&lt;/a&gt;Redémarrage du service
&lt;/h2&gt;&lt;p&gt;A présent, le service crowdsec peut être rechargé :&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;systemctl reload crowdsec
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;hr /&gt;
&lt;h2 id="vérification"&gt;&lt;a href="#v%c3%a9rification" class="header-anchor"&gt;&lt;/a&gt;Vérification
&lt;/h2&gt;&lt;p&gt;Nous allons vérifier le fonctionnement des parsers et du nouveau scénario dédié à proxmox.&lt;/p&gt;
&lt;p&gt;Pour cela, spammez la page de login de Proxmox, puis vérifiez les résultats :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Alertes :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cscli alerts list
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# | 2 │ Ip:66.66.66.66 │ fulljackz/proxmox-bf │ │ │ ban:1 │ 2024-07-18 12:13:37.498899667 +0000 UTC &lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Décisions :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cscli decisions list
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#75715e"&gt;# 15001 │ crowdsec │ Ip:66.66.66.66 │ fulljackz/proxmox-bf │ ban │ │ │ 7 │ 3h59m51.44622068s │ 2&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;hr /&gt;
&lt;h2 id="conclusion"&gt;&lt;a href="#conclusion" class="header-anchor"&gt;&lt;/a&gt;Conclusion
&lt;/h2&gt;&lt;p&gt;En suivant ce guide, vous avez sécurisé l'authentification de votre Proxmox contre les attaques de Bruteforce grâce à CrowdSec. &lt;/p&gt;</description></item><item><title>Proxmox : Template Oraclelinux9 avec Cloud-Init</title><link>https://beta.slash-root.fr/proxmox-template-oraclelinux9-avec-cloud-init/</link><pubDate>Fri, 31 May 2024 22:46:12 +0200</pubDate><guid>https://beta.slash-root.fr/proxmox-template-oraclelinux9-avec-cloud-init/</guid><description>&lt;img src="https://beta.slash-root.fr/proxmox-template-oraclelinux9-avec-cloud-init/cover.png" alt="Featured image of post Proxmox : Template Oraclelinux9 avec Cloud-Init" /&gt;&lt;p&gt;Cette procédure va permettre de créer un template de VM Oraclelinux 9 pour Proxmox avec Cloud-Init.&lt;/p&gt;
&lt;p&gt;L'intérêt sera de cloner ce template, puis de pouvoir se connecter directement en ssh au 1er démarrage de la VM. Le nom d'hôte, l'adressage ip, la(es) clef(s) ssh seront configurés à l'initialisation de la VM grâce à cloud-init.&lt;/p&gt;
&lt;p&gt;Ce template pourra éventuellement être utilisé par la suite avec une solution telle que Terraform / OpenTofu.&lt;/p&gt;
&lt;h2 id="création-du-template"&gt;&lt;a href="#cr%c3%a9ation-du-template" class="header-anchor"&gt;&lt;/a&gt;Création du template
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Se connecter sur un shell &lt;code&gt;root&lt;/code&gt; de l'hôte Proxmox &lt;code&gt;pvehost&lt;/code&gt; :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ssh root@pvehost
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Télécharger la dernière image cloud d'Oracle Linux :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;wget https://yum.oracle.com/templates/OracleLinux/OL9/u4/x86_64/OL9U4_x86_64-kvm-b234.qcow2
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Installer &lt;code&gt;libguestfs-tools&lt;/code&gt; si nécessaire et ajouter &lt;code&gt;qemu-guest-agent&lt;/code&gt; à l'image cloud précédemment téléchargée :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;apt install -y libguestfs-tools
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;virt-customize -a OL9U4_x86_64-kvm-b234.qcow2 --install qemu-guest-agent
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Créer une VM avec l'ID 666 qui sera le template :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;qm create &lt;span style="color:#ae81ff"&gt;666&lt;/span&gt; --name oraclelinux9-cloudinit --net0 virtio,bridge&lt;span style="color:#f92672"&gt;=&lt;/span&gt;vmbr1 --scsihw virtio-scsi-single
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;p&gt;
&lt;code&gt;virtio-scsi-single&lt;/code&gt; va permettre d'activer le paramètre &amp;quot;iothread&amp;quot; pour une meilleure gestion des inputs ouputs dans ce cas.
&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Elle sera nommée &lt;code&gt;oraclelinux9-cloudinit&lt;/code&gt; et la 1ère carte réseau sera rattachée au &lt;code&gt;vmbr1&lt;/code&gt; du serveur Proxmox.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ajouter un nouveau disque dur importé depuis l'image cloud :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;qm set &lt;span style="color:#ae81ff"&gt;666&lt;/span&gt; --scsi0 local:0,iothread&lt;span style="color:#f92672"&gt;=&lt;/span&gt;1,backup&lt;span style="color:#f92672"&gt;=&lt;/span&gt;off,format&lt;span style="color:#f92672"&gt;=&lt;/span&gt;qcow2,import-from&lt;span style="color:#f92672"&gt;=&lt;/span&gt;/root/OL9U4_x86_64-kvm-b234.qcow2
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Définir le disque dur en 1er boot sur la VM :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;qm set &lt;span style="color:#ae81ff"&gt;666&lt;/span&gt; --boot order&lt;span style="color:#f92672"&gt;=&lt;/span&gt;scsi0
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Définir le nombre de coeurs et la mémoire RAM de la VM :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;qm set &lt;span style="color:#ae81ff"&gt;666&lt;/span&gt; --cpu host --cores &lt;span style="color:#ae81ff"&gt;2&lt;/span&gt; --memory &lt;span style="color:#ae81ff"&gt;4096&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Attacher un disque Cloud-Init à la VM :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;qm set &lt;span style="color:#ae81ff"&gt;666&lt;/span&gt; --ide2 local:cloudinit
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;qm set &lt;span style="color:#ae81ff"&gt;666&lt;/span&gt; --agent enabled&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Ajuster les paramètres dans les options &lt;code&gt;Cloud-Init&lt;/code&gt; qui figureront dans le template (si nécessaire) :&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="1.png" alt="image-20240531214220236" /&gt;&lt;/p&gt;
&lt;p&gt;Ces options sont disponibles dans la WebUI du serveur Proxmox au niveau de la VM.&lt;/p&gt;
&lt;p&gt;Plus de détails ici &lt;a href="https://pve.proxmox.com/wiki/Cloud-Init_Support"&gt;&lt;a href="https://pve.proxmox.com/wiki/Cloud-Init_Support"&gt;https://pve.proxmox.com/wiki/Cloud-Init_Support&lt;/a&gt;&lt;/a&gt; sur les différents paramétrages.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Convertir la VM en template :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;qm template &lt;span style="color:#ae81ff"&gt;666&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="utilisation-du-template"&gt;&lt;a href="#utilisation-du-template" class="header-anchor"&gt;&lt;/a&gt;Utilisation du template
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Cloner entièrement le template en VM.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="2.png" alt="image-20240531214417948" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
Ajuster les paramètres &lt;code&gt;Cloud-Init&lt;/code&gt; de la VM si nécessaire.
&lt;/li&gt;
&lt;li&gt;
Démarrer la VM et récupérer l'IP (si nécessaire) :
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="3.png" alt="image-20240531222714404" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se connecter en SSH sur la VM avec la clef ssh renseignée dans cloud-init :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;julien@mypc:~$ ssh -i .ssh/demo admin@172.16.20.23
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#f92672"&gt;[&lt;/span&gt;admin@ol9-cloudinit ~&lt;span style="color:#f92672"&gt;]&lt;/span&gt;$ sudo -l
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Matching Defaults entries &lt;span style="color:#66d9ef"&gt;for&lt;/span&gt; admin on ol9-cloudinit:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; !visiblepw, always_set_home, match_group_by_gid, always_query_group_plugin, env_reset, env_keep&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;COLORS DISPLAY
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt; HOSTNAME HISTSIZE KDEDIR LS_COLORS&amp;#34;&lt;/span&gt;, env_keep&lt;span style="color:#f92672"&gt;+=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; env_keep&lt;span style="color:#f92672"&gt;+=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES&amp;#34;&lt;/span&gt;, env_keep&lt;span style="color:#f92672"&gt;+=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;LC_MONETARY LC_NAME LC_NUMERIC
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;&lt;span style="color:#e6db74"&gt; LC_PAPER LC_TELEPHONE&amp;#34;&lt;/span&gt;, env_keep&lt;span style="color:#f92672"&gt;+=&lt;/span&gt;&lt;span style="color:#e6db74"&gt;&amp;#34;LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY&amp;#34;&lt;/span&gt;,
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; secure_path&lt;span style="color:#f92672"&gt;=&lt;/span&gt;/sbin&lt;span style="color:#ae81ff"&gt;\:&lt;/span&gt;/bin&lt;span style="color:#ae81ff"&gt;\:&lt;/span&gt;/usr/sbin&lt;span style="color:#ae81ff"&gt;\:&lt;/span&gt;/usr/bin
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;User admin may run the following commands on ol9-cloudinit:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;(&lt;/span&gt;ALL&lt;span style="color:#f92672"&gt;)&lt;/span&gt; NOPASSWD: ALL
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description></item><item><title>Proxmox : ACME Certificate</title><link>https://beta.slash-root.fr/proxmox-acme-certificate/</link><pubDate>Mon, 22 Jan 2024 21:13:13 +0100</pubDate><guid>https://beta.slash-root.fr/proxmox-acme-certificate/</guid><description>&lt;img src="https://beta.slash-root.fr/proxmox-acme-certificate/cover.png" alt="Featured image of post Proxmox : ACME Certificate" /&gt;&lt;p&gt;J'ai du mettre en place un certificat proxmox pour un serveur accessible publiquement.&lt;br /&gt;
Donc voici une procédure pour la mise en place de certificat avec l'aide de ACME.&lt;/p&gt;
&lt;p&gt;Nous allons générer un certificat pour notre serveur proxmox avec l'aide de la technologie ACME.&lt;/p&gt;
&lt;p&gt;Pour cela on va passer par la methode présente dans la configuration graphique de proxmox.&lt;/p&gt;
&lt;p&gt;Dans un premier temps on va avoir besoin de créer un compte ACME qui va être utilisé pour la génération du certificat.&lt;/p&gt;
&lt;p&gt;Il faut se rendre dans &lt;code&gt;Datacenter&lt;/code&gt; &amp;gt; &lt;code&gt;ACME&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Puis il suffit d'ajouter un compte comme dans le screen présent ci dessous :&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" height="379" width="696" decoding="async" src="01-acme_prox.png" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;Une fois que le compte a été créé nous devons faire la demande de certificat.&lt;/p&gt;
&lt;p&gt;Pour cela il faut se rendre dans la catégorie :&lt;br /&gt;
&lt;code&gt;Datacenter&lt;/code&gt; &amp;gt; &lt;code&gt;pve&lt;/code&gt; &amp;gt; &lt;code&gt;System&lt;/code&gt; &amp;gt; &lt;code&gt;Certificates&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Nous allons utiliser la partie HTTP.&lt;br /&gt;
Pour cela il faut juste renseigner le FQDN de votre serveur :&lt;br /&gt;
&lt;code&gt;pve.domaine.fr&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" height="352" width="696" decoding="async" src="02-acme_prox.png" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;Une fois que le domaine a été renseigné il suffit de générer la requette avec l'aide de l'utilitaire.&lt;br /&gt;
Il suffit de cliquer sur son &lt;code&gt;certificat&lt;/code&gt; &amp;gt; &lt;code&gt;(choisir son profile)&lt;/code&gt; &amp;gt; &lt;code&gt;Order certificate Now&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="03-1-acme_prox.png" alt="" /&gt;&lt;/p&gt;
&lt;p&gt;Il vous suffira d'attendre que le certificat soit généré.&lt;/p&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="04-1-acme_prox.png" alt="" /&gt;&lt;br /&gt;
Une fois que le certificat est généré, il vous suffira de recharger votre page et votre certificat sera mis à jour.&lt;/p&gt;
&lt;h3 id="erreur-rencontrée"&gt;&lt;a href="#erreur-rencontr%c3%a9e" class="header-anchor"&gt;&lt;/a&gt;Erreur rencontrée
&lt;/h3&gt;&lt;p&gt;J'ai eu une erreur au moment de la génération.&lt;br /&gt;
L'erreur rencontrée était qu'il manquait l'utilisateur &amp;quot;default&amp;quot; dans les comptes ACME.&lt;br /&gt;
J'ai donc créer un compte &amp;quot;default&amp;quot; avec un mail bidon. Et après j'ai pu effectuer la demande de certificat sans problème.&lt;/p&gt;</description></item><item><title>Proxmox : Template Debian12 avec Cloud-Init</title><link>https://beta.slash-root.fr/proxmox-template-debian12-avec-cloud-init/</link><pubDate>Thu, 09 Nov 2023 14:23:19 +0100</pubDate><guid>https://beta.slash-root.fr/proxmox-template-debian12-avec-cloud-init/</guid><description>&lt;img src="https://beta.slash-root.fr/proxmox-template-debian12-avec-cloud-init/cover.png" alt="Featured image of post Proxmox : Template Debian12 avec Cloud-Init" /&gt;&lt;p&gt;Cette procédure va permettre de créer un template de VM Debian 12 pour Proxmox avec Cloud-Init.&lt;/p&gt;
&lt;p&gt;L'intérêt sera de cloner ce template, puis de pouvoir se connecter directement en ssh au 1er démarrage de la VM. Le nom d'hôte, l'adressage ip, la(es) clef(s) ssh seront configurés à l'initialisation de la VM grâce à cloud-init.&lt;/p&gt;
&lt;p&gt;Ce template pourra éventuellement être utilisé par la suite avec une solution telle que Terraform / OpenTofu.&lt;/p&gt;
&lt;h2 id="création-du-template"&gt;&lt;a href="#cr%c3%a9ation-du-template" class="header-anchor"&gt;&lt;/a&gt;Création du template
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Se connecter sur un shell &lt;code&gt;root&lt;/code&gt; de l'hôte Proxmox &lt;code&gt;pvehost&lt;/code&gt; :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ssh root@pvehost
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Télécharger la dernière image cloud de Debian 12 :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;wget https://cloud.debian.org/images/cloud/bookworm/latest/debian-12-generic-amd64.qcow2
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Installer &lt;code&gt;libguestfs-tools&lt;/code&gt; si nécessaire et ajouter &lt;code&gt;qemu-guest-agent&lt;/code&gt; à l'image cloud précédemment téléchargée :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;apt install -y libguestfs-tools
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;virt-customize -a debian-12-generic-amd64.qcow2 --install qemu-guest-agent
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Créer une VM avec l'ID 666 qui sera le template :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;qm create &lt;span style="color:#ae81ff"&gt;666&lt;/span&gt; --name debian12-cloudinit --net0 virtio,bridge&lt;span style="color:#f92672"&gt;=&lt;/span&gt;vmbr1 --scsihw virtio-scsi-single
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Elle sera nommée &lt;code&gt;debian12-cloudinit&lt;/code&gt; et la 1ère carte réseau sera rattachée au &lt;code&gt;vmbr1&lt;/code&gt; du serveur Proxmox.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Ajouter un nouveau disque dur, importé depuis l'image cloud, de 20 G à la VM :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;qm set &lt;span style="color:#ae81ff"&gt;666&lt;/span&gt; --scsi0 local:0,iothread&lt;span style="color:#f92672"&gt;=&lt;/span&gt;1,backup&lt;span style="color:#f92672"&gt;=&lt;/span&gt;off,format&lt;span style="color:#f92672"&gt;=&lt;/span&gt;qcow2,import-from&lt;span style="color:#f92672"&gt;=&lt;/span&gt;/root/debian-12-generic-amd64.qcow2
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;qm disk resize &lt;span style="color:#ae81ff"&gt;666&lt;/span&gt; scsi0 20G
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Définir le disque dur en 1er boot sur la VM :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;qm set &lt;span style="color:#ae81ff"&gt;666&lt;/span&gt; --boot order&lt;span style="color:#f92672"&gt;=&lt;/span&gt;scsi0
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Définir le nombre de coeurs et la mémoire RAM de la VM :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;qm set &lt;span style="color:#ae81ff"&gt;666&lt;/span&gt; --cpu host --cores &lt;span style="color:#ae81ff"&gt;2&lt;/span&gt; --memory &lt;span style="color:#ae81ff"&gt;4096&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Attacher un disque Cloud-Init à la VM :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;qm set &lt;span style="color:#ae81ff"&gt;666&lt;/span&gt; --ide2 local:cloudinit
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;qm set &lt;span style="color:#ae81ff"&gt;666&lt;/span&gt; --agent enabled&lt;span style="color:#f92672"&gt;=&lt;/span&gt;&lt;span style="color:#ae81ff"&gt;1&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;ul&gt;
&lt;li&gt;Ajuster les paramètres dans les options &lt;code&gt;Cloud-Init&lt;/code&gt; qui figureront dans le template (si nécessaire) :&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="01-cloudinit.png" alt="cloudinit" /&gt;&lt;/p&gt;
&lt;p&gt;Ces options sont disponibles dans la WebUI du serveur Proxmox au niveau de la VM.&lt;/p&gt;
&lt;p&gt;Plus de détails ici &lt;a href="https://pve.proxmox.com/wiki/Cloud-Init_Support"&gt;https://pve.proxmox.com/wiki/Cloud-Init_Support&lt;/a&gt; sur les différents paramétrages.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Convertir la VM en template :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;qm template &lt;span style="color:#ae81ff"&gt;666&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="utilisation-du-template"&gt;&lt;a href="#utilisation-du-template" class="header-anchor"&gt;&lt;/a&gt;Utilisation du template
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Cloner entièrement le template en VM.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="02-clone.png" alt="clone" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Ajuster les paramètres &lt;code&gt;Cloud-Init&lt;/code&gt; de la VM si nécessaire.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Démarrer la VM et récupérer l'IP (si nécessaire) :&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img data-recalc-dims="1" decoding="async" src="03-ip.png" alt="ip" /&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Se connecter en SSH sur la VM avec la clef ssh renseignée dans cloud-init :&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;julien@mypc:~$ ssh -i .ssh/demo admin@172.16.20.15
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Are you sure you want to &lt;span style="color:#66d9ef"&gt;continue&lt;/span&gt; connecting &lt;span style="color:#f92672"&gt;(&lt;/span&gt;yes/no/&lt;span style="color:#f92672"&gt;[&lt;/span&gt;fingerprint&lt;span style="color:#f92672"&gt;])&lt;/span&gt;? yes
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Warning: Permanently added &lt;span style="color:#e6db74"&gt;&amp;#39;172.16.20.15&amp;#39;&lt;/span&gt; &lt;span style="color:#f92672"&gt;(&lt;/span&gt;ED25519&lt;span style="color:#f92672"&gt;)&lt;/span&gt; to the list of known hosts.
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;Linux vm-deb12-01 6.1.0-13-amd64 &lt;span style="color:#75715e"&gt;#1 SMP PREEMPT_DYNAMIC Debian 6.1.55-1 (2023-09-29) x86_64&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;admin@vm-deb12-01:~$ sudo -l
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;...
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;User admin may run the following commands on vm-deb12-01:
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;(&lt;/span&gt;ALL : ALL&lt;span style="color:#f92672"&gt;)&lt;/span&gt; ALL
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; &lt;span style="color:#f92672"&gt;(&lt;/span&gt;ALL&lt;span style="color:#f92672"&gt;)&lt;/span&gt; NOPASSWD: ALL
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Par défaut l'utilisateur définit par cloud-init appartient au groupe &lt;code&gt;sudo&lt;/code&gt; et peut exécuter absolument tout sans saisir son mot de passe.&lt;/p&gt;</description></item></channel></rss>