?

Log in

No account? Create an account
Previous Entry Поделиться Next Entry
Не работает PPTP через NAT на Линуксе. Модули вроде загружены.
logo
seeker_dsr wrote in ru_linux
Коллеги подскажите куда можно копать: не работает прохождение pptp через нат на линуксовом сервере.



Модули - загружены.
# lsmod |grep pptp
nf_nat_pptp 16384 0
nf_nat_proto_gre 16384 1 nf_nat_pptp
nf_conntrack_pptp 16384 1 nf_nat_pptp
nf_conntrack_proto_gre 16384 1 nf_conntrack_pptp
nf_nat 28672 4 nf_nat_pptp,nf_nat_proto_gre,nf_nat_masquerade_ipv4,nf_nat_ipv4
nf_conntrack 135168 9 nf_nat_pptp,nf_conntrack_ipv4,ipt_MASQUERADE,nf_conntrack_pptp,nf_conntrack_proto_gre,nf_nat_masquerade_ipv4,xt_conntrack,nf_nat_ipv4,nf_nat

фаервол вроде ничего блокировать не должен
-A POSTROUTING -s 192.168.1.0/24 -o enp2s0.3 -j MASQUERADE
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -p gre -j ACCEPT

tcpdump вообще что-то странное показывает:
на внутреннем интерфейсе - GRE в одну сторону:

22:33:44.297649 IP 192.168.1.3.65254 > 185.9.230.194.1723: Flags [S], seq 2901683548, win 65520, options [mss 1260,nop,wscale 8,nop,nop,sackOK], length 0
22:33:44.308620 IP 185.9.230.194.1723 > 192.168.1.3.65254: Flags [S.], seq 1148926286, ack 2901683549, win 14600, options [mss 1460,nop,nop,sackOK,nop,wscale 7], length 0
22:33:44.308903 IP 192.168.1.3.65254 > 185.9.230.194.1723: Flags [.], ack 1, win 260, length 0
22:33:44.309044 IP 192.168.1.3.65254 > 185.9.230.194.1723: Flags [P.], seq 1:157, ack 1, win 260, length 156: pptp CTRL_MSGTYPE=SCCRQ PROTO_VER(1.0) FRAME_CAP(A) BEARER_CAP(A) MAX_CHAN(0) FIRM_REV(0) HOSTNAME() VENDOR(Microsoft)
22:33:44.319179 IP 185.9.230.194.1723 > 192.168.1.3.65254: Flags [.], ack 157, win 123, length 0
22:33:44.320709 IP 185.9.230.194.1723 > 192.168.1.3.65254: Flags [P.], seq 1:157, ack 157, win 123, length 156: pptp CTRL_MSGTYPE=SCCRP PROTO_VER(1.0) RESULT_CODE(1) ERR_CODE(0) FRAME_CAP() BEARER_CAP() MAX_CHAN(1) FIRM_REV(1) HOSTNAME(local) VENDOR(linux)
22:33:44.320994 IP 192.168.1.3.65254 > 185.9.230.194.1723: Flags [P.], seq 157:325, ack 157, win 260, length 168: pptp CTRL_MSGTYPE=OCRQ CALL_ID(22699) CALL_SER_NUM(35) MIN_BPS(300) MAX_BPS(100000000) BEARER_TYPE(Any) FRAME_TYPE(E) RECV_WIN(64) PROC_DELAY(0) PHONE_NO_LEN(0) PHONE_NO() SUB_ADDR()
22:33:44.330761 IP 185.9.230.194.1723 > 192.168.1.3.65254: Flags [P.], seq 157:189, ack 325, win 131, length 32: pptp CTRL_MSGTYPE=OCRP CALL_ID(22016) PEER_CALL_ID(22699) RESULT_CODE(1) ERR_CODE(0) CAUSE_CODE(0) CONN_SPEED(100000000) RECV_WIN(64) PROC_DELAY(0) PHY_CHAN_ID(0)
22:33:44.333289 IP 192.168.1.3.65254 > 185.9.230.194.1723: Flags [P.], seq 325:349, ack 189, win 260, length 24: pptp CTRL_MSGTYPE=SLI PEER_CALL_ID(22016) SEND_ACCM(0xffffffff) RECV_ACCM(0xffffffff)
22:33:44.336523 IP 192.168.1.3 > 185.9.230.194: GREv1, call 22016, seq 0, length 37: LCP, Conf-Request (0x01), id 0, length 23
22:33:44.382472 IP 185.9.230.194.1723 > 192.168.1.3.65254: Flags [.], ack 349, win 131, length 0
22:33:46.355083 IP 192.168.1.3 > 185.9.230.194: GREv1, call 22016, seq 1, length 37: LCP, Conf-Request (0x01), id 1, length 23
22:33:49.358892 IP 192.168.1.3 > 185.9.230.194: GREv1, call 22016, seq 2, length 37: LCP, Conf-Request (0x01), id 2, length 23
22:33:53.378380 IP 192.168.1.3 > 185.9.230.194: GREv1, call 22016, seq 3, length 37: LCP, Conf-Request (0x01), id 3, length 23
22:33:57.410191 IP 192.168.1.3 > 185.9.230.194: GREv1, call 22016, seq 4, length 37: LCP, Conf-Request (0x01), id 4, length 23
22:34:01.428014 IP 192.168.1.3 > 185.9.230.194: GREv1, call 22016, seq 5, length 37: LCP, Conf-Request (0x01), id 5, length 23
22:34:05.431262 IP 192.168.1.3 > 185.9.230.194: GREv1, call 22016, seq 6, length 37: LCP, Conf-Request (0x01), id 6, length 23
22:34:09.437398 IP 192.168.1.3 > 185.9.230.194: GREv1, call 22016, seq 7, length 37: LCP, Conf-Request (0x01), id 7, length 23
22:34:13.441900 IP 192.168.1.3 > 185.9.230.194: GREv1, call 22016, seq 8, length 37: LCP, Conf-Request (0x01), id 8, length 23
22:34:14.356437 IP 185.9.230.194.1723 > 192.168.1.3.65254: Flags [F.], seq 189, ack 349, win 131, length 0
22:34:14.356668 IP 192.168.1.3.65254 > 185.9.230.194.1723: Flags [.], ack 190, win 260, length 0
22:34:14.357415 IP 192.168.1.3.65254 > 185.9.230.194.1723: Flags [F.], seq 349, ack 190, win 260, length 0
22:34:14.367183 IP 185.9.230.194.1723 > 192.168.1.3.65254: Flags [.], ack 350, win 131, length 0

На внешнем - идут сбросы конфигурации уже внутри GRE

22:35:22.986166 IP 93.92.202.203.65269 > 185.9.230.194.1723: Flags [S], seq 3275818514, win 65520, options [mss 1260,nop,wscale 8,nop,nop,sackOK], length 0
22:35:22.998245 IP 185.9.230.194.1723 > 93.92.202.203.65269: Flags [S.], seq 1665150014, ack 3275818515, win 14600, options [mss 1460,nop,nop,sackOK,nop,wscale 7], length 0
22:35:22.998586 IP 93.92.202.203.65269 > 185.9.230.194.1723: Flags [.], ack 1, win 260, length 0
22:35:22.998602 IP 93.92.202.203.65269 > 185.9.230.194.1723: Flags [P.], seq 1:157, ack 1, win 260, length 156: pptp CTRL_MSGTYPE=SCCRQ PROTO_VER(1.0) FRAME_CAP(A) BEARER_CAP(A) MAX_CHAN(0) FIRM_REV(0) HOSTNAME() VENDOR(Microsoft)
22:35:23.011812 IP 185.9.230.194.1723 > 93.92.202.203.65269: Flags [.], ack 157, win 123, length 0
22:35:23.012759 IP 185.9.230.194.1723 > 93.92.202.203.65269: Flags [P.], seq 1:157, ack 157, win 123, length 156: pptp CTRL_MSGTYPE=SCCRP PROTO_VER(1.0) RESULT_CODE(1) ERR_CODE(0) FRAME_CAP() BEARER_CAP() MAX_CHAN(1) FIRM_REV(1) HOSTNAME(local) VENDOR(linux)
22:35:23.013006 IP 93.92.202.203.65269 > 185.9.230.194.1723: Flags [P.], seq 157:325, ack 157, win 260, length 168: pptp CTRL_MSGTYPE=OCRQ CALL_ID(64151) CALL_SER_NUM(36) MIN_BPS(300) MAX_BPS(100000000) BEARER_TYPE(Any) FRAME_TYPE(E) RECV_WIN(64) PROC_DELAY(0) PHONE_NO_LEN(0) PHONE_NO() SUB_ADDR()
22:35:23.023784 IP 185.9.230.194.1723 > 93.92.202.203.65269: Flags [P.], seq 157:189, ack 325, win 131, length 32: pptp CTRL_MSGTYPE=OCRP CALL_ID(22144) PEER_CALL_ID(64151) RESULT_CODE(1) ERR_CODE(0) CAUSE_CODE(0) CONN_SPEED(100000000) RECV_WIN(64) PROC_DELAY(0) PHY_CHAN_ID(0)
22:35:23.025549 IP 93.92.202.203.65269 > 185.9.230.194.1723: Flags [P.], seq 325:349, ack 189, win 260, length 24: pptp CTRL_MSGTYPE=SLI PEER_CALL_ID(22144) SEND_ACCM(0xffffffff) RECV_ACCM(0xffffffff)
22:35:23.027597 IP 93.92.202.203 > 185.9.230.194: GREv1, call 22144, seq 0, length 37: LCP, Conf-Request (0x01), id 0, length 23
22:35:23.027802 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 0, length 45: LCP, Conf-Request (0x01), id 1, length 31
22:35:23.040763 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 1, ack 0, length 27: LCP, Conf-Reject (0x04), id 0, length 9
22:35:23.075435 IP 185.9.230.194.1723 > 93.92.202.203.65269: Flags [.], ack 349, win 131, length 0
22:35:25.028175 IP 93.92.202.203 > 185.9.230.194: GREv1, call 22144, seq 1, length 37: LCP, Conf-Request (0x01), id 1, length 23
22:35:25.039888 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 2, ack 1, length 27: LCP, Conf-Reject (0x04), id 1, length 9
22:35:26.029150 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 3, length 45: LCP, Conf-Request (0x01), id 1, length 31
22:35:28.030012 IP 93.92.202.203 > 185.9.230.194: GREv1, call 22144, seq 2, length 37: LCP, Conf-Request (0x01), id 2, length 23
22:35:28.042077 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 4, ack 2, length 27: LCP, Conf-Reject (0x04), id 2, length 9
22:35:29.029977 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 5, length 45: LCP, Conf-Request (0x01), id 1, length 31
22:35:32.032960 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 6, length 45: LCP, Conf-Request (0x01), id 1, length 31
22:35:32.049247 IP 93.92.202.203 > 185.9.230.194: GREv1, call 22144, seq 3, length 37: LCP, Conf-Request (0x01), id 3, length 23
22:35:32.060872 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 7, ack 3, length 27: LCP, Conf-Reject (0x04), id 3, length 9
22:35:35.036132 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 8, length 45: LCP, Conf-Request (0x01), id 1, length 31
22:35:36.053067 IP 93.92.202.203 > 185.9.230.194: GREv1, call 22144, seq 4, length 37: LCP, Conf-Request (0x01), id 4, length 23
22:35:36.065466 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 9, ack 4, length 27: LCP, Conf-Reject (0x04), id 4, length 9
22:35:38.037935 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 10, length 45: LCP, Conf-Request (0x01), id 1, length 31
22:35:40.057820 IP 93.92.202.203 > 185.9.230.194: GREv1, call 22144, seq 5, length 37: LCP, Conf-Request (0x01), id 5, length 23
22:35:40.069067 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 11, ack 5, length 27: LCP, Conf-Reject (0x04), id 5, length 9
22:35:41.039916 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 12, length 45: LCP, Conf-Request (0x01), id 1, length 31
22:35:44.042965 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 13, length 45: LCP, Conf-Request (0x01), id 1, length 31
22:35:44.063453 IP 93.92.202.203 > 185.9.230.194: GREv1, call 22144, seq 6, length 37: LCP, Conf-Request (0x01), id 6, length 23
22:35:44.074703 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 14, ack 6, length 27: LCP, Conf-Reject (0x04), id 6, length 9
22:35:47.045991 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 15, length 45: LCP, Conf-Request (0x01), id 1, length 31
22:35:48.069343 IP 93.92.202.203 > 185.9.230.194: GREv1, call 22144, seq 7, length 37: LCP, Conf-Request (0x01), id 7, length 23
22:35:48.081333 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 16, ack 7, length 27: LCP, Conf-Reject (0x04), id 7, length 9
22:35:50.047868 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 17, length 45: LCP, Conf-Request (0x01), id 1, length 31
22:35:52.094264 IP 93.92.202.203 > 185.9.230.194: GREv1, call 22144, seq 8, length 37: LCP, Conf-Request (0x01), id 8, length 23
22:35:52.106386 IP 185.9.230.194 > 93.92.202.203: GREv1, call 64151, seq 18, ack 8, length 27: LCP, Conf-Reject (0x04), id 8, length 9
22:35:53.051305 IP 185.9.230.194.1723 > 93.92.202.203.65269: Flags [F.], seq 189, ack 349, win 131, length 0
22:35:53.051560 IP 93.92.202.203.65269 > 185.9.230.194.1723: Flags [.], ack 190, win 260, length 0
22:35:53.052122 IP 93.92.202.203.65269 > 185.9.230.194.1723: Flags [F.], seq 349, ack 190, win 260, length 0
22:35:53.062039 IP 185.9.230.194.1723 > 93.92.202.203.65269: Flags [.], ack 350, win 131, length 0


  • 1
Чтобы конкретно разобраться что там -- хорошо бы посмотреть внутрь этих confreq запросов. Т.е. записать полностью пакеты и либо выложыть либо wireshark/tshark поглядеть что там внутри.

Но это явно ядерный nf_nat_xxx генерирует, так что если нужно не более одного pptp-соединения через этот роутер на один внешний хост -- то можно как раз попробовать выгрузить nf_nat_pptp nf_nat_*_gre, можэт заработает.

если из выгрузить - то роутер тупо бросает транзитный GRE (со стороны клиента выглядит как моментальный сброс после проверки пароля)

Другого PPTP соединения на файрволе в это же время нет?

А, кстати, у всех, у кого оно работает -- ещё загружэн модуль ip_gre. По-моему, для этого он не нужэн, но проверьте всё жэ, хужэ не должно быть -- а можэт и нужэн.

Похоже это касается conntrack helper:
http://blog.tataranovich.com/2017/06/pptp-nat.html

Так GRE - это отдельный протокол. Есть в файрволе правило, которое эти пакеты с внешнего интерфейса форвардит на 192.168.1.3 ?

  • 1