Bonjour à tous
Voila j'essaie de comprendre iptables.
j'ai une VM derriere un PROXMOX et un pc sur le meme réseau que le proxmox.
je souhaite exposer le port 22 (ou n'importe quel autre port) sans exposer mon ip privé de ma vm donc j'ai fait du nat hote proxmox en 2222 (ou un autre port)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 2222 -j DNAT --to-destination 1.1.1.1:22
iptables -A FORWARD -o vmbr4 -p tcp --dport 22 -j ACCEPT
je suis oblige d'autoriser le forward car j'ai une politque sur le proxmox qui bloque tout dont le forward
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
#Flush des règles
iptables -F
iptables -t nat -F
iptables -X
 
#police par defaut
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
 
#on se coupe pas le pied sur le loopback
iptables -I INPUT -i lo -j ACCEPT
iptables -I OUTPUT -o lo -j ACCEPT
 
#ouverture ICMP
iptables -A INPUT -i vmbr0 -p icmp -j ACCEPT
iptables -A OUTPUT -o vmbr0 -p icmp -j ACCEPT
 
#ouverture ICMP depuis autres interfaces interne
iptables -A INPUT -i vmbr0 -p icmp -j ACCEPT
iptables -A OUTPUT -o vmbr0 -p icmp -j ACCEPT
 
#ouverture ssh
iptables -A INPUT -i vmbr0 -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -o vmbr0 -p tcp --sport 22 -m state --state ESTABLISHED,RELATED -j ACCEPT
 
#ouverture pour maj   
iptables -A OUTPUT -o vmbr0 -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -i vmbr0 -p tcp --sport 443 -m state --state ESTABLISHED,RELATED -j ACCEPT
 
#ouverture des dns
iptables -A OUTPUT -o vmbr0 -p udp --dport 53 -j ACCEPT
iptables -A OUTPUT -o vmbr0 -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -i vmbr0 -p udp --sport 53 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i vmbr0 -p tcp --sport 53 -m state --state ESTABLISHED,RELATED -j ACCEPT
 
#ouverture de l'interface de proxmox
iptables -A INPUT -i vmbr0 -p tcp --dport 8006 -j ACCEPT
iptables -A OUTPUT -o vmbr0 -p tcp --sport 8006 -m state --state ESTABLISHED,RELATED -j ACCEPT

Autorise le nat
Code : Sélectionner tout - Visualiser dans une fenêtre à part
iptables -t nat -A POSTROUTING -s '1.1.1.0/24' -o vmbr0 -j MASQUERADE
Ca fonctionne sans probleme
en taper ip_proxmox:2222 j'arrive à me connecter
mais ca marche aussi quand je tape ip_prive_VM:22 car j'ai ajouté une route depuis mon pc qui est sur le même réseau que le proxmox.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
route add 1.1.1.0 mask 255.255.255.0 ip_proxmox
Donc je me pose la question si on ne veut pas du tout exposer ip_privé et que ne soit accessible uniquement depuis le proxmox.
Faut il l'indiquer explicitement si oui comment. Peut être que j'ai mal compris le forward.
Merci