请教:国外空间搭建代理服务器

请教:国外空间搭建代理服务器,第1张

Squid是Linux下最为流行的代理服务器软件,它功能强大,支持对HTTP、FTP、Gopher、SSL、WAIS等协议的代理; 设置简单,只需对配置文件稍稍改动就可使代理服务器运转起来。此外,Squid具有页面缓存功能,它接受用户的下载申请,并自动处理所下载的数据。 前期准备 Squid对硬件的要求是: 内存不应小于128M,硬盘转速越快越好,最好使用服务器专用SCSI硬盘,对CPU的要求不高,400MHz以上即可。笔者所管理的代理服务器是Inter2150,安装了Red Hat Linux 72,安装时就带有Squid。有两块网卡,一块eth0配外部地址(比如211889966),一块eth1配内网地址(比如19216851)。如果安装了Gnome或其他图形界面,就可以在netconfig中给两块网卡配置IP地址,不然的话,可在/etc/sysconfig/network-script路径下更改文件ifcfg-eth0和ifcfg-eth1。 首先编辑ifcfg-eht0,有以下几项: DEVICE=eth0 (表示用哪块网卡) IPADDR=211889966 (设置该网卡的IP地址) NETMASK=255255255252 (设置子网掩码) 同样编辑ifcfg-eth1,然后运行命令network restart就可以使配置生效了。对eth0、eth1进行配置后,可以用ifconfig命令来查看是不是配置成功。 如果服务器只有一张网卡,也不用担心,Linux可以在一块网卡上绑定多个IP地址。在图形界面下配置很简单,不赘述。如果在文本状态下配置,可以将ifcfg-eth0复制并命名为ifcfg-eth0:1,把它完全当成两块网卡来配就可以了。 Squid的安装 1 安装Linux 安装Linux在硬盘分区时要注意,最好不要让系统自己分区,而是手动分区。通常,在Linux系统中有且仅有一个交换分区(在文件系统形式中选择Linux swap),它用做虚拟内存,建议将交换分区的大小设置为内存的两倍。当硬盘的大小超过了8G,要再建立一个128M(稍稍大一点,不会出错)的boot分区,这是为了避免将系统内核文件放到1024磁道以外,如果将boot作为root分区的一个子目录,内核文件就会安装在root分区的任何地方。因为要用做代理服务器,建议再分一个分区“var”,作为Squid的缓冲区,所以根据磁盘大小尽量分配大一点,最后将硬盘的剩余空间全部分给root分区。 2 安装Squid 新手安装Squid,建议在安装Linux时就选中Squid,它并不是默认选中项,而且也不在选择的大类中,要在详细列表中查找。如果没有安装,又不想重装系统,可以从 下载Squid软件。 Squid代理服务器的设置 安装好Squid后几乎就可以用了,用编辑器打开/etc/squid/squidconf文件(以root登录),Squid的配置文件共有125个配置项,但是一般来说,只要修改几个配置项即可。找到“http_access deny all”并改为“http_access allow all”令所有的电脑都能通过代理服务访问互联网资源。其实只要修改该项,Squid服务就可以启动了。 为了更好地控制代理服务器的行为,还有几个可配置项需要考虑: 1 cache_mem: 设置代理服务使用的内存大小,一般推荐为物理内存的三分之一。 2 cache_dir:设定缓存的位置、大小。一般格式如下: cache_dir /var/spool/squid/cache 100 16 256 cache_dir指定cache目录的路径,默认为/var/spool/squid/cache。 /var/spool/squid/cache代表缓存的位置,使用squid -z指令会在这个目录下建立存储交换文件(swap files)的目录。100表示缓存最大为100M,16和256代表一级和二级目录数。实际使用时,100M是不够的,如果硬盘够大,可以增加存储空间,比如:cache_dir /var/spool/squid/cache 2000 16 256。 3 http_port:代理服务使用的端口号,默认为3128,可以使用其他的端口,注意将前面的注释符号“#”去掉。另外,使用端口不能和其他的服务重复,如果使用1024以下的端口,Squid必须以root身份运行。 4 maximum_object_size: 指定Squid可以接收的最大对象的大小。Squid缺省值为4M,可以根据自己的需要进行设定。 启动Squid Squid可以设置为自动启动。运行命令setup,在System services选项中选中Squid。设置后每次重新开机,都会自动执行Squid。 如果是第一次启动,要建立/var/spool/squid下的暂存资料目录,先输入squid -z,再启动Squid(直接运行Squid即可)。 启动Squid后,在另一台Windows电脑上(以Internet Explorer 50为例)运行IE,单击“工具”,接着单击“Internet选项”,再单击“连接”选项卡,选择“局域网设置”。在“局域网设置”窗口中的“地址”处填上Squid服务器的IP地址,在“端口”处填上“3218”(Squid软件默认代理的端口号),确定后退出。接下来,随意浏览一些网站检查Squid的运行情况,也可以查看logs下的accesslog和cachelog,看看代理是否运行正常。

ssh

-fND

localhost:{port}

{uname}@{server-addr},这条命令让ssh监听localhost上的{port}端口,并把收到的访问请求转发给{server-addr}

curl

-v

--socks5

localhost:{port}

"http://wwwbaiducom",注意用ssh搭建的代理是socks代理,不是http代理。如果尝试用http代理的方式使用ssh搭建的代理,保证会让你很郁闷!

也可以在Firefox里面使用socks代理。

  安装步骤:

/configure --prefix=/usr/local/squid

make all

sudo make install(因为要拷贝到系统目录,需要root权限,所以sudo了,你也可以root登录执行,我是Ubuntu的系统,所以用sudo,有root权限就行)

  检查配置文件:

sudo vi /usr/local/squid/etc/squidconf

配置项1:

# Squid normally listens to port 3128

http_port 3128

  配置项2:

acl localnet src 19216800/16

http_access allow localnet

  配置项3:

# Uncomment and adjust the following to add a disk cache directory

cache_dir ufs /usr/local/squid/var/cache/squid 100 16 128

cache_mem 32 MB (这一条必须配置)

否则你就会遭遇报错: 2013/10/12 16:16:55 kid1| WARNING cache_mem is larger than total disk cache space!

  安装好了以后,系统中新建了一个用户squid,在组中一查,发现属于nobody组的:

cat /etc/passwd|grep squid

cat /etc/group|grep 65534

  安装squid的所在目录是:/usr/local/squid

我闲得没事干,直接改了所属用户为squid:nobody

sudo chown -Rf squid:nobody /usr/local/squid

  建立cache的时候,对下面目录需要nobody用户权限,这个是网上没有说的很清楚的地方,折腾了我半天:

sudo chown -Rf nobody /usr/local/squid/var/cache/

sudo chown -Rf nobody /usr/local/squid/var/logs/

  否则你会遭遇:

WARNING: Cannot write log file: /usr/local/squid/var/logs/cachelog

FATAL: Failed to make swap directory /usr/local/squid/var/cache/squid/00: (13) Permission denied

  初始化squidconf里配置的cache目录,就是建立了一堆的目录:

sudo /usr/local/squid/sbin/squid -z

  在前台启动squid,并输出启动过程

sudo /usr/local/squid/sbin/squid -N -d1

显示ready to server reques,则启动成功。可以键入ctrl+c,停止squid,并以后台运行的方式启动。

我没有在配置文件中配置DNS,而是在 /etc/resolvconf 中配置:

domain site

nameserver xxxx

  所以打印出来的日志中就这样的:

2013/10/12 16:42:13| Adding nameserver xxxx from /etc/resolvconf

  squid从这个配置文件中读取了dns配置来用。

  启动squid后台运行

sudo /usr/local/squid/sbin/squid -s

检查一下进程是否存在:ps -ef|grep squid

  通过squid客户端查看squid运行状态

/usr/local/squid/bin/squidclient -h 127001 -p 3128 mgr:info

  那台不能上网的机器配置如下:

export http_proxy=http://192168199235:3128/

可以把这句写到你的启动文件中,比如什么profile或者bashrc,或者/etc/profile等等。

  取消:unset http_proxy

  测试一下能不能上网了:

  能down下来文件就算大功告成啦。

LoadRunner不能通过IE和Firefox正常录制脚本,通过本次实验搭建代理服务器。bbs所在服务器IP:1921680100;客户端电脑IP:1921680101 ,搭建代理基本步骤如下:

点击Start Record 打开录制窗口,在Program to record中选择LR安装目录中的一个名为wplus_init_wsockexe的文件,它在安装目录的bin目录下

例如:我的路径是C:\Program Files (x86)\HP\LoadRunner\bin\wplus_init_wsockexe

点击录制窗口的 Options 进入配置界面,选择 NetWork — Port Mapping ,在Captur level里选择 Socket level and WinINet level data

点击下面的New Entry,填入相关信息

Target Server:         被测试服务器的IP地址

Port:                        端口号,默认是80,如果修改了,则填修改后的端口号

Service ID:              传输协议的类型

Traffic Forwarding:     浏览器转发端口号,在浏览器配置代理的时候,需要用到此端口号

打开浏览器—工具— Internet选项—连接—局域网设置

点击“局域网设置”设置代理服务器

勾选“为LAN使用代理服务器”,IP地址可以是本机LR,也可以是其他电脑的代理

点击OK开始录制,随后会启动一个代理窗口,该窗口不能关闭,不然浏览器打开就不能登录,他就像fiddler一样。

代理窗口如下:

用浏览器访问即可

从新访问BBS,可见BBS已经能正常访问了

  如果觉得对你有用,欢迎点赞和赞赏

供你参考:

一代理服务器硬件和软件基本要求

1) 服务器的配置跟用户数有关。

如果用户数在20人以内,一般的PC电脑就可以作为代理服务器了。推荐PII芯片,内存128M,硬盘10G。如果用户数在20人以上100人以下,需要选用专业的服务器作为代理服务器,服务器一定要专用,即专门作为代理服务器来用。推荐PIII芯片,内存256M,硬盘20G。如果用户数在100人以上,需要选择高配置的服务器作为代理服务器,服务器一定要专用,即专门作为代理服务器来用。推荐双CPU,内存1G,硬盘40G。

2) 网卡配置。

尽量选用性能比较稳定的网卡作为服务器网卡,100M网卡。推荐品牌:原装D-Link,3COM。由于是作为服务器网卡,尽量选用高性能中高价位的网卡。

3) 操作系统。

如果客户端用户数在10人以上,我们推荐您安装Win2000 Advanced Server,并打好最新补丁。Win98只适合10用户网络环境,Win NT需要打太多的补丁,Win2000 Professional只适合个人和家庭电脑,所以最好选用Win2000 Advanced Server。

4) 杀毒软件及防火墙软件。

我们推荐您用Norton杀毒软件及Norton防火墙软件来保护您的服务器。为了方便调试代理服务器,请在代理服务器安装调试成功后,再安装和使用杀毒软件和防火墙软件。

二局域网网络环境配置要求

确认局域网连接通畅,能够相互ping成功。

服务器的IP设置有几个需要注意的地方:

1) 检查服务器的网络属性,确保里面没有多余的无用的TCP/IP协议,如果服务器是Win98操作系统,操作系统安装过程中会自动添加一些无存在的拨号适配器及相应的TCP/IP协议,需要删除这些多余的网卡适配器和相应的TCP/IP协议。否则很容易引起网卡冲突。

2) 如果服务器安装了两块网卡或者多块,在网卡IP设置上需要注意,不要将网卡的IP设置在一个网段内,这样会造成路由混乱。比如一块网卡是19216801,另一块网卡就不要设置成19216802,可以设置为19216811。

3) 服务器的网卡一般不要设置网关,尤其是连接局域网的网卡,不要设置网关,否则很容易造成路由冲突。

如果没有配置好局域网,建议按照下面的方法配置局域网。分配好局域网机器的IP。一般是19216801、19216802、19216803、…1921680254,其中服务器是19216801,其他IP地址为客户端的IP地址。子网掩码为2552552550,DNS为19216801。如果客户端操作系统是Win98,请设置网关指向19216801,DNS主机名填本地机器名。

三代理服务器有很多种的,以Wingate为例,简单介绍一下:

1)做代理服务器的计算机需要两个网卡(例如外网卡1921681689、内网卡19216801)。外网卡如果是静态公网IP,请按照ISP设置,如果是动态获得的公网IP,则不用设置,如果是专网IP,例如1921681689(IP)2552552550(MASK)1921681681(GATEWAY) 2029916068(公网DNS,当然代理服务器本身提供DNS服务的话也可以设置为1921681689或19216801)。内网卡设置,例如19216801(IP)2552552550(MASK),请不要设置内网卡的默认网关,DNS可以设置也可以不设置。

2)安装wingate全部默认(不知道你有没有CD-KEY),重起后打开管理控制窗口(可以设密码,也可以不设置密码,最初的密码为空就可以进去)。然后修改HTTP代理的端口如8080,一定要注意一下哪些接口可以做代理,例如可以设置为任意接口。SOCKS5代理默认就已经启用,默认服务端口是1080。

3)客户机(在网吧内)网卡设置,例如19216802(IP)2552552550(MASK),其他不用设置。

客户机IE设置使用代理服务器,例如19216801(IP)8080(HTTP);19216801(IP)1080(SOCKS5)

客户机(在网吧以外,就像您在家)设置。如果代理服务器的外网卡IP是静态公网IP,如21816661,只需要您的IE设置使用代理服务器,例如21816661(IP)8080(HTTP);21816661(IP)1080(SOCKS5)。如果代理服务器的外网卡IP是动态公网IP,则需要DDNS的支持,不再赘述。如果代理服务器的外网卡IP是静态内网IP,则需要在网吧路由器上作端口映射,不再赘述。

4)wingate功能强大,使用简单。

如何实现Nginx的反向代理?

这句话什么意思?

意思是说当客户机来访问服务器的时候,服务器本身并不出面接待,而是将客户的请求转高给手下的子服务器(小弟)负责接待。

比如:你访问wwwbaiducom,其实并不时百度总服务器接待的你,而是百度的代理服务器接待的你,不过他们的服务是一样的,提供同样的页面;

如是搭建Nginx服务才能实现这样的效果呢?

搭建一个最简单,最基础nginx代理服务器,需要一台代理服务,两台子服务器,XX台客户机来作验证;

操作流程如下:

第一步、服务器和客户机配好IP地址,其中Nginx代理服务器需要配置两张网卡,两个IP地址,一个和客户机通信,一个和子服务器通信;

代理服务器与客户机和子服务器都分别配置同网段IP地址;

例如:

代理服务器:19216845    19216825

子服务器         :1921682100    1921682200

客户机    :192168410

这样配置的好处是: 可以负载均衡,保障用户的访问体验,保障上网速度,同时也保障了,即便有一台服务器坏掉了,另一台服务可以接待用户访问;

第二步、代理服务器上安装Nginx服务软件,两台子服务器上安装HTTPD服务并写入相应的网页,然后启动服务;

yum  -y install  httpd        ##安装httpd服务;

echo  "罗贵"  >    /var/www/html/indexhtml       ##写一个简单的网页

/configure    --user=nginx    --group=nginx   --with-http_ssl_module

make   &&   make   install     ##编译安装Nginx

第三步、修改Nginx的配置文件;

vim   /usr /local /nginx /conf /nginxconf

http   {      ##在文件中找到http开头的行,并在http下面随意找两行添加下面两行的内容;

            upstream    luogui    {        ##luogui是集群名字,可以自由定义,upstream 上游的意思;翻译过来就是在上游建立一个名字为luogui的集群,集群中包含下述IP地址;

                      server   1921682100:80;

                      server    1921682200:80;

}

server    {

        listen        80;

        server_name   wwwluoguicom;     ##域名,可以自由定义;

location   ^/php$  {    ##匹配网页地址的意思,匹配以 / 开头php结尾的网页文件;

        proxy_pass  http://luogui;        ##通过proxy代理服务器将用户的请求转发给luogui集群服务器;(注:优先级最高,系统会优先处理这条命令)

             }

                             }

第四步、测试效果;

firefox   http://19216845  或者  本地测试   curl  http://19216845 

结果应该是暂停任何一台子服务器,客户机访问网页都没有问题;

以上

                                                    (EDN)

祝:开心!

罗贵

2019-04-05于深圳

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 请教:国外空间搭建代理服务器

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情