1

Я установил пару виртуальных машин. Некоторые из них под Windows, некоторые под Fedora Linux. На одной из машин Fedora я установил веб-сервер Apache.

Я настроил имя сервера в httpd.conf на 172.16.27.129:80 , убедился, что доступ к каталогу html Allow from all , и заполнил этот каталог тестовым файлом .html . После запуска httpd у меня веб-сервер работает локально.

Затем я попытался получить к нему доступ с другой машины и не смог. Просто получить сообщение «Firefox не может установить соединение».

Журналы ошибок на серверном компьютере пусты. Я думал, что это может быть брандмауэр, поэтому я настроил iptables следующим образом:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED 
ACCEPT     icmp --  anywhere             anywhere            
ACCEPT     all  --  anywhere             anywhere            
ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:ssh 
REJECT     all  --  anywhere             anywhere            reject-with icmp-host-prohibited 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:http state NEW,ESTABLISHED 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:https state NEW,ESTABLISHED 

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         
REJECT     all  --  anywhere             anywhere            reject-with icmp-host-prohibited 

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

Все еще не повезло. Я думал, что это может быть что-то с сетью. Но у меня есть сервер Subversion, работающий через HTTPS на одной из моих виртуальных машин с Windows, так что сеть должна быть в порядке.

На данный момент у меня закончились идеи. Что я упустил?

ОБНОВЛЕНИЕ: Это должно быть iptables. Я просто отключил его, и все работает.

1 ответ1

2
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED 
ACCEPT     icmp --  anywhere             anywhere            
ACCEPT     all  --  anywhere             anywhere            
ACCEPT     tcp  --  anywhere             anywhere            state NEW tcp dpt:ssh 
REJECT     all  --  anywhere             anywhere            reject-with icmp-host-prohibited 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:http state NEW,ESTABLISHED 
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:https state NEW,ESTABLISHED 

Проблема здесь в том, что обе строки, связанные с трафиком HTTP и HTTPS, идут сразу после записи REJECT , что означает, что эти правила вообще не видны. Их нужно поместить в конфигурацию IPTABLES перед REJECT , иначе они будут заблокированы.

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