Outils pour utilisateurs

Outils du site


linux:proxmox (lu 77277 fois)

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édentes Révision précédente
Prochaine révision
Révision précédente
linux:proxmox [26-11-2023 16:05]
edmc73
linux:proxmox [28-11-2023 21:01] (Version actuelle)
edmc73 [Cas de figure : une seule adresse ip public + un LAN]
Ligne 30: Ligne 30:
  
 ===== Configuration ===== ===== Configuration =====
-==== Cas de figure : une seule adresse ip + un LAN ==== +==== Cas de figure : une seule adresse ip public + un LAN ====
-On rajouter pour l'instant une petite règle de firewall +
-  iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o vmbr0 -j SNAT --to 70.70.70.70 +
-   +
-Cela permet à votre réseau virtuel en 192.168.0.0 d'avoir accès à internet via votre serveur 70.70.70.70+
  
-Pour un accès ssh de votre VM, vous devez utiliser un autre port que le 22 qui est déja utilisé par votre serveur principal.\\ +Par défaut, vous avez un bridge vmbr0 connecté sur votre interface réseau physique avec votre adresse publique
-Exemple pour le port 2222 qui sera redirigé sur le port 22 de votre VM 192.168.0.1\\ +
-On déclare tout d'abord une règle permettant de faire du NAT sur notre réseau local virtuelle 192.168.0.0/24 +
-  iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o vmbr0 -j SNAT --to-source 70.70.70.70 +
-   +
-Ensuite on redirige le port 2222 +
-  iptables -t nat -A PREROUTING -d 70.70.70.70 -p tcp --dport 2222 -j DNAT --to-dest 192.168.0.1:22+
  
-//(a venir, une config plus sécurisé du firewall...)//+<code> 
 +Name: vmbr0 
 +IPv4/CIDR : 94.94.94.94/24 
 +Gateway (IPv4) : 94.94.94.254 
 +Bridge ports: eno1 
 +</code>
  
-Je désactive l'ecoute sur le port 80 du serveur principal pour laisser libre ce port pour les autres machines.\\ +Créons un bridge qui définira notre réseau local
-L'interface reste toujours accessible sur le port 443 via https://...+
  
-Pour celamodifiez le fichier /etc/apache2/ports.conf et commentez la ligne Listen 80+<code> 
 +Name: vmbr1 
 +IPv4/CIDR : 192.168.0.1/24 
 +Gateway (IPv4) : (vide) 
 +Bridge ports: (vide) 
 +</code> 
 + 
 +On crée maintenant une VM avec les infos suivantes 
 +<code> 
 +Name: eth0 
 +Bridge: vmbr1 
 +IPv4 : Static 
 +IPv4/CIDR : 192.168.0.2/32 
 +Gateway (IPv4) : 192.168.0.1 
 +</code> 
 + 
 +Maintenantil faut dire au système que l'on veut faire de l'ip forwarding 
 +  echo 1 > /proc/sys/net/ipv4/ip_forward 
 + 
 +Ensuite il suffit juste de rajouter une règle iptable pour router notre réseau local vers le bridge qui a accès au WAN 
 + 
 +  iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o vmbr0 -j MASQUERADE 
 + 
 +Vous pouvez automatiser tout ça dans votre fichier **/etc/network/interface** 
 + 
 +<code> 
 +auto vmbr1 
 +iface vmbr1 inet static 
 +        address 192.168.0.1/24 
 +        bridge-ports none 
 +        bridge-stp off 
 +        bridge-fd 0 
 +        post-up echo 1 > /proc/sys/net/ipv4/ip_forward 
 +        post-up iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o vmbr0 -j MASQUERADE 
 +        post-up /root/dnat.sh 
 +        post-down iptables -t nat -D POSTROUTING -s 192.168.0.0/24 -o vmbr0 -j MASQUERADE 
 +</code> 
 + 
 +Le fichier /root/dnat.sh pourra contenir des règles de NAT pour accéder à la machine depuis l'extérieur 
 + 
 +Pour un accès ssh de votre VM, vous devez utiliser un autre port que le 22 qui est déja utilisé par votre serveur principal.\\ 
 +Exemple pour le port 2222 qui sera redirigé sur le port 22 de votre VM 192.168.0.2 
 +  iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 2222 -j DNAT --to-destination 192.168.0.2:22
  
