Outils pour utilisateurs

Outils du site


linux:proxmox (lu 95725 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 18:52]
edmc73 [upgrade 6 to 7]
linux:proxmox [19-06-2024 16:53] (Version actuelle)
edmc73 [Login ssh long]
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 554: Ligne 585:
  
 Et ça marche !! (enfin l'hyperviseur, pour les LXC y'a encore du boulot) 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/
 +
 +===== Autres bidouilles =====
 +==== Login ssh long LXC ====
 +Sur un LXC avec une debian 11, se connecter en ssh était super long
 +
 +Dans les log du LXC je voyais ceci
 +<code>
 +Jun 19 14:41:43 zabbix dbus-daemon[78]: [system] Failed to activate service 'org.freedesktop.login1': timed out (service_start_timeout=25000ms)
 +Jun 19 14:41:43 zabbix sshd[1013861]: pam_systemd(sshd:session): Failed to create session: Failed to activate service 'org.freedesktop.login1': timed out (service_start_timeout=25000ms)
 +</code>
 +
 +En redémarrant le service concerné, j'ai vu qu'il ne fonctionnait pas
 +<code>
 +root@lxc:/var/log# systemctl restart systemd-logind
 +Job for systemd-logind.service failed because the control process exited with error code.
 +See "systemctl status systemd-logind.service" and "journalctl -xe" for details.
 +
 +root@lxc:/var/log# systemctl status systemd-logind
 +● systemd-logind.service - User Login Management
 +     Loaded: loaded (/lib/systemd/system/systemd-logind.service; static)
 +     Active: failed (Result: exit-code) since Wed 2024-06-19 14:43:27 UTC; 15s ago
 +       Docs: man:sd-login(3)
 +             man:systemd-logind.service(8)
 +             man:logind.conf(5)
 +             man:org.freedesktop.login1(5)
 +    Process: 1013940 ExecStart=/lib/systemd/systemd-logind (code=exited, status=226/NAMESPACE)
 +   Main PID: 1013940 (code=exited, status=226/NAMESPACE)
 +        CPU: 5ms
 +
 +juin 19 14:43:27 zabbix systemd[1]: systemd-logind.service: Scheduled restart job, restart counter is at 5.
 +juin 19 14:43:27 zabbix systemd[1]: Stopped User Login Management.
 +juin 19 14:43:27 zabbix systemd[1]: systemd-logind.service: Start request repeated too quickly.
 +juin 19 14:43:27 zabbix systemd[1]: systemd-logind.service: Failed with result 'exit-code'.
 +juin 19 14:43:27 zabbix systemd[1]: Failed to start User Login Management.
 +</code>
 +
 +La solution trouvé sur le net consiste à masquer le service...
 +<code>
 +root@zabbix:/var/log# systemctl mask systemd-logind
 +Created symlink /etc/systemd/system/systemd-logind.service → /dev/null.
 +</code>
 +
 +<code>
 + mask UNIT...
 +           Mask one or more units, as specified on the command line. This will link these unit files to /dev/null, making it impossible to start them. This is a
 +           stronger version of disable, since it prohibits all kinds of activation of the unit, including enablement and manual activation. Use this option with
 +           care. This honors the --runtime option to only mask temporarily until the next reboot of the system. The --now option may be used to ensure that the units
 +           are also stopped. This command expects valid unit names only, it does not accept unit file paths.
 +</code>
 +
linux/proxmox.1701021127.txt.gz · Dernière modification: 26-11-2023 18:52 de edmc73