LINUX.ORG.RU
ФорумAdmin

Не заходит на сервер через внешний айпи


0

1

Сеть internet(80.66.242.229) > router(192.168.1.1) > desktop(192.168.1.100), server(192.168.1.103) > openvz виртуалки(192.168.1.10, 192.168.1.11)

На server стоит debian + openvz. Подключен nginx. В рутере прописан по маку статичный ip(192.168.1.103). Настроен forwarding на (80,8080,443) порт на (192.168.1.103).

С локальной сети заходит как по (192.168.1.103) так и по внешке (80.66.242.229). На сервере Настроен nginx.

Не зайти на сервер через внешний айпи вне сети. Iptables пустой на сервере.

Цель зайти на сервер вне локальной сети. В дальнейшем пробросить на виртуалки внешний айпи. Кароче говоря, хочу поставить на виртуалки веб сервер + сайт и чтобы можно было на него зайти вне сети. Но на данный момент не заходит даже на server(192.168.1.103) c nginx.

В чем может быть проблема ?

В чем может быть проблема ?

В карме. Только плохая карма может привести к тому, что ты не сумел настроить раутер корректным образом.

no-dashi ★★★★★
()
Ответ на: комментарий от no-dashi

тогда как его настроить корректным образом ? ip прописан, порты открыты.

Romus1989
() автор топика

И все в одной сети 192.168.1.0/24? У всех шлюз указан ип роутера 192.168.1.1? Мне не ясно зачем ты статичный маршрут сделал.

Deleted
()
Ответ на: комментарий от Deleted
# T

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface 
auto eth0
allow-hotplug eth0 
iface eth0 inet dhcp

Это на сервере.
Статичного маршрута нету, роутер раздает dhcp.
Прописан только Address Reservation для сервера (192.168.1.103) по маку. Остальные автоматом.
Еще Port Forwarding - Virtual Servers 80 порт на (192.168.1.103)
Совсем уже запутался...

Romus1989
() автор топика
Ответ на: комментарий от Romus1989

Тогда нарисуй себе схему, куда что подключено. То что ты написал, то получается всё в одну цепочку подключено. Или всё в один свит подключено?

Deleted
()
Ответ на: комментарий от Romus1989

Так более менее понятно.

Как на сервере организована сеть для виртуалок? Через bridge?

А на роутере как проброс и фаервол настроен?

Deleted
()
Ответ на: комментарий от Romus1989

port trigerring делал когда, пробывал nginx на сервере на другом порту. Потом как я понял по дефолту морда рутера тоже висит на 80. Сейчас поставил на 1025 порт морду.

Romus1989
() автор топика
Ответ на: комментарий от Deleted

Nginx и на сервере и на виртуалках. Но виртуалки отключены. Не разобрался.
Взял другой рутер, прошил его на openwrt.
Сейчас пытаюсь настроить домашнюю сеть с нуля. Честно говоря, закопался по самое не балуй.
Подскажешь как мою сеть грамотно на openwrt настроить ?

Romus1989
() автор топика
Ответ на: комментарий от Romus1989

/etc/config/network

#### Loopback configuration        
config interface loopback          
        option ifname   "lo"       
        option proto    static     
        option ipaddr   127.0.0.1  
        option netmask  255.0.0.0  
                                   
                                 
#### LAN configuration           
config interface lan             
        option type     bridge   
        option ifname   "eth0.0" 
        option proto    static   
        option ipaddr   192.168.1.1
        option netmask  255.255.255.0
                                     
                                     
#### WAN configuration               
config interface        wan          
        option ifname   "eth0.1"     
        option proto    dhcp         
        option macaddr  "D8:5D:4C:CB:54:E1"
/etc/config/dhcp
config 'srv'                                  
        option 'name'   'srv'                 
        option 'ip'     '192.168.1.103'
        option 'mac'    '00:19:db:29:c3:4a'

Romus1989
() автор топика
Ответ на: комментарий от Romus1989

/etc/config/firewall

config redirect                                        
        option src              wan                    
        option src_dport        80                     
        option dest             lan                    
        option dest_ip          192.168.1.103          
        option dest_port        80                     
        option proto            tcp      

Внутри сети стал заходить на внешний айпи, вне также не заходит.

Romus1989
() автор топика
Ответ на: комментарий от turtle_bazon

roman@srv:~$ sudo iptables -L

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Меня смущает вот Firewall Zones

Romus1989
() автор топика
Ответ на: комментарий от Romus1989

root@OpenWrt:/# vim /etc/config/firewall

config 'zone'                    
        option 'name' 'wan'      
        option 'network' 'wan'   
        option 'output' 'ACCEPT' 
        option 'forward' 'REJECT'       
        option 'masq' '1'               
        option 'mtu_fix' '1'            
        option 'input' 'REJECT'  

Romus1989
() автор топика
Ответ на: комментарий от Romus1989

Все работает.Если поставить 80 порт, опять то не работает. Что может висеть на 80 порту ? веб морда openwrt ?

/etc/nginx/sites-available/srv.conf

listen       81;

root@OpenWrt:/etc# vim /etc/config/firewall

config 'redirect'                                 
        option '_name' 'incoming_81'              
        option 'src' 'wan'                        
        option 'proto' 'tcpudp'                   
        option 'dest_ip' '192.168.1.103'          
        option 'target' 'DNAT'                    
        option 'dest' 'lan'                       
        option 'src_dport' '81'