-Rédémarrez apache 
  
-Installons maintenant **pound** qui permet le reverse-proxy et load-balancer 
-  aptitude install pound 
  
-[[linux:pound|Voir plus de détails sur Pound]] 
-   
 ==== Cas de figure : Une adresse ip WAN pour chaque VM ==== ==== Cas de figure : Une adresse ip WAN pour chaque VM ====
  
Ligne 490: Ligne 521:
  
 Plus d'erreurs. Plus d'erreurs.
 +
 +Après un reboot, j'ai eu droit à ça
 +  Kernel Panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
 +
 +donc reboot sur un ancien kernel et
 +<code>
 +update-initramfs -u -k 5.15.131-1-pve 
 +
 +update-initramfs: Generating /boot/initrd.img-5.15.131-1-pve
 +gzip: stdout: No space left on device
 +E: mkinitramfs failure gzip 1
 +update-initramfs: failed for /boot/initrd.img-5.15.131-1-pve with 1.
 +
 +
 +df -h /boot
 +Filesystem      Size  Used Avail Use% Mounted on
 +/dev/sda1       188M  138M   36M  80% /boot
 +</code>
 +il n'y a donc pas assez d'espace sur la partition de /boot 
 +
 +Faisons le ménage en cherchant avec grub les kernel installé
 +  dpkg --list | grep kernel
 +
 +en supprimant les paquets obsolètes
 +  apt purge nom_du_paquet
 +
 +et en supprimant à la main les fichiers resté dans /boot de la même version supprimé
 +
 +On relance ensuite les 2 commandes qui vont bien
 +<code>
 +oot@proxmox202009:/boot# update-initramfs -u -k 5.15.131-1-pve 
 +update-initramfs: Generating /boot/initrd.img-5.15.131-1-pve
 +Running hook script 'zz-proxmox-boot'..
 +Re-executing '/etc/kernel/postinst.d/zz-proxmox-boot' in new private mount namespace..
 +No /etc/kernel/proxmox-boot-uuids found, skipping ESP sync.
 +root@proxmox202009:/boot# df -h /boot
 +Filesystem      Size  Used Avail Use% Mounted on
 +/dev/sda1       188M  134M   41M  77% /boot
 +
 +root@proxmox202009:/boot# update-grub
 +Generating grub configuration file ...
 +Found linux image: /boot/vmlinuz-5.15.131-1-pve
 +Found initrd image: /boot/initrd.img-5.15.131-1-pve
 +Found linux image: /boot/vmlinuz-5.4.203-1-pve
 +Found initrd image: /boot/initrd.img-5.4.203-1-pve
 +Warning: os-prober will not be executed to detect other bootable partitions.
 +Systems on them will not be added to the GRUB boot configuration.
 +Check GRUB_DISABLE_OS_PROBER documentation entry.
 +done
 +</code>
 +
 +On reboot. Et là... encore un problème. Le système boot bien, tout fonctionne sauf l'accès à internet.
 +
 +Et oui il était écrit en petit dans la doc ( https://pve.proxmox.com/wiki/Upgrade_from_6.x_to_7.0#Check_Linux_Network_Bridge_MAC ) que debian 11 allait changer tout seul l'adresse MAC du bridge et comme le bridge communique avec l'hebergeur via l'adresse MAC, ben ça ne fonctionne pas.
 +
 +donc, faire un 
 +  ip -c link
 +pour récupérer l'adresse mac de votre interface réseau (ou la récupérer dans votre interface admin de votre hébergeur)
 +et rajouter dans le **/etc/network/interfaces** la ligne
 +  hwaddress 00:00:00:00:00
 +on restart le réseau
 +  systemctl restart networking
 +
 +Et ça marche !! (enfin l'hyperviseur, pour les LXC y'a encore du boulot)
 +
 +Et ça fait plaisir de voir que je ne suis pas le seul à avoir eu des problèmes -> https://blog.zwindler.fr/2021/07/19/les-soucis-que-jai-rencontre-en-upgradant-proxmox-ve-7/
linux/proxmox.1701011153.txt.gz · Dernière modification: 26-11-2023 16:05 de edmc73