• Trou dans un firewall (iptables nftable)

    From =?UTF-8?Q?BERTRAND_Jo=c3=abl?=@21:1/5 to All on Mon Jul 3 12:50:01 2023
    Bonjour à tous,

    Je suis en train de configurer (péniblement) un serveur asterisk qui est dans un DMZ. Tout le flux entrant sur l'IP publique est naté vers ce serveur, protégé par un firewall iptables et fail2ban. Il s'agit
    d'iptables et non d'iptables-legacy.

    Cette machine est connectée à deux réseaux : wan0 d'un côté et lan0 de
    l'autre.

    Ce qui m'inquiète :

    Root rayleigh:[/etc/asterisk] > tcpdump -i wan0 -p port 5060
    ...
    12:26:54.145136 IP patient.census.internet-measurement.com.38253 > rayleigh.systella.fr.sip: Flags [S], seq 3922597779, win 14600, options
    [mss 1440], length 0

    Là, je ne saisis pas puisque j'ai dans le fichier /var/lib/iptables/active :

    *filter
    :INPUT DROP [28:3300]
    :FORWARD DROP [0:0]
    :OUTPUT DROP [27:3120]
    [0:0] -A INPUT -i lo -j ACCEPT
    [0:0] -A INPUT -i lan0 -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport ssh -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport smtp -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport domain -j ACCEPT
    [0:0] -A INPUT -i wan0 -p udp -m udp --dport domain -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport http -j ACCEPT
    [0:0] -A INPUT -i wan0 -p udp -m udp --dport ntp -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport https -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport ssmtp -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport submission -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport imaps -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport pop3s -j ACCEPT
    [0:0] -A INPUT -i wan0 -p udp -m udp --dport openvpn -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport openvpn -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport cvspserver -j ACCEPT
    [0:0] -A INPUT -i wan0 -p udp -m udp --dport cvspserver -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport jabber-client -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport git -j ACCEPT
    [0:0] -A INPUT -i wan0 -p icmp -j ACCEPT
    [0:0] -A INPUT -i wan0 -p udp -m udp --dport 10000 -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport 4443 -j ACCEPT
    [0:0] -A INPUT -i wan0 -p udp -m udp -s 37.97.65.0/24 -j ACCEPT
    [0:0] -A INPUT -i wan0 -s ns6-axfr.gandi.net -j ACCEPT
    [0:0] -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    [0:0] -A INPUT -m state --state INVALID -j DROP
    [0:0] -A OUTPUT -o lo -j ACCEPT
    [0:0] -A OUTPUT -o lan0 -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport ftp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport ssh -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport telnet -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport smtp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport whois -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport domain -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --dport domain -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport gopher -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport http -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport pop3 -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport nntp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --dport ntp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport snmp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --dport snmp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport snmp-trap -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --dport snmp-trap -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport https -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport rtsp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport pop3s -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --dport openvpn -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --sport 1195 -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport cvspserver -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --dport cvspserver -j ACCEPT
    [1:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport 3128 -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport mysql -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport subversion -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport postgresql -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport http-alt -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport git -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p icmp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --sport 10000 -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp -d 37.97.65.186 --dport 5070 -j ACCEPT [0:0] -A OUTPUT -o wan0 -p udp -m udp -d 37.97.65.0/24 -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -d ns6-axfr.gandi.net -j ACCEPT
    [0:0] -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    [0:0] -A OUTPUT -m state --state INVALID -j DROP

    La table mangle est utilisée pour la QoS. Comment se fait-il qu'un paquet sur le port 5060/UDP puisse être envoyé à mon serveur sans qu'il
    ne soit jeté ? Il n'y a pas de conntrack-sip chargé...

    Bien cordialement,

    JKB

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?Q?BERTRAND_Jo=c3=abl?=@21:1/5 to All on Mon Jul 3 14:40:01 2023
    Thomas Trupel a écrit :
    C'est un comportement normal à mes yeux.

    L'ajout d'une règle avec la target TRACE devrait te confirmer que les paquets sont bloqués par le firewall.

    Dans le cas de SIP, ils sont tout de même récupérés par sngrep :

    [ ] 359 INVITE 100@1.1.1.1 100@1.1.1.1
    1 64.31.63.27:5166 192.168.15.18:5060 CALL SETUP

    donc pas si bloqués que cela ;-)

    Bien cordialement,

    JKB

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Thomas Trupel@21:1/5 to All on Mon Jul 3 14:30:01 2023
    This is a multi-part message in MIME format.
    C'est un comportement normal à mes yeux.

    L'ajout d'une règle avec la target TRACE devrait te confirmer que les
    paquets sont bloqués par le firewall.

    |Cordialement, Thomas|


    On 7/3/23 14:14, BERTRAND Joël wrote:
    C'est même pire que ça !

    Si je fais un nmap depuis l'extérieur sur le serveur en question,
    j'obtiens bien :

    legendre# nmap 192.168.15.18
    Starting Nmap 7.93 (https://nmap.org ) at 2023-07-03 14:09 CEST
    Nmap scan report for 192.168.15.18
    Host is up (0.00078s latency).
    Not shown: 987 filtered tcp ports (no-response)
    PORT STATE SERVICE
    22/tcp open ssh
    25/tcp open smtp
    53/tcp open domain
    80/tcp open http
    443/tcp open https
    465/tcp closed smtps
    587/tcp open submission
    993/tcp open imaps
    995/tcp open pop3s
    2401/tcp closed cvspserver
    4443/tcp closed pharos
    5222/tcp open xmpp-client
    9418/tcp open git
    MAC Address: 50:46:5D:72:EF:A2 (Asustek Computer)

    Nmap done: 1 IP address (1 host up) scanned in 5.01 seconds
    legendre#

    ce qui semble correspondre aux ports effectivement ouverts. Mais un
    tcpdump sur l'interface publique de la machine testée voit bien passer
    tous les paquets (pas seulement ceux correspondant ax ports ouverts).

    Idem en UDP :
    legendre# nmap -sU 192.168.15.18
    Starting Nmap 7.93 (https://nmap.org ) at 2023-07-03 14:11 CEST
    Nmap scan report for 192.168.15.18
    Host is up (0.00053s latency).
    Not shown: 997 open|filtered udp ports (no-response)
    PORT STATE SERVICE
    53/udp open domain
    123/udp open ntp
    10000/udp closed ndmp
    MAC Address: 50:46:5D:72:EF:A2 (Asustek Computer)

    Nmap done: 1 IP address (1 host up) scanned in 5.81 seconds
    legendre#

    Lorsque j'utilisais iptables-legacy, je n'ai jamais observé cela. Par ailleurs, ça n'explique pas que des paquets à destination d'un port
    fermé aboutissent bien à mon serveur asterisk...

    Bien cordialement,

    JKB

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    </head>
    <body>
    <p>C'est un comportement normal à mes yeux.<br>
    </p>
    <p>L'ajout d'une règle avec la target TRACE devrait te confirmer que
    les paquets sont bloqués par le firewall.</p>
    <pre style="margin: 0px 0px calc(1.5em); padding: var(--su12); border: 0px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates:
    inherit; font-weight: 400; font-stretch: inherit; line-height: var(--lh-md); font-family: var(--ff-mono); font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: var(--fs-body1);
    vertical-align: baseline; box-sizing: inherit; width: auto; max-height: 600px; overflow: auto; background-color: var(--highlight-bg); border-radius: var(--br-md); overflow-wrap: normal; color: var(--highlight-color); letter-spacing: normal; orphans: 2;
    text-align: left; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;"><code style="margin: 0px; padding:
    0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: var(--ff-mono); font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-
    variation-settings: inherit; font-size: var(--_pr-code-fs); vertical-align: baseline; box-sizing: inherit; background-color: transparent; white-space: inherit; color: var(--black-800); border-radius: 0px;">Cordialement,
    Thomas</code></pre>
    <p><br>
    </p>
    <div class="moz-cite-prefix">On 7/3/23 14:14, BERTRAND Joël wrote:<br>
    </div>
    <blockquote type="cite"
    cite="mid:e1add808-7351-eb3e-0488-e215c93caf9a@systella.fr">
    <pre class="moz-quote-pre" wrap="">C'est même pire que ça !

    Si je fais un nmap depuis l'extérieur sur le serveur en question,
    j'obtiens bien :

    legendre# nmap 192.168.15.18
    Starting Nmap 7.93 ( <a class="moz-txt-link-freetext" href="https://nmap.org">https://nmap.org</a> ) at 2023-07-03 14:09 CEST
    Nmap scan report for 192.168.15.18
    Host is up (0.00078s latency).
    Not shown: 987 filtered tcp ports (no-response)
    PORT STATE SERVICE
    22/tcp open ssh
    25/tcp open smtp
    53/tcp open domain
    80/tcp open http
    443/tcp open https
    465/tcp closed smtps
    587/tcp open submission
    993/tcp open imaps
    995/tcp open pop3s
    2401/tcp closed cvspserver
    4443/tcp closed pharos
    5222/tcp open xmpp-client
    9418/tcp open git
    MAC Address: 50:46:5D:72:EF:A2 (Asustek Computer)

    Nmap done: 1 IP address (1 host up) scanned in 5.01 seconds
    legendre#

    ce qui semble correspondre aux ports effectivement ouverts. Mais un
    tcpdump sur l'interface publique de la machine testée voit bien passer
    tous les paquets (pas seulement ceux correspondant ax ports ouverts).

    Idem en UDP :
    legendre# nmap -sU 192.168.15.18
    Starting Nmap 7.93 ( <a class="moz-txt-link-freetext" href="https://nmap.org">https://nmap.org</a> ) at 2023-07-03 14:11 CEST
    Nmap scan report for 192.168.15.18
    Host is up (0.00053s latency).
    Not shown: 997 open|filtered udp ports (no-response)
    PORT STATE SERVICE
    53/udp open domain
    123/udp open ntp
    10000/udp closed ndmp
    MAC Address: 50:46:5D:72:EF:A2 (Asustek Computer)

    Nmap done: 1 IP address (1 host up) scanned in 5.81 seconds
    legendre#

    Lorsque j'utilisais iptables-legacy, je n'ai jamais observé cela. Par ailleurs, ça n'explique pas que des paquets à destination d'un port
    fermé aboutissent bien à mon serveur asterisk...

    Bien cordialement,

    JKB

    </pre>
    </blockquote>
    </body>
    </html>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?Q?BERTRAND_Jo=c3=abl?=@21:1/5 to All on Mon Jul 3 14:20:01 2023
    C'est même pire que ça !

    Si je fais un nmap depuis l'extérieur sur le serveur en question,
    j'obtiens bien :

    legendre# nmap 192.168.15.18
    Starting Nmap 7.93 ( https://nmap.org ) at 2023-07-03 14:09 CEST
    Nmap scan report for 192.168.15.18
    Host is up (0.00078s latency).
    Not shown: 987 filtered tcp ports (no-response)
    PORT STATE SERVICE
    22/tcp open ssh
    25/tcp open smtp
    53/tcp open domain
    80/tcp open http
    443/tcp open https
    465/tcp closed smtps
    587/tcp open submission
    993/tcp open imaps
    995/tcp open pop3s
    2401/tcp closed cvspserver
    4443/tcp closed pharos
    5222/tcp open xmpp-client
    9418/tcp open git
    MAC Address: 50:46:5D:72:EF:A2 (Asustek Computer)

    Nmap done: 1 IP address (1 host up) scanned in 5.01 seconds
    legendre#

    ce qui semble correspondre aux ports effectivement ouverts. Mais un
    tcpdump sur l'interface publique de la machine testée voit bien passer
    tous les paquets (pas seulement ceux correspondant ax ports ouverts).

    Idem en UDP :
    legendre# nmap -sU 192.168.15.18
    Starting Nmap 7.93 ( https://nmap.org ) at 2023-07-03 14:11 CEST
    Nmap scan report for 192.168.15.18
    Host is up (0.00053s latency).
    Not shown: 997 open|filtered udp ports (no-response)
    PORT STATE SERVICE
    53/udp open domain
    123/udp open ntp
    10000/udp closed ndmp
    MAC Address: 50:46:5D:72:EF:A2 (Asustek Computer)

    Nmap done: 1 IP address (1 host up) scanned in 5.81 seconds
    legendre#

    Lorsque j'utilisais iptables-legacy, je n'ai jamais observé cela. Par ailleurs, ça n'explique pas que des paquets à destination d'un port
    fermé aboutissent bien à mon serveur asterisk...

    Bien cordialement,

    JKB

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Thomas Trupel@21:1/5 to All on Mon Jul 3 14:20:01 2023
    This is a multi-part message in MIME format.
    Bonjour Joël,

    As-tu essayé d'approfondir l'analyse avec la target TRACE ?

    |iptables -t raw -A PREROUTING -p udp --dport 5060 -j TRACE Par
    ailleurs, tcpdump semble indiquer que le serveur reçoit un paquet sur le
    port TCP/5060 et non UDP/5060. Cordialement, Thomas |

    On 7/3/23 12:41, BERTRAND Joël wrote:
    Bonjour à tous,

    Je suis en train de configurer (péniblement) un serveur asterisk qui est dans un DMZ. Tout le flux entrant sur l'IP publique est naté vers ce serveur, protégé par un firewall iptables et fail2ban. Il s'agit
    d'iptables et non d'iptables-legacy.

    Cette machine est connectée à deux réseaux : wan0 d'un côté et lan0 de
    l'autre.

    Ce qui m'inquiète :

    Root rayleigh:[/etc/asterisk] > tcpdump -i wan0 -p port 5060
    ...
    12:26:54.145136 IP patient.census.internet-measurement.com.38253 > rayleigh.systella.fr.sip: Flags [S], seq 3922597779, win 14600, options
    [mss 1440], length 0

    Là, je ne saisis pas puisque j'ai dans le fichier /var/lib/iptables/active :

    *filter
    :INPUT DROP [28:3300]
    :FORWARD DROP [0:0]
    :OUTPUT DROP [27:3120]
    [0:0] -A INPUT -i lo -j ACCEPT
    [0:0] -A INPUT -i lan0 -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport ssh -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport smtp -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport domain -j ACCEPT
    [0:0] -A INPUT -i wan0 -p udp -m udp --dport domain -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport http -j ACCEPT
    [0:0] -A INPUT -i wan0 -p udp -m udp --dport ntp -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport https -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport ssmtp -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport submission -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport imaps -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport pop3s -j ACCEPT
    [0:0] -A INPUT -i wan0 -p udp -m udp --dport openvpn -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport openvpn -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport cvspserver -j ACCEPT
    [0:0] -A INPUT -i wan0 -p udp -m udp --dport cvspserver -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport jabber-client -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport git -j ACCEPT
    [0:0] -A INPUT -i wan0 -p icmp -j ACCEPT
    [0:0] -A INPUT -i wan0 -p udp -m udp --dport 10000 -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport 4443 -j ACCEPT
    [0:0] -A INPUT -i wan0 -p udp -m udp -s 37.97.65.0/24 -j ACCEPT
    [0:0] -A INPUT -i wan0 -s ns6-axfr.gandi.net -j ACCEPT
    [0:0] -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    [0:0] -A INPUT -m state --state INVALID -j DROP
    [0:0] -A OUTPUT -o lo -j ACCEPT
    [0:0] -A OUTPUT -o lan0 -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport ftp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport ssh -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport telnet -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport smtp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport whois -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport domain -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --dport domain -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport gopher -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport http -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport pop3 -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport nntp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --dport ntp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport snmp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --dport snmp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport snmp-trap -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --dport snmp-trap -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport https -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport rtsp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport pop3s -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --dport openvpn -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --sport 1195 -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport cvspserver -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --dport cvspserver -j ACCEPT
    [1:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport 3128 -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport mysql -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport subversion -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport postgresql -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport http-alt -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport git -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p icmp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --sport 10000 -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp -d 37.97.65.186 --dport 5070 -j ACCEPT [0:0] -A OUTPUT -o wan0 -p udp -m udp -d 37.97.65.0/24 -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -d ns6-axfr.gandi.net -j ACCEPT
    [0:0] -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    [0:0] -A OUTPUT -m state --state INVALID -j DROP

    La table mangle est utilisée pour la QoS. Comment se fait-il qu'un paquet sur le port 5060/UDP puisse être envoyé à mon serveur sans qu'il
    ne soit jeté ? Il n'y a pas de conntrack-sip chargé...

    Bien cordialement,

    JKB

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    </head>
    <body>
    <p>Bonjour Joël,</p>
    <p>As-tu essayé d'approfondir l'analyse avec la target TRACE ?<br>
    </p>
    <pre style="margin: 0px 0px calc(1.5em); padding: var(--su12); border: 0px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-variant-numeric: inherit; font-variant-east-asian: inherit; font-variant-alternates:
    inherit; font-weight: 400; font-stretch: inherit; line-height: var(--lh-md); font-family: var(--ff-mono); font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-size: var(--fs-body1);
    vertical-align: baseline; box-sizing: inherit; width: auto; max-height: 600px; overflow: auto; background-color: var(--highlight-bg); border-radius: var(--br-md); overflow-wrap: normal; color: var(--highlight-color); letter-spacing: normal; orphans: 2;
    text-align: left; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial;"><code style="margin: 0px; padding:
    0px; border: 0px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: var(--ff-mono); font-optical-sizing: inherit; font-kerning: inherit; font-feature-settings: inherit; font-
    variation-settings: inherit; font-size: var(--_pr-code-fs); vertical-align: baseline; box-sizing: inherit; background-color: transparent; white-space: inherit; color: var(--black-800); border-radius: 0px;">iptables -t raw -A PREROUTING -p udp --dport
    5060 -j TRACE

    Par ailleurs, tcpdump semble indiquer que le serveur reçoit un paquet sur le port TCP/5060 et non UDP/5060.

    Cordialement,
    Thomas

    </code></pre>
    <p></p>
    <div class="moz-cite-prefix">On 7/3/23 12:41, BERTRAND Joël wrote:<br>
    </div>
    <blockquote type="cite"
    cite="mid:326899b1-9aee-0cbb-651d-b8e48816f779@systella.fr">
    <pre class="moz-quote-pre" wrap=""> Bonjour à tous,

    Je suis en train de configurer (péniblement) un serveur asterisk qui est dans un DMZ. Tout le flux entrant sur l'IP publique est naté vers ce serveur, protégé par un firewall iptables et fail2ban. Il s'agit
    d'iptables et non d'iptables-legacy.

    Cette machine est connectée à deux réseaux : wan0 d'un côté et lan0 de
    l'autre.

    Ce qui m'inquiète :

    Root rayleigh:[/etc/asterisk] &gt; tcpdump -i wan0 -p port 5060
    ...
    12:26:54.145136 IP patient.census.internet-measurement.com.38253 &gt; rayleigh.systella.fr.sip: Flags [S], seq 3922597779, win 14600, options
    [mss 1440], length 0

    Là, je ne saisis pas puisque j'ai dans le fichier /var/lib/iptables/active :

    *filter
    :INPUT DROP [28:3300]
    :FORWARD DROP [0:0]
    :OUTPUT DROP [27:3120]
    [0:0] -A INPUT -i lo -j ACCEPT
    [0:0] -A INPUT -i lan0 -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport ssh -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport smtp -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport domain -j ACCEPT
    [0:0] -A INPUT -i wan0 -p udp -m udp --dport domain -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport http -j ACCEPT
    [0:0] -A INPUT -i wan0 -p udp -m udp --dport ntp -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport https -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport ssmtp -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport submission -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport imaps -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport pop3s -j ACCEPT
    [0:0] -A INPUT -i wan0 -p udp -m udp --dport openvpn -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport openvpn -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport cvspserver -j ACCEPT
    [0:0] -A INPUT -i wan0 -p udp -m udp --dport cvspserver -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport jabber-client -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport git -j ACCEPT
    [0:0] -A INPUT -i wan0 -p icmp -j ACCEPT
    [0:0] -A INPUT -i wan0 -p udp -m udp --dport 10000 -j ACCEPT
    [0:0] -A INPUT -i wan0 -p tcp -m tcp --dport 4443 -j ACCEPT
    [0:0] -A INPUT -i wan0 -p udp -m udp -s 37.97.65.0/24 -j ACCEPT
    [0:0] -A INPUT -i wan0 -s ns6-axfr.gandi.net -j ACCEPT
    [0:0] -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    [0:0] -A INPUT -m state --state INVALID -j DROP
    [0:0] -A OUTPUT -o lo -j ACCEPT
    [0:0] -A OUTPUT -o lan0 -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport ftp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport ssh -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport telnet -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport smtp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport whois -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport domain -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --dport domain -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport gopher -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport http -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport pop3 -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport nntp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --dport ntp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport snmp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --dport snmp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport snmp-trap -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --dport snmp-trap -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport https -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport rtsp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport pop3s -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --dport openvpn -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --sport 1195 -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport cvspserver -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --dport cvspserver -j ACCEPT
    [1:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport 3128 -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport mysql -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport subversion -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport postgresql -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport http-alt -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp --dport git -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p icmp -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p udp -m udp --sport 10000 -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -p tcp -m tcp -d 37.97.65.186 --dport 5070 -j ACCEPT [0:0] -A OUTPUT -o wan0 -p udp -m udp -d 37.97.65.0/24 -j ACCEPT
    [0:0] -A OUTPUT -o wan0 -d ns6-axfr.gandi.net -j ACCEPT
    [0:0] -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    [0:0] -A OUTPUT -m state --state INVALID -j DROP

    La table mangle est utilisée pour la QoS. Comment se fait-il qu'un paquet sur le port 5060/UDP puisse être envoyé à mon serveur sans qu'il
    ne soit jeté ? Il n'y a pas de conntrack-sip chargé...

    Bien cordialement,

    JKB

    </pre>
    </blockquote>
    </body>
    </html>

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?Q?BERTRAND_Jo=c3=abl?=@21:1/5 to All on Mon Jul 3 15:10:02 2023
    Thomas Trupel a écrit :
    C'est un comportement normal à mes yeux.

    L'ajout d'une règle avec la target TRACE devrait te confirmer que les paquets sont bloqués par le firewall.

    J'obtiens ceci :

    2023-07-03T14:37:45.868470+02:00 rayleigh kernel: [705875.038988] TRACE: raw:PREROUTING:policy:2 IN=wan0 OUT= MAC=50:46:5d:72:ef:a2:60:a4:b7:73:c9:26:08:00 SRC=109.248.149.209 DST=192.168.15.18 LEN=442 TOS=0x00 PREC=0x00 TTL=45 ID=10988 DF
    PROTO=UDP SPT=5256 DPT=5060 LEN=422
    2023-07-03T14:37:45.868494+02:00 rayleigh kernel: [705875.039009] TRACE: mangle:PREROUTING:policy:1 IN=wan0 OUT= MAC=50:46:5d:72:ef:a2:60:a4:b7:73:c9:26:08:00 SRC=109.248.149.209 DST=192.168.15.18 LEN=442 TOS=0x00 PREC=0x00 TTL=45 ID=10988 DF
    PROTO=UDP SPT=5256 DPT=5060 LEN=422
    2023-07-03T14:37:45.868497+02:00 rayleigh kernel: [705875.039019] TRACE: nat:PREROUTING:policy:1 IN=wan0 OUT= MAC=50:46:5d:72:ef:a2:60:a4:b7:73:c9:26:08:00 SRC=109.248.149.209 DST=192.168.15.18 LEN=442 TOS=0x00 PREC=0x00 TTL=45 ID=10988 DF
    PROTO=UDP SPT=5256 DPT=5060 LEN=422
    2023-07-03T14:37:45.868498+02:00 rayleigh kernel: [705875.039035] TRACE: mangle:INPUT:policy:1 IN=wan0 OUT= MAC=50:46:5d:72:ef:a2:60:a4:b7:73:c9:26:08:00 SRC=109.248.149.209 DST=192.168.15.18 LEN=442 TOS=0x00 PREC=0x00 TTL=45 ID=10988 DF
    PROTO=UDP SPT=5256 DPT=5060 LEN=422
    raw:PREROUTING:policy:2 IN=wan0 OUT= MAC=50:46:5d:72:ef:a2:60:a4:b7:73:c9:26:08:00 SRC=94.102.61.29 DST=192.168.15.18 LEN=279 TOS=0x00 PREC=0x00 TTL=239 ID=54321 PROTO=UDP SPT=38996 DPT=5060 LEN=259
    2023-07-03T14:51:17.795018+02:00 rayleigh kernel: [706686.983258] TRACE: mangle:PREROUTING:policy:1 IN=wan0 OUT= MAC=50:46:5d:72:ef:a2:60:a4:b7:73:c9:26:08:00 SRC=94.102.61.29 DST=192.168.15.18 LEN=279 TOS=0x00 PREC=0x00 TTL=239 ID=54321 PROTO=UDP SPT=38996 DPT=5060 LEN=259
    2023-07-03T14:51:17.795021+02:00 rayleigh kernel: [706686.983268] TRACE: nat:PREROUTING:policy:1 IN=wan0 OUT= MAC=50:46:5d:72:ef:a2:60:a4:b7:73:c9:26:08:00 SRC=94.102.61.29 DST=192.168.15.18 LEN=279 TOS=0x00 PREC=0x00 TTL=239 ID=54321 PROTO=UDP SPT=38996 DPT=5060 LEN=259
    2023-07-03T14:51:17.795022+02:00 rayleigh kernel: [706686.983282] TRACE: mangle:INPUT:policy:1 IN=wan0 OUT= MAC=50:46:5d:72:ef:a2:60:a4:b7:73:c9:26:08:00 SRC=94.102.61.29 DST=192.168.15.18 LEN=279 TOS=0x00 PREC=0x00 TTL=239 ID=54321 PROTO=UDP SPT=38996 DPT=5060 LEN=259
    2023-07-03T14:56:40.474426+02:00 rayleigh kernel: [707009.669233] TRACE: raw:PREROUTING:policy:2 IN=wan0 OUT= MAC=50:46:5d:72:ef:a2:60:a4:b7:73:c9:26:08:00 SRC=45.155.91.23 DST=192.168.15.18 LEN=44 TOS=0x00 PREC=0x00 TTL=236 ID=29434 PROTO=TCP SPT=47506 DPT=5060 SEQ=68748134 ACK=0 WINDOW=1024 RES=0x00 SYN URGP=0
    OPT (020405A0)
    2023-07-03T14:56:40.474447+02:00 rayleigh kernel: [707009.669262] TRACE: mangle:PREROUTING:policy:1 IN=wan0 OUT= MAC=50:46:5d:72:ef:a2:60:a4:b7:73:c9:26:08:00 SRC=45.155.91.23 DST=192.168.15.18 LEN=44 TOS=0x00 PREC=0x00 TTL=236 ID=29434 PROTO=TCP SPT=47506 DPT=5060 SEQ=68748134 ACK=0 WINDOW=1024 RES=0x00 SYN URGP=0
    OPT (020405A0)
    2023-07-03T14:56:40.474452+02:00 rayleigh kernel: [707009.669274] TRACE: nat:PREROUTING:policy:1 IN=wan0 OUT= MAC=50:46:5d:72:ef:a2:60:a4:b7:73:c9:26:08:00 SRC=45.155.91.23 DST=192.168.15.18 LEN=44 TOS=0x00 PREC=0x00 TTL=236 ID=29434 PROTO=TCP SPT=47506 DPT=5060 SEQ=68748134 ACK=0 WINDOW=1024 RES=0x00 SYN URGP=0
    OPT (020405A0)
    2023-07-03T14:56:40.474454+02:00 rayleigh kernel: [707009.669289] TRACE: mangle:INPUT:policy:1 IN=wan0 OUT= MAC=50:46:5d:72:ef:a2:60:a4:b7:73:c9:26:08:00 SRC=45.155.91.23 DST=192.168.15.18 LEN=44 TOS=0x00 PREC=0x00 TTL=236 ID=29434 PROTO=TCP SPT=47506 DPT=5060 SEQ=68748134 ACK=0 WINDOW=1024 RES=0x00 SYN URGP=0
    OPT (020405A0)

    Où voit-on que ces paquets sont bloqués ?

    Bien cordialement,

    JKB

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From NoSpam@21:1/5 to All on Mon Jul 3 15:20:01 2023
    Le 03/07/2023 à 15:12, BERTRAND Joël a écrit :
    NoSpam a écrit :
    Ils n'arrivent jamais plus loin que mangle INPUT qui est avant la table
    nat et filter
    D'accord. Mais dans ce cas, pourquoi sngrep les intercepte ?
    Tout comme iptables et tcpdump, les paquets sont capturés dès leur
    arrivée. sngrep sait lire du pcap. Si tu regardes les trames INVITE tu
    ne devrais voir aucune réponse de ton asterisk

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?Q?BERTRAND_Jo=c3=abl?=@21:1/5 to All on Mon Jul 3 15:20:01 2023
    NoSpam a écrit :
    Ils n'arrivent jamais plus loin que mangle INPUT qui est avant la table
    nat et filter

    D'accord. Mais dans ce cas, pourquoi sngrep les intercepte ?

    JB

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From =?UTF-8?Q?BERTRAND_Jo=c3=abl?=@21:1/5 to All on Mon Jul 3 15:30:01 2023
    NoSpam a écrit :

    Le 03/07/2023 à 15:12, BERTRAND Joël a écrit :
    NoSpam a écrit :
    Ils n'arrivent jamais plus loin que mangle INPUT qui est avant la table
    nat et filter
        D'accord. Mais dans ce cas, pourquoi sngrep les intercepte ?
    Tout comme iptables et tcpdump, les paquets sont capturés dès leur arrivée. sngrep sait lire du pcap. Si tu regardes les trames INVITE tu
    ne devrais voir aucune réponse de ton asterisk

    Effectivement, il n'y a aucune réponse.

    Merci pour tout,

    JB

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)