Romus1989
() автор топика
Ответ на: комментарий от turtle_bazon

А как глянуть внутри рутера в консоле используемые порты ? lsof не установлен.

Просто, захожу с мобильника xD

Romus1989
() автор топика
Ответ на: комментарий от Romus1989

По идее, он не должен мешать для соединенй с внешки.

turtle_bazon ★★★★★
()
Ответ на: комментарий от Romus1989

Добавил в iptables

iptables -t nat -A prerouting_wan -p tcp --dport 80 -j DNAT --to 192.168.1.103:80
iptables -A forwarding_wan -p tcp --dport 80 -d 192.168.1.103 -j ACCEPT
root@OpenWrt:/etc# vim /etc/config/uhttpd
# HTTP listen addresses, multiple allowed
list listen_http        192.168.1.1:80

# Reject requests from RFC1918 IP addresses             
# directed to the servers public IP(s).                 
# This is a DNS rebinding countermeasure.               
option rfc1918_filter 0    

Убрал в конфиге option rfc1918_filter 1 на 0

Romus1989
() автор топика
Ответ на: комментарий от turtle_bazon
root@OpenWrt:/etc# netstat -ln            
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      
tcp        0      0 0.0.0.0:53              0.0.0.0:*               LISTEN      
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      
tcp        0      0 0.0.0.0:23              0.0.0.0:*               LISTEN      
netstat: /proc/net/tcp6: No such file or directory
udp        0      0 0.0.0.0:53              0.0.0.0:*                           
udp        0      0 0.0.0.0:67              0.0.0.0:*                           
udp        0      0 0.0.0.0:68              0.0.0.0:*                           
udp        0      0 0.0.0.0:68              0.0.0.0:*                           
udp        0      0 0.0.0.0:68              0.0.0.0:* 
Romus1989
() автор топика
Ответ на: комментарий от Romus1989

Ты у себя же внутри сети и проверяешь? Или физически из другой сети тыкаешь? У самого провайдера могут отфильтровываться определенные порты, потому я проверяю так:

Открываю порт в интервале 10000-55000, проверяю с другой машины, которая у другого провайдера вообще, затем ставлю нужный порт, предварительно проверив - не занят ли, потом уже плюю и настраиваю OpenVPN

minakov ★★★★★
()
Ответ на: комментарий от Romus1989

Ну на 80 порту висит, конечно, у тебя. Но когда форвардинг делаешь, он мимо него должен пройти. Только если ещё каких правил нет. iptables -t nat -L, iptables -L в роутере.

turtle_bazon ★★★★★
()
Ответ на: комментарий от minakov

Проверяю у себя в сети, локальным адресом, внешним адресом. Потом захожу с телефона, другой провайдер. С телефона только на 81 все работает, 80 пока ни в какую. Вот думаю как домен на 81 повесить. Скорей всего, где-то что-то упустил. Потому-что на 80 уже заходил через внешку с раздачи телефона, правда на сам рутер openwrt. Темболее выкидывало Rejected request from RFC1918 IP to public server address с телефона, а значит это дело настроек.

Romus1989
() автор топика
Ответ на: комментарий от turtle_bazon
root@OpenWrt:/etc# iptables -t nat -L | grep :80 
DNAT       tcp  --  192.168.1.0/24       80.66.242.229       tcp dpt:www to:192.168.1.103:80 
DNAT       udp  --  192.168.1.0/24       80.66.242.229       udp dpt:80 to:192.168.1.103:80 
SNAT       udp  --  192.168.1.0/24       192.168.1.103       udp dpt:80 to:192.168.1.1  
root@OpenWrt:/etc# iptables -L | grep :80
ACCEPT     udp  --  192.168.1.0/24       192.168.1.103       udp dpt:80 
Romus1989
() автор топика
Ответ на: комментарий от Romus1989

Может, провайдер блочит 80 порт? Попробуй админку роутера наружу открыть и посмотреть, будет ли оона доступна?

turtle_bazon ★★★★★
()
Ответ на: комментарий от turtle_bazon

Врятли.
Повесил uhttpd на 192.168.1.1:82
Отключил option rfc1918_filter 0
Добавил:

/etc/config/firewall
config 'rule'                            
        option 'src' 'wan'               
        option 'dest_port' '80'          
        option 'target' 'ACCEPT'         
        option 'proto' 'tcp'

config 'redirect'                         
        option '_name' '80wan'            
        option 'src' 'wan'                
        option 'proto' 'tcpudp'           
        option 'src_dport' '80'           
        option 'dest_ip' '192.168.1.103'  
        option 'dest_port' '80'           
        option 'target' 'DNAT'            
        option 'dest' 'lan'               
        option 'src_port' '80'  

root@OpenWrt:/# iptables -t nat -A prerouting_wan -p tcp --dport 80 -j DNAT --to 192.168.1.103:80
root@OpenWrt:/# iptables -A forwarding_wan -p tcp --dport 80 -d 192.168.1.103 -j ACCEPT

Стало теперь в браузере редиректить с 80 на 81 автоматичсеки. Че за ерунда ?

Romus1989
() автор топика
Ответ на: комментарий от Romus1989

еще вопрос, как поднять домен на 81 порт ? Я как понимаю надо зарегить бесплатный и потом как-то прикрутить ?

Romus1989
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.