2014-04-04 33 views
0

我在GoDaddy上购买了域名,但是使用Node.js开发了该网站。所以,我在VPSGet上购买了VPS并部署了服务器。我设法将域名链接到VPS IP地址。但是,由于我的node.js应用程序正在运行特定的端口号,因此我需要执行端口转发,以便www.domain-name.com将重定向到VPS上的进程和端口。我试图配置我的防火墙如下使用VPSGet进行端口转发


*nat 
:PREROUTING ACCEPT [0:0] 
-A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 7497 

COMMIT 

*filter 
# Allow all loopback (lo0) traffic and drop all traffic to 127/8 that doesn't use lo0 
-A INPUT -i lo -j ACCEPT 
-A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT 

# Accept all established inbounds connections 
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT 

# Allow all outbounds traffic 
-A OUTPUT -j ACCEPT 

# Allow HTTP and HTTPS connections from anywhere. Here, we use normal ports for http and ssl 
-A INPUT -p tcp --dport 80 -j ACCEPT 
-A INPUT -p tcp --dport 443 -j ACCEPT 

# Allow http connections to node.js app 
-A INPUT -p tcp --dport 7497 -j ACCEPT 
-A INPUT -p tcp --dport 7525 -j ACCEPT 
-A INPUT -p tcp --dport 2368 -j ACCEPT 

# Allow forwarding to port 7497 
-A FORWARD -p tcp -m tcp --dport 7497 -j ACCEPT 

# Allow ports for testing 
-A INPUT -p tcp --dport 8080:8099 -j ACCEPT 

# Allow ports for mobile shell 
-A INPUT -p tcp --dport 60000:61000 -j ACCEPT 

# Allow ssh connections 
-A INPUT -p tcp -m state --state NEW --dport 7112 -j ACCEPT 

# Allow Ping 
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT 

# Log iptables denied calls 
-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied:" --log-level 7 

# Reject all other outbounds 
-A INPUT -j REJECT 
-A FORWARD -j REJECT 

COMMIT 

但是,重定向不起作用。有人能告诉我我做错了什么吗?请注意,我在VPS上运行Ubuntu 12.04。 谢谢, José

+0

你可以运行“IP路由表”,并验证您的外部接口实际上是在用“eth0”。很多VPS提供者使用虚拟接口。我使用“venet0”。这与VPSnet wiki上的相同。您可能需要调整REDIRECT规则以使用正确的接口名称。 – Dave

+0

感谢它的工作 – joque

回答