LinuxForum.Fans
Тема

нет доступа из основной машины к nginx на виртуальной

Автор: voffcheg109 5 сообщений 2390 просмотров
#290798

Есть компьютер с операционкой windows 7 x64 с адресом 192.168.1.2, подключён к роутеру с адресом 192.168.1.1. На компьютере установен virtual box 4.2.4 с виртуальной машиной CentOS 6.3 x64, подключённой через сетевой мост, с адресом 192.168.1.3, полученным от роутера. На виртуальной машине запущены следующие службы: sshd (порт 22), vsftpd (порт 20), nginx (порт 80). К виртуальной машине подключаюсь через Putty 0.62-Ru-9. Всё остальное на виртуальной машине стоит по умолчанию (в том числе и настройки), больше ничего не устанавливал.
Проблема: не могу получить стандартную страницу nginx с основной машины.

text
192.168.1.3/index.html

Хром пишет:

text
К сожалению, Google Chrome не может открыть страницу 192.168.1.3

, при этом с виртуальной машины

text
localhost/index.html

работает нормально. Аналогично и с ftp. При этом могу подключиться по ssh с обоих машин.

Пробовал подключиться телнетом к виртуальной машине из основной:

text
telnet 192.168.1.3 80 - Подключение к 192.168.1.3... Не удалось открыть подключение к этому узлу, на порт 80: Сбой подключения.

Но на порт ssh виртуальной машины из основной

text
telnet 192.168.1.3 22

происходит нормально.
С виртуальной машины на свой 80 порт - так же соединяется нормально.

text
telnet localhost 80

Вопрос: как получить index.html в основной машине? (Ещё раз повторю - все настройки по-умолчанию).

#290820

Разобрался. Проблема была в iptables. Сорри за то, что намусорил. :)

#290821
"voffcheg109" написал:
Разобрался. Проблема была в iptables.

Было бы не плохо, если бы вы показали, что было «до» и «после» в правилах iptables. Так сказать, в назидание потомкам ;)

#290826
Lupo Alberto написал:
[quote="voffcheg109"]Разобрался. Проблема была в iptables.

Было бы не плохо, если бы вы показали, что было «до» и «после» в правилах iptables. Так сказать, в назидание потомкам ;)[/quote]
В общем было так:

text
[root@localhost user]# iptables --list
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 

Видно, что в пятом правиле режектятся все пакеты, не пропущенные ранее (если я правильно понял). Поэтому я убрал его следующей командой.

text
iptables -D INPUT 5

Всё заработало. Теперь буду думать как это в конфиге прописать. :)

#290987

В /etc/sysconfig/iptables пропиши

text
-A INPUT -m state --state NEW -m tcp -p tcp --dport www -j ACCEPT

А удалять правило запрещающее доступ к не открытым портам не стоило бы.
И да, после потом ещё

text
service iptables restart
Войдите или зарегистрируйтесь, чтобы ответить.