Сервер MedaiWiki публично недоступен на Raspberry Pi
У меня проблемы с публичным доступом к серверу 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 ответ
Вы можете попробовать iptables с параметром -v - он покажет вам количество пакетов и байтов, которые до сих пор соответствовали определенному правилу, или действие по умолчанию для цепочек (как ваше действие INPUT DROP).
Кроме того, запустите "tcpdump port 80" на вашем Raspberry Pi. Он покажет вам все пакеты на порту 80 даже до того, как iptables сможет их отбросить. Другой возможностью будет "tcpflow -c порт 80", он показывает меньше информации о пакетах и больше о реальном HTTP-потоке.
Как tcpdump, так и tcpflow обычно не устанавливаются по умолчанию, поэтому сначала вам нужно будет это сделать.