- Modifié
Bonjour les amis,
Cela fait maintenant plusieurs jours que je me bat pour faire fonctionner correctement ma seedbox installé sur un Pi 4 et qui utilise un tunnel VPN sortant sur mon VPS chez FirstHerberge. Les téléchargement fonctionnent correctement et passe bien par le tunnel. Par contre dans la gui de transmission je trouve l'information "Port is closed" et de ce fait aucun téléchargement n'est partagé (l'upload ne marche donc pas).
Pour contourner un éventuel blocage du port par défaut (51413) j'ai décidé d'utiliser le port 55000 (comme utilisé dans un sujet sur ce forum). Mais je n'arrive toujours pas à débloquer ce port fermé.
Voici mes configurations :
IP du VPS qui host le serveur OpenVPN : 188.XX.XX.XX
IP de mon Raspberry sur le réseau privé : 192.XXX.XX.XX
IP de mon Raspberry sur le réseau privé OpenVPN : 10.8.0.6
SERVER OpenVPN
server.conf
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key # This file should be kept secret
dh dh.pem
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 208.67.220.220"
keepalive 10 120
tls-auth ta.key 0 # This file is secret
cipher AES-256-CBC
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn/openvpn-status.log
log /var/log/openvpn/openvpn.log
log-append /var/log/openvpn/openvpn.log
verb 3
explicit-exit-notify 1
iptables-rules.sh
#!/bin/sh
#Vider les tables actuelles
iptables -t filter -F
#Vider les règles personnelles
iptables -t filter -X
#Interdire toute connexion entrante et sortante
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP
#Ne pas casser les connexions etablies
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
#Autoriser loopback
iptables -t filter -A INPUT -i lo -j ACCEPT
iptables -t filter -A OUTPUT -o lo -j ACCEPT
#ICMP (Ping)
iptables -t filter -A INPUT -p icmp -j ACCEPT
iptables -t filter -A OUTPUT -p icmp -j ACCEPT
#SSH In
iptables -t filter -A INPUT -p tcp --dport XXXX -j ACCEPT
#SSH Out
iptables -t filter -A OUTPUT -p tcp --dport XXXX -j ACCEPT
#DNS In/Out
iptables -t filter -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 53 -j ACCEPT
#NTP Out
iptables -t filter -A OUTPUT -p udp --dport 123 -j ACCEPT
#HTTP + HTTPS Out
iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -j ACCEPT
#HTTP + HTTPS In
iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 8443 -j ACCEPT
#Mail SMTP:587
iptables -t filter -A INPUT -p tcp --dport 587 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 587 -j ACCEPT
#Transmission
iptables -t filter -A INPUT -p tcp --dport 55000 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 55000 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 55000 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 55000 -j ACCEPT
#OpenVPN
iptables -A INPUT -i eth0 -m state --state NEW -p udp --dport 1194 -j ACCEPT
iptables -A INPUT -i tun0 -j ACCEPT
iptables -A FORWARD -i tun0 -j ACCEPT
iptables -A FORWARD -i tun0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i eth0 -o tun+ -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
iptables -A OUTPUT -o tun0 -j ACCEPT
iptables -A FORWARD -i eth0 -p tcp --dport 55000 -j ACCEPT
iptables -A FORWARD -i eth0 -p udp --dport 55000 -j ACCEPT
iptables -t nat -A PREROUTING -i eth0 -p tcp -m tcp --dport 55000 -j DNAT --to-destination 10.8.0.6:55000
iptables -t nat -A PREROUTING -i eth0 -p udp -m udp --dport 55000 -j DNAT --to-destination 10.8.0.6:55000
iptables -t nat -A PREROUTING -i tun0 -p tcp -m tcp --dport 55000 -j DNAT --to-destination 10.8.0.6:55000
iptables -t nat -A PREROUTING -i tun0 -p udp -m udp --dport 55000 -j DNAT --to-destination 10.8.0.6:55000
Raspberry Pi
client.conf
client
dev tun
proto udp
nobind
remote 188.XX.XX.XX 1194
resolv-retry infinite
user nobody
group nogroup
persist-key
persist-tun
ca ca.crt
cert client.crt
key client.key
remote-cert-tls server
tls-auth ta.key 1
cipher AES-256-CBC
verb 3
iptables-rules.sh
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT`
Comme vous pouvez le constater au niveau du Pi 4 je n'ai pas mis en place de règles iptables, j'avais fait une tentative mais cela me posait trop de problèmes. Voici tout fois le scripte pour les règles que j'avais mis en place mais le trafic ne passait pas par le tunnel avec ces règles
#!/bin/sh
#Vider les tables actuelles
iptables -t filter -F
#Vider les règles personnelles
iptables -t filter -X
#Interdire toute connexion entrante et sortante
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP
#Ne pas casser les connexions etablies
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
#Autoriser loopback
iptables -t filter -A INPUT -i lo -j ACCEPT
iptables -t filter -A OUTPUT -o lo -j ACCEPT
#ICMP (Ping)
iptables -t filter -A INPUT -p icmp -j ACCEPT
iptables -t filter -A OUTPUT -p icmp -j ACCEPT
#SSH In
iptables -t filter -A INPUT -p tcp --dport 2802 -j ACCEPT
#SSH Out
iptables -t filter -A OUTPUT -p tcp --dport 2802 -j ACCEPT
#DNS In/Out
iptables -t filter -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 53 -j ACCEPT
#NTP Out
iptables -t filter -A OUTPUT -p udp --dport 123 -j ACCEPT
#HTTP + HTTPS Out
iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -j ACCEPT
#HTTP + HTTPS In
iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 8443 -j ACCEPT
#Mail SMTP:587
iptables -t filter -A INPUT -p tcp --dport 587 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 587 -j ACCEPT
#NFS
iptables -A INPUT -s 192.168.1.0/24 -d 192.168.1.0/24 -p udp -m multiport --sports 111,2049,32773,804,816,894 -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -d 192.168.1.0/24 -p tcp -m multiport --sports 111,2049,54559,807,897 -m state --state ESTABLISHED -j ACCEPT
iptables -A OUTPUT -s 192.168.1.0/24 -d 192.168.1.0/24 -p udp -m multiport --dports 111,2049,32773,804,816,894 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -s 192.168.1.0/24 -d 192.168.1.0/24 -p tcp -m multiport --dports 111,2049,54559,807,8972 -m state --state NEW,ESTABLISHED -j ACCEPT
#OpenVPN
iptables -A OUTPUT -p udp --dport 1194 -j ACCEPT
iptables -A INPUT -p udp --sport 1194 -j ACCEPT
iptables -A INPUT -i tun0 -j ACCEPT
iptables -A FORWARD -i tun0 -j ACCEPT
iptables -A FORWARD -i tun0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i wlan0 -o tun0 -m state --state RELATED,ESTABLISHED -j ACCEPT
#Transmission
iptables -t filter -A INPUT -p tcp --dport 9091 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 42311 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 42311 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 42311 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 42311 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 55000 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 55000 -j ACCEPT
Une âme charitable aurait-elle le temps et l'envie de bien vouloir m'aider à résoudre ce petit problème qui me fait perdre mes cheveux ?