搭建nginx反向代理用做内网域名转发

作者:@ouyang 发布时间:2015年07月21日 阅读: 1,979 分类:技术相关

本文转载自:  搭建nginx反向代理用做内网域名转发 http://blog.csdn.net/tham_/article/details/45973787

在实际办公网中,因为出口IP只有一个,要实现对外提供服务的话就必须得做端口映射,如果有多个服务要对外开放的话,这只能通过映射不同端口来区分,这在实际使用过程中非常的痛苦(记忆困难、一一对应关系也没有规律、访问的时候还得加端口),这个痛苦的问题用表格的形式来形象的描述如下:

Public IP Public Port Number Internal IP Internal Port Number Note
1.1.1.1

80

192.168.1.10

80

service A
1.1.1.1

81

192.168.1.11

80

service B
1.1.1.1

8080

192.168.1.25

80

service C
1.1.1.1

443

192.168.1.26

443

service D
1.1.1.1

444

192.168.1.35

443

service E

在需要对外开放的服务很多的情况下,NAT的方式虽然难用、难记,但至少还是能够满足需求的(可用端口要小于65535个),但如果A、B、C服务都想(或者必须)使用默认的80、443端口的话,在只有一个公网IP的情况下是没法满足的,如果能有一种如下的实现方式,那就完美了:

Domain Name Public IP Public Port Number Internal IP Internal Port Number Note
A.example.com 1.1.1.1 80 192.168.1.10 80 service A
B.example.com 1.1.1.1 80 192.168.1.11 80 service B
C.example.com 1.1.1.1 80 192.168.1.25 80 service C
D.example.com 1.1.1.1 443 192.168.1.26 443 service D
E.example.com 1.1.1.1 443 192.168.1.35 443 service E

 

首先来分析一下,传统NAT的话肯定是实现不了,因为NAT是3层ip加4层端口的方式做映射,而域名(如http header中)都属于7层的内容,要实现的话只能借助支持7层http协议解析的工具实现,经过一番研究发现反向代理可以实现,那太好了,反响代理的工具一大堆:squid、apache、nginx、haproxy、mysql proxy等等,本文仅讲基于http、https协议的实现,其他协议暂不讨论。

有了工具的支持,接下来就得考虑考虑如何部署的问题:

(1)域名解析到路由器的公网ip-->在路由器(pfsense)上安装squid-->配置反向代理(开启http、https反向代理、主机映射、域名正则匹配转发)-->成功实现(需要路由器支持);

(2)域名解析到路由器的公网ip-->在路由器上做传统NAT,将80、443端口分别指向反向代理服务器-->配置反向代理服务器的-->成功实现(通用方法);

WINDOWS 2008Server 配置nginx 反向代理服务器

本案例有用过可行
0、先要在域名官网上面配置域名对应的IP地址,然后要在自己路由器上面将80端口映射到要装nginx服务器的IP地址。
1、从官网上面下载nginx1.6.2   WINDOWS版本的。访问地址http://nginx.org/en/download.html
2、解压缩到C盘根目录下面
3、复制C:\nginx\conf\nginx.conf,保存成一个副本
4、编辑nginx.conf,内容如下

阅读剩余部分...

DirectAdmin安装成功,但无法登录管理后台

作者:欧阳 发布时间:2013年03月07日 阅读: 1,459 分类:Linux摘要

在国内服务器上DA安装两遍都无法通过管理后台登录。

开始以为是安装中间出现问题,但花费3个小时逐个安装还是无法访问。

后面仔细看到DA检测出来的是Server IP: 10.0.5.115,想想是否是授权IP没有填写外网授权IP的问题?

由于服务器没有双网卡,网卡都是填写的内网IP地址,不能够顺便改动,所以添加一张虚拟网卡试试?

进入cd /etc/sysconfig/network-scripts   用ls查看到只有ifcfg-eth0

ifcfg-eth0内容,看到是开启了dhcp。

阅读剩余部分...

CentOS VPS端口问题

作者:欧阳 发布时间:2012年10月05日 阅读: 1,116 分类:Linux摘要

朋友一国内VPS出现问题,登录一查看装的是非常简单化的LNMP。

端口21、 22 没问题,LNMP安装也没问题。

全部没问题那就是iptables规则的问题了?

输入 /etc/init.d/iptables stop

一查看果真如此。随即几条命令搞定。

开启80端口:

iptables -I INPUT -p tcp --dport 80 -j ACCEPT
/etc/rc.d/init.d/iptables save #保存配置 
/etc/rc.d/init.d/iptables restart #重启服务

/etc/init.d/iptables save 或service iptables save

保存iptables规则。service iptables restart 测试,搞定。

iptables几个命令:

{start|stop|restart|condrestart|status|panic|save}

为了安全请修改您的DirectAdmin访问端口

作者:欧阳 发布时间:2012年10月04日 阅读: 1,104 分类:Linux摘要

为了安全请修改DirectAdmin访问端口。

方法:

vi /usr/local/directadmin/conf/directadmin.conf

 

搜索 /2222

按i键 编辑

将2222修改成你想要的端口号。

Esc 键,输入 :wq 保存退出。

再执行:

service directadmin restart

重启DA. 完毕!