1

У меня проблемы с публичным доступом к серверу MediaWiki, который я настроил на своем Raspberry Pi. Я получаю сообщение об ошибке "Превышено время ожидания соединения" при попытке удаленного посещения сервера. Однако он доступен для всех компьютеров в моей локальной сети.

Похоже, что это не проблема моего маршрутизатора или переадресации портов, поскольку я могу изменить целевой IP-адрес на мой Macbook и получить открытый доступ к серверу Apache, установленному на нем.

Я убедился, что ufw неактивен, и использовал iptables для добавления правил, разрешающих HTTP-трафик. Вывод sudo iptables -L ниже.

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     tcp  --  anywhere             anywhere             tcp dpt:http state NEW,ESTABLISHED

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     tcp  --  anywhere             anywhere             tcp spt:http state ESTABLISHED

Запуск netstat -l дает следующее:

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 *:ssh                   *:*                     LISTEN
tcp        0      0 localhost:postgresql    *:*                     LISTEN
tcp        0      0 localhost:4700          *:*                     LISTEN
tcp        0      0 *:microsoft-ds          *:*                     LISTEN
tcp        0      0 *:afpovertcp            *:*                     LISTEN
tcp        0      0 localhost:mysql         *:*                     LISTEN
tcp        0      0 localhost:6379          *:*                     LISTEN
tcp        0      0 *:netbios-ssn           *:*                     LISTEN
tcp        0      0 *:http                  *:*                     LISTEN
udp        0      0 *:26592                 *:*
udp        0      0 *:mdns                  *:*
udp        0      0 *:42516                 *:*
udp        0      0 *:bootpc                *:*
udp        0      0 raspberrypi:ntp         *:*
udp        0      0 localhost:ntp           *:*

Есть ли способ записать, что именно происходит с этим запросом на Пи?

1 ответ1

0

Вы можете попробовать iptables с параметром -v - он покажет вам количество пакетов и байтов, которые до сих пор соответствовали определенному правилу, или действие по умолчанию для цепочек (как ваше действие INPUT DROP).

Кроме того, запустите "tcpdump port 80" на вашем Raspberry Pi. Он покажет вам все пакеты на порту 80 даже до того, как iptables сможет их отбросить. Другой возможностью может быть «tcpflow -c порт 80», он показывает меньше информации о пакетах и больше о реальном HTTP-потоке.

Как tcpdump, так и tcpflow обычно не устанавливаются по умолчанию, поэтому сначала вам нужно будет это сделать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .