近期评论

Archive for 一月, 2013

正向代理和反向代理

 配置正向代理通过修改httpd.conf文件

修改httpd.conf配置文件:

1、设置正向代理监听端口:

Listen 800

 

2、正向代理须要启用的模块:

LoadModule negotiation_module modules/mod_negotiation.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_scgi_module modules/mod_proxy_scgi.so
#LoadModule reqtimeout_module modules/mod_reqtimeout.so
LoadModule rewrite_module modules/mod_rewrite.so

 

3、开启正向代理

ProxyRequests   On

 

配置完以上即可,客户端浏览器设置对应的代理IP地址和端口。

 

———————————————————————————————————————————

反向代理配置如下:

配置正向代理通过修改httpd.conf文件

修改httpd.conf配置文件:

1、设置反向代理监听端口:

Listen 800

 

2、反向代理须要启用的模块:

LoadModule negotiation_module modules/mod_negotiation.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so

#Include conf/extra/httpd-vhosts.conf 

LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so

#反向代理include语句必须在加载mode_proxy_http.so语句之后,否则无法运行:

Include conf/extra/httpd-vhosts.conf

 

LoadModule proxy_scgi_module modules/mod_proxy_scgi.so
#LoadModule reqtimeout_module modules/mod_reqtimeout.so
LoadModule rewrite_module modules/mod_rewrite.so

 

配置反向代理调用文件,路径conf\extra\httpd-vhosts.conf文件:

设置反向代理虚拟主机监听端口:

NameVirtualHost *:80

 

设置反向代理内部服务器即上图的目标server的IP地址:
<VirtualHost 192.168.0.254:80
RewriteEngine On

ProxyPass /ab  http://www.geektcp.com/?p=124
ProxyPassReverse /ab  http://www.geektcp.com/?p=124

</VirtualHost> 

 

通过以上配置,客户端无需设置,只需要在浏览器打开输入:http://192.168.0.254:800/ab

即可返回http://www.geektcp.com/?p=124的页面内容。

137,138,139,445端口区别和IPSec

137:udp端口,单播,netbios name service即NBNS协议,类似DNS协议的查询请求机制,用于查询计算机名,mac地址。

 

138:udp端口,广播,nebios datagram service协议,server message block protocol协议,smb mailslot protocol协议,microsoft windows browser protocol协议用于浏览计算机名。

 

137端口用于查询目的主机MAC地址,计算机名,等信息,通常源端口和目的端口都是137。

 

138端口用于广播本地主机的计算机名,目的地址使用本地广播地址X.X.X.255,其他主机收到广播后,添加计算名和IP到网上邻居列表中,通常源端口和目的端口都是138。

 

139:tcp端口,单播,SMB协议,用于局域网共享文件,源端口为动态端口

 

445:tcp端口,单播,SMB协议,用于局域网共享,和139端口一样,可以混杂使用,源端口为动态端口。

 

139和445只开启一个也可以实现共享,传送和接受文件,两者效果完全一样。

 

IPsec指定策略拒绝某个范围,允许该范围内某个IP时,注意默认拒绝的范围意外的IP段都是允许的,如果拒绝范围勾选镜像,属于该范围的允许IP都必须勾选镜像,否则网络不通。

 

IPsec对于广播、组播地址无效,对于IKE即internet key exchange密钥交换协议、RSVP即资源保留协议(已停用),kerberos协议(已停用)无效。

架设网页代理服务器

首先,确保本地主机80端口没有打开,apache服务器默认使用80端口,避免端口占用。

然后安装运行32位的apache2.2版本,完成后,找到conf文件夹下的httpd.conf文件

用记事本打开找到如下代理模块:

#LoadModule proxy_module modules/mod_proxy.so

#LoadModule proxy_connect_module modules/mod_proxy_connect.so

#LoadModule proxy_http_module modules/mod_proxy_http.so

#LoadModule proxy_ftp_module modules/mod_proxy_ftp.so

 

去掉#号,添加如下内容:

ProxyRequests   On

修改服务器监听端口:

Listen 2013    //2013为服务器开放端口

注意http.conf文件的代码语法要正确,否则无法启动apache服务,通过事件查看器查找错误原因如下图。

重启apache程序,apache服务器默认不通过代理访问网页,其他主机通过在浏览器做如下设置即可通过代理访问网站:

 

 

QQ通过代理登陆需要做如下设置,注意登陆类型设置为TCP类型。

 

需要注意的是使用代理服务器,数据都是明文传送,代理服务器上抓包很容易捕获并查到大致访问内容。

代理服务器其实是跳转程序,客户端只跟代理服务器通信,代理服务器跟网页服务器通信,代理服务器把客户端发过来的web请求转发给网站服务器,网站服务器反馈网页信息给代理服务器,代理服务器再抓发这些反馈信息给客户端,这样客户端就能正常访问网页了。