存档

‘网络技术’ 分类的存档

域环境下配置squid的IE代理自动检测设置

2012年3月23日 tKC 评论已被关闭

squid用了好多年,但是总的来说也不算精通,都是需要什么去查什么,然后照着做。。。

今天偶然发现还有wpad这东西,全名为Web Proxy Auto Discovery。顾名思义,就是让IE浏览器自动检测设置,而无需设置代理服务器及端口或者设置代理脚本。

当然前提是在域环境下,否则你需要更改的东西可就多了,也不能保证好用。本例是在域环境下测试并部署成功的。

英语好的可以去看参考文章http://www.wlug.org.nz/WPAD

默认情况下,域用户登录计算机后,IE会按以下地址自动检测代理设置

http://wpad.xxx.domain.local/wpad.dat
http://wpad.domain.local/wpad.dat
http://wpad.local/wpad.dat
http://wpad/wpad.dat

xxx.domain.local是你域的地址,所以最简单的办法就是在域里设置wpad.xxx.domain.local这个域名,指向你的代理脚本所在的地址(注意这个地址是代理脚本所在的地址,可以不是代理服务器的地址)

然后再代理脚本所在的服务器网站根目录创建一个名为wpad.dat的文件,文件内容其实就是你原有的代理脚本设置

在设置的时候有个小插曲,那就是wpad这个域名被windows当作黑名单处理了,我们需要去掉或关闭这个特性。

由于我使用的是squid作为代理服务器,才有这个问题,如果你使用的是ISA2006或者TMG2010那就没这个问题,因为都是微软自家的东西,不会做限制的。

关闭这个特性需要安装soppurt tools,命令行下运行如下命令即可

dnscmd [servername] /config /enableglobalqueryblocklist 0

把[servername]替换为你服务器的名称,这里我是偷了个懒,直接关闭了,其实可以修改这个blacklist的,有需要的可以自己google

更改完这些以后,可以找一台域用户登录的计算机测试了,我这里的环境使用xp/2003/win7都没问题。

后续测试发现,不用域环境也是可以的,但是需要开启dhcp,让dhcp推送一个域后缀,然后把推送到这个域后缀增加个wpad的子域名就可以了。

另外,再说一下之前做的各种尝试,包括dhcp选项,dns修改,都罗列如下

dhcp修改/etc/dhcpd.conf

option option-252  "http://wpad.xxx.domain.local/proxy.pac";
option wpad-url    code 252 = text;
option wpad-url    "http://wpad.xxx.domain.local/proxy.pac\n";

第一行可能不好用,由于dhcp版本问题,出错注释掉

dns配置需要增加如下设置

wpad            IN      A       192.168.0.100
                IN      TXT     "service: wpad:!http://wpad.xxx.domain.local:80/proxy.pac"
wpad.tcp        IN      SRV     0 0 80 wpad.xxx.domain.local.
分类: 服务软件, 缓存加速 标签:

配置squid集成域身份认证

2011年12月9日 tKC 2 条评论

终于有时间测试一下squid的域身份认证了,之前一直使用iptables来通过IP地址做的代理访问权限控制,而使用哪种方法是根据各个公司内部的具体需求来决定的。

首先明确一下需求,配置squid使它能支持域用户认证,如果可能的话,使用集成windows身份认证,这样域用户登录计算机后,不需要输入密码就可以使用,做到用户端透明,除非用户未使用域用户登录才会弹出需要输入帐户密码。

先放狗搜了一圈,大致确定了方向,使用samba和krb5做帐户认证,用squid来调用即可。

1、本文使用CentOS5.6系统,先安装需要的软件

yum install squid samba ntp

安装ntp是为了同步时间用的,如果squid的时间和域控制器时间相差太多,在以下配置中会出错。

同步时间的命令

ntpdate clock.redhat.com

2、修改hosts文件,把计算机名以及计算机全名设置好,本例域为test.local

vi /etc/hosts

127.0.0.1       squid squid.test.local localhost

3、修改dns,使用域控制器的DNS

vi /etc/resolv.conf

nameserver 192.168.1.100

阅读全文…

分类: 服务软件, 缓存加速 标签:

CentOS 6 x64上安装Zimbra 7.1.2

2011年9月22日 tKC 评论已被关闭

自从VMware收购了Zimbra以后,一直想找时间研究研究Zimbra,最近终于有时间可以装一个看看了。服务器安装的ESXi5,话说现在5的免费序列号功能少的可怜。。。

在ESXi上创建虚拟机来安装CentOS6×64版本,自然是pxe网络安装,不过貌似从6.0开始直接解压iso的内容已经不能直接当成本地yum源了,图省事把官方源上repodata文件夹抓过来用。

一路默认安装就可以了,关闭iptables规则和selinux,再到这里去下载开源版本http://www.zimbra.com/downloads/os-downloads.html

我下载的是zcs-7.1.2_GA_3268.RHEL6_64.20110804131406.tgz(7.1.2对应Redhat6×64的版本),拷贝这个文件到CentOS中

先关闭系统自带的MTA服务,安装一些依赖包

chkconfig postfix off
yum install fprintd-pam libstdc++.i686 nc file sysstat

运行以下命令解压,进入目录进行安装

tar zxvf zcs-7.1.2_GA_3268.RHEL6_64.20110804131406.tgz
cd zimbra zcs-7.1.2_GA_3268.RHEL6_64.20110804131406
./install.sh --platform-override

上面–platform-override参数的含义是由于我们下载的是Redhat版本的,CentOS上需要忽略这个系统版本检查。
在之后的向导中基本都默认或者输入Y就可以了,如果你像我一样操作,你会得到一个错误 阅读全文…

分类: 服务软件 标签:

VMware ESXi5 PXE/gPXE 网络安装

2011年8月28日 tKC 5 条评论

终于VMware ESXi5发布正式版下载了,下载好以后发现目录结构有了很大变化,像以往一样,研究一下PXE网络安装。

找到一篇参考文章http://www.vcritical.com/2011/07/vmware-esxi-5-interactive-pxe-installation-improvements/

从描述上看,新版本的PXE设置非常简单,具体操作方法如下:

首先解压VMware-VMvisor-Installer-5.0.0-469512.x86_64.iso到TFTP服务器的某个文件夹(如/esxi5)

修改配置文件/esxi5/boot.cfg,把modules=后面的/都去掉,增加一个prefix=/esxi5/,如下所示

bootstate=0
title=Loading ESXi installer
prefix=/esxi5/
kernel=tboot.b00
kernelopt=runweasel
modules=b.b00 --- useropts.gz --- k.b00 --- a.b00 --- ata-pata.v00 --- ata-pata.v01 --- ata-pata.v02 --- ata-pata.v03 --- ata-pata.v04 --- ata-pata.v05 --- ata-pata.v06 --- ata-pata.v07 --- block-cc.v00 --- ehci-ehc.v00 --- s.v00 --- weaselin.i00 --- ima-qla4.v00 --- ipmi-ipm.v00 --- ipmi-ipm.v01 --- ipmi-ipm.v02 --- misc-cni.v00 --- misc-dri.v00 --- net-be2n.v00 --- net-bnx2.v00 --- net-bnx2.v01 --- net-cnic.v00 --- net-e100.v00 --- net-e100.v01 --- net-enic.v00 --- net-forc.v00 --- net-igb.v00 --- net-ixgb.v00 --- net-nx-n.v00 --- net-r816.v00 --- net-r816.v01 --- net-s2io.v00 --- net-sky2.v00 --- net-tg3.v00 --- ohci-usb.v00 --- sata-ahc.v00 --- sata-ata.v00 --- sata-sat.v00 --- sata-sat.v01 --- sata-sat.v02 --- sata-sat.v03 --- scsi-aac.v00 --- scsi-adp.v00 --- scsi-aic.v00 --- scsi-bnx.v00 --- scsi-fni.v00 --- scsi-hps.v00 --- scsi-ips.v00 --- scsi-lpf.v00 --- scsi-meg.v00 --- scsi-meg.v01 --- scsi-meg.v02 --- scsi-mpt.v00 --- scsi-mpt.v01 --- scsi-mpt.v02 --- scsi-qla.v00 --- scsi-qla.v01 --- uhci-usb.v00 --- tools.t00 --- imgdb.tgz --- imgpayld.tgz
build=
updated=0

最后修改pxe的配置文件增加以下内容即可

LABEL ESXi5
MENU LABEL ^V---- Install VMware ESXi 5
KERNEL /esxi5/mboot.c32
APPEND -c /esxi5/boot.cfg

至此TFTP方式安装ESXi5就完成了,不过我由于早就更换成了gpxe方式,gpxe可以通过http/ftp方式载入镜像(本示例中http://192.168.1.10/tftp目录就是tftp的目录),在跨网段环境下速度飞快,其实gpxe方式也比较简单,只是配置文件不同而已,首先需要更改/esxi5/boot.cfg

bootstate=0
title=Loading ESXi installer
prefix=http://192.168.1.10/tftp/esxi5/
kernel=tboot.b00
kernelopt=runweasel
modules=b.b00 --- useropts.gz --- k.b00 --- a.b00 --- ata-pata.v00 --- ata-pata.v01 --- ata-pata.v02 --- ata-pata.v03 --- ata-pata.v04 --- ata-pata.v05 --- ata-pata.v06 --- ata-pata.v07 --- block-cc.v00 --- ehci-ehc.v00 --- s.v00 --- weaselin.i00 --- ima-qla4.v00 --- ipmi-ipm.v00 --- ipmi-ipm.v01 --- ipmi-ipm.v02 --- misc-cni.v00 --- misc-dri.v00 --- net-be2n.v00 --- net-bnx2.v00 --- net-bnx2.v01 --- net-cnic.v00 --- net-e100.v00 --- net-e100.v01 --- net-enic.v00 --- net-forc.v00 --- net-igb.v00 --- net-ixgb.v00 --- net-nx-n.v00 --- net-r816.v00 --- net-r816.v01 --- net-s2io.v00 --- net-sky2.v00 --- net-tg3.v00 --- ohci-usb.v00 --- sata-ahc.v00 --- sata-ata.v00 --- sata-sat.v00 --- sata-sat.v01 --- sata-sat.v02 --- sata-sat.v03 --- scsi-aac.v00 --- scsi-adp.v00 --- scsi-aic.v00 --- scsi-bnx.v00 --- scsi-fni.v00 --- scsi-hps.v00 --- scsi-ips.v00 --- scsi-lpf.v00 --- scsi-meg.v00 --- scsi-meg.v01 --- scsi-meg.v02 --- scsi-mpt.v00 --- scsi-mpt.v01 --- scsi-mpt.v02 --- scsi-qla.v00 --- scsi-qla.v01 --- uhci-usb.v00 --- tools.t00 --- imgdb.tgz --- imgpayld.tgz
build=
updated=0

再修改pxe的配置文件即可

LABEL ESXi5
MENU LABEL ^V---- Install VMware ESXi 5
KERNEL http://192.168.1.10/tftp/esxi5/mboot.c32
APPEND -c http://192.168.1.10/tftp/esxi5/boot.cfg

ESXi5开始已经无需配置就可以在安装过程中提示覆盖安装、全新安装和升级安装了。

Linksys SPA3000设置

2011年8月26日 tKC 2 条评论
用voip好几年了,没发现太好的落地,在中国还是传统的PSTN做落地最靠谱了。
voip网关从RT31P2,到PAP2,再到家里现在用的SPA3000,一路用来都挺不错的。
不过最近家里的SPA3000出了点问题,PSTN的线路不好用了,看了设置也没发现什么问题,只好换了一个SPA3000,重新设置一下就好了,这里说一下设置方法。
Line1中设置Proxy地址为voip服务器地址,还有帐号密码,主要需要设置的是Dial Plan,默认是下面的
(*xx|[3469]11|0|00|[2-9]xxxxxx|1xxx[2-9]xxxxxxS0|xxxxxxxxxxxx.)  
由于我的需求比较简单,只是需要直拨走voip,按#0可以拨传统的PSTN,设置如下
(*xx.|<#0,:>xx.<:@gw0>|xx.)  
如果需要对SPA3000做更复杂的拨号规则可以参考这个网址http://www.taet.com.au/dp.nsf/0/0c388985f0d6c324ca257890004fbd7b,可以在网页上选择自己需要的规则自动生成规则。
分类: VOIP 标签: , ,

各种版本Windows的非光盘安装方法

2011年8月26日 tKC 评论已被关闭
Win9x:
Win9x包括了Win95/Win98/WinME,新一点点电脑估计都要把硬盘模式改成兼容模式,否则Win9x是不会识别硬盘的,当然也可以自己集成驱动,集成Win9x的驱动就不说了,非光盘安装方法也很简单,就是通过U盘(或移动硬盘,这个下文中就只用U盘来说了)启动到DOS环境,然后对硬盘进行分区格式化,拷贝Win9x的安装文件,最后进入安装文件夹执行setup /is /im /ie进行安装就行了
Winnt5.x:
WInNT5.x包含了Win2000/WinXP/Win2003,如果不集成驱动的话,同样也需要把硬盘模式更改为兼容模式才可以识别硬盘,不过有DriversPack或nLite可以把驱动制作到安装文件中,做完这个就可以使用U盘上的PE启动系统,拷贝安装文件到本地硬盘,运行安装文件中的Setup.exe或者I386下的WinNT32.exe(现在已经不推荐dos启动,然后运行I386下的WinNT.exe了,虽然也是一中安装方法),另外,拷贝安装文件到本地并不是必要的,只是有时候安装 过程会提示你插入安装盘或者指定安装文件的位置,为了避免这个问题才建议先拷贝安装文件到本地硬盘。
Winnt6.x:
Winnt6.x包含了Vista/Win7/Win2008,从Vista开始,已经对于sata硬盘增强了支持,基本上常规的硬盘它们都可以识别的,很少需要人工打驱动进安装盘了,安装方法也更加简单了,使用U盘启动到Win7PE,对硬盘进行必要的分区格式化,挂载iso文件,或者直接运行解压好的安装文件sources/setup.exe进行安装就行了(如果不是挂载iso或者光盘启动,千万不要运行光盘根目录的setup.exe,否则安装会出错)
将Win7/Win2008安装到VHD文件中:
Win7的企业版和旗舰版都支持将Win7直接安装到VHD文件中,好处就是方便部署,也能做vhd差分,适合大规模部署,还能做到瞬间还原系统,非常诱人,可缺还有很多人都不知道,所以在此写一下方法
首先使用U盘上的Win7PE启动,如果你的PE支持图形操作,可以直接在磁盘管理上创建vhd并挂载,如果你的Win7PE只有命令行,或者你是直接使用光盘启动安装的话,请按以下命令操作创建vhd并挂载,Win7安装盘启动系统后,不要点击下一步,直接按Shift+F10启动命令提示符,输入以下命令
diskpart
create vdisk file=c:\win7.vhd maximum=20480 type=expandable
select vdisk file=c:\win7.vhd
attach vdisk
create partition primary
assign letter=m
format fs=ntfs quick label=Win7
exit  
第一行,进入diskpart命令
第二行,在C盘根目录创建动态扩展的名为Win7,vhd的文件,大小为20G
第三行,选择该vhd文件
第四行,挂载该vhd文件
第五行,创建一个主分区
第六行,分配盘符M
第七行,快速格式化,并分配卷标为Win7
第八行,退出
做完这几步就可以继续运行安装程序,或者运行sources/setup.exe了,安装时选择自定义,然后选择新创建的vhd的磁盘就可以了,剩下和安装普通系统是一样的了。
注:如果你的PE支持网络的话,可以直接挂载共享上的文件来安装,如果你的网络环境可以配置PXE网络启动的话,这些操作完全就只需要一根网线就可以了,不需要光盘和U盘什么的了,千兆网络环境下,PXE安装Win7要比在光盘和本地硬盘上安装的都要快。
分类: 微软, 网络启动 标签:

解决vsftpd上传文件在samba下乱码问题

2011年8月26日 tKC 评论已被关闭
由于特殊需求,服务器上的一个文件夹既要可以使用ftp访问,又要可以使用samba文件共享方式访问,于是在服务器上安装了samba和vsftpd(选vsftpd是因为centos安装盘上自带,偷个懒),安装使用大体没问题,但发现通过vsftpd上传的文件,在samba下看是乱码,并且很多乱码文件无法删除,估计是编码问题,搜了一下,果然如此。
其原因就是vsftp没有处理编码,而一般用IE或者别的工具上传文件就会使用GB2312编码,Linux服务器上使用的是utf8编码,用samba访问肯定造成乱码,如果使用Firefox设置默认使用UTF8编码的话就可以解决这个问题,但是没法要求客户端都统一做这个设置,并且也不能避免用户使用IE登录FTP,只好在服务器上下手了。
因为是迁就客户端,所以vsftpd上不用做修改了,只需要修改samba配置文件,让samba使用的编码更改成中文编码就可以了
在/etc/samba/smb.conf文件中[global]区域内增加如下配置,如果已有则修改成如下配置。
display charset = cp936
dos charset = cp936
unix charset = cp936  
再重启samba服务即可
#/etc/init.d/smb restart
需要注意到一点是,之前正常在samba共享里存入的正常显示中文名的文件会变成乱码,需要重新修改成中文才可以,之前通过vsftpd文件传上去的乱码文件会自动变成正常中文,如果中文名数据很多,最好先挪出来再改这个配置。
分类: 服务软件 标签:

配置CUPS+SAMBA实现共享打印机自动安装驱动

2011年8月26日 tKC 评论已被关闭
使用Windows系统共享的网络打印机,在安装的时候直接右键连接就可以自动安装好驱动,而Linux下的CUPS则需要samba配合才可以实现。
配置方法参考以下链接http://www.enterprisenetworkingplanet.com/netsysm/article.php/3621876
首先我们需要下载通用驱动文件
http://www.cups.org/windows/software.php
cups-windows-6.0-1.i386.rpm
http://www.adobe.com/support/downloads/product.jsp?product=44&platform=Windows
winsteng.exe,我下载的英文版,可以根据自己需要下载别的语言
首先编辑/etc/samba/smb.conf,增加以下内容,并创建/etc/samba/drivers文件夹
[print$]
comment = Printer drivers
path = /etc/samba/drivers
browseable = yes
readonly = yes
guest ok = yes
write list = root  
安装cups-windows-6.0-1.i386.rpm
rpm -i cups-windows-6.0-1.i386.rpm  
在windows上安装好winsteng.exe,然后拷贝C:\WINDOWS\system32\spool\drivers\w32×86\3文件夹下的以下几个文件到/usr/share/cups/drivers/
ps5ui.dll
pscript5.dll
pscript.hlp
pscript.ntf  
基本文件已经准备完毕,因为前面配置写了write list = root,所以要确认一下samba是否有root用户,如果没有则用以下命令创建
# smbpasswd -a root  
输入两遍密码即可,最后可以使用以下命令进行驱动文件的生成了
# cupsaddsmb -H localhost -U root -a -v  
最后可以看到一堆信息,如果看到类似如下信息则说明安装成功
Printer Driver HPXXXX successfully installed.
Running command: rpcclient localhost -N -A /tmp/4d47636686f16 -c "setdriver HPXXXX HPXXXX"
params.c:Parameter() - Ignoring badly formed line in configuration file: w
Succesfully set HPXXXX to driver HPXXXX.
最后可以到windows上测试一下效果了,我的测试结果是,点击右键安装,几乎在瞬间安装完成,比windows上共享的速度快太多了。
分类: 服务软件 标签:

VMLite VBoot让XP/2003也能在vhd文件中安装并引导

2011年8月26日 tKC 2 条评论
下载地址(需免费注册并登陆才可以下载):http://www.vmlite.com/index.php/products/vboot/download/download
说明:http://www.vmlite.com/vboot/instructions.html
其实该软件可以让大部分系统安装在vhd镜像文件,vboot核心功能基于grub,很早就听说了grub已经的实现了通过映射光盘镜像和软盘镜像的方式来安装系统,一直没有更方便的管理工具,而vboot就应运而生了,以下就是试用过程。
首先下载vboot,解压到C盘,拷贝C:\vboot\vbootldr和vbootldr.mbr到C盘根目录
修改boot.ini,增加一行
C:\vbootldr.mbr=VBOOT  
输入以下命令创建一个20G容量的vhd文件
c:\vboot\tools\x86\vbootctl.exe createhd c:\winxp.vhd /size 20  
拷贝XP的ISO到C盘根目录,并改名为winxp-sp2.iso
注:改成这个名字是为了免去更改vboot的配置文件,偷了个懒,嘿嘿
重新启动计算机,开机选择VBOOT
然后选择xp install step1
之后和你插光盘安装XP一个步骤
在选择安装位置的时候,虚拟磁盘并不是C盘,不过不要担心,因为这个时候你的真实硬盘还存在的
重起以后,选择xp install step2
在这时候虚拟盘已经是C盘了(不过看不到,呵呵),等你装好系统后,选择XP VHD启动就可以啦
启动完后,就可以看到C盘已经是虚拟的20G盘,而原来的C盘已经变到后面了
接着试用了一下快照功能
在启动选择XP VHD的时候,按s就可以为当前系统创建一个快照
并且新创建一个文件,winxp-s1.vhd,值得注意的是,这个是winxp.vhd的差分盘,变化越多文件越大,开始时只有几百兆
有一点需要注意,一旦一个vhd有了一个快照,它本身就不能再用于启动了,但你可以通过这个vhd创建一个新的和它一样内容的快照来启动。
经过多台计算机的测试发现,并不是所有计算机都兼容,有些计算机在挂载iso安装系统的时候直接蓝屏了,有两种方法解决:
第一种方法,在运行正常的计算机上安装好vhd系统后,在vhd系统中进行封装,也就是像做完能ghost一样的步骤,之后关机拷贝该vhd文件到别的计算机上就可以正常运行了
第二种方法,在不兼容计算机上正常安装XP或者2003,手动添加硬件,指向C:\vboot\floppies\vboot-img\i386\vbootdsk.inf或C:\vboot\floppies\vboot-2k3-img\i386\vbootsmp.inf,然后用Win7的PE加载vhd文件拷贝已安装系统到vhd中即可。
分类: 微软, 网络启动 标签:

邮件服务器拒收邮件一例

2011年8月26日 tKC 评论已被关闭
今天日本同事和我说日本的邮件服务器(邮件服务器使用的是Postfix)无法发送给特定邮件域了,我登到服务器上看了一下,大致是收件方拒收了,错误日志如下:
connect to xxx.com[x.x.x.x]:25: Connection refused
host xxx.com[x.x.x.x] refused to talk to me: 554- (RTR:SC)  http://postmaster.info.aol.com/errors/554rtrsc.html 554  Connecting IP: x.x.x.x
delivery temporarily suspended: host xxx.com[x.x.x.x] refused to talk to me: 421 4.7.1 [TS03] All messages from x.x.x.x will be permanently deferred; Retrying will NOT succeed. See http://postmaster.yahoo.com/421-ts03.html  
基本上确定了,不是有人中毒,就是有帐户有弱口令被垃圾邮件者利用了
因为已经拒收信了,所以,直接去查看邮件队列
postqueue -p  
可以看到大量垃圾邮件队列,从数量上很容易判断出问题帐号,马上对问题帐号进行修改密码或者暂时禁用,然后清除邮件队列中的垃圾邮件,以下是清除邮件队列中特定邮箱发出的邮件
mailq | awk "/test@test.com/ {print $1}" | tr -d "*" | xargs -n 1 postsuper -d  
处理完毕后,等一段时间,如果对方仍然拒收的话,按照日志提供的网址去提交申请解封就可以了,如果是合作伙伴公司的话,最好直接申请加到白名单,这样比较省事,找垃圾邮件厂商申请的话,通常时间周期很长,而且得不到解决的可能性会非常大,我在国内的邮件服务器就曾经因为服务器IP在对方垃圾邮件规则的动态IP范围而导致邮件被拒收,最后只能通过改邮件发送服务器的IP才解决的。
分类: 服务软件 标签: ,