| 
 | 
 
1. 数据共享  
2. 打印共享  
3. 模拟NT域  
4. ADSL共享  
5. 内部DNS服务  
6. DHCP服务  
7. FTP服务  
8. WWW服务  
9. OPENSSH  
10. 磁盘配额  
11. 动态域名  
 
网络架构如下:[如下图]  
 
www.linuxsir.org/photo/Xchen.gif  
 
Network:10.10.0.0  
Server IP:10.10.1.1  
Server Subnet-mask:255.255.0.0  
Client IP:10.10.1.10-10.10.1.100  
Client Subnet-mask:255.255.0.0  
Client getway:10.10.1.1  
Client DNS:10.10.1.2,202.96.134.133  
 
一、准备工作:  
 
1. RedHat linux 7.2光盘一套  
2. 以太ADSL拔号器及您的ADSL接入帐号  
3. 两张网卡,最好是即插即用的,免跳线的请察明irq和io。  
4. 当然啦,除本机以外的其它机器  
 
二、 RedHat linux 7.2安装:  
 
1.初学者建议用图形界面,请用定制安装。  
 
2系统分区如下(10G):  
swap:500M  
/:2G  
/var:1G  
/home:2G  
/tools:500M  
/data:4G  
分区的合理化请参考相关文章。  
 
3.若是即插用网卡,系统能检测到,请设置好ip地址,子网掩码等,请分别设为10.10.1.1和10.10.1.2,subnet-mask为255.255.0.0;若是免跳线网卡,那就等装好系统再设置吧。  
 
4.软件包选择,要全选上也没关系,只要你有空间,若是空间有限有话,不妨定制一下软件包,下面是我的选择,仅供参考:  
Printing Support  
Network Support  
Dialup Support  
SMB:windows file server  
WWW:web server  
DNS NS name server  
Software Development  
 
5.好了,现在就next一路安装下去吧,最后不要忘了做一张启动盘。  
 
三、linux网络环境配置  
 
1]重启机器进入系统以后,去掉一些不必要的服务吧,留着它们启动速度慢,而且也不安全,下面是我机器刚安装好以后所保留的一些服务:  
gpm/iptables/netfs/network/nfs/nfslock/portmap/syslog/xfs/xinetd  
至其它的服务,等我们配置好再加载吧。  
 
2]安装linuxconf,配置网络。  
放入光盘1  
mount /dev/cdrom /mnt/cdrom  
cd /mnt/cdrom/RedHat/RPMS  
rpm –ivh linuxconf-1.25r7-3.i386.rpm  
请用setup/system services或是chkconfig –levlel 3 linuxconf on将linuxconf设置为系统自启动服务。  
netconf选择Host name and IP network devices进行主机名及网络设置:  
Host name + domain:cxserver  
------第一张网卡----------  
config mode:Manual  
primary name + domain:abc  
Ip address:10.10.1.2  
Netmask:255.255.0.0  
Net device:eth0  
Kernel Module:ne  
I/O port:0x300  
Irq:3  
------第二张网卡----------  
config mode:Manual  
primary name + domain:cxserver  
Ip address:10.10.1.1  
Netmask:255.255.0.0  
Net device:eth0  
Kernel Module:ne  
I/O port:0x320  
Irq:5  
选择Accept退出,重新启动就会看到eth0和eth1两网卡启动成功,进入系统后可用ifconfig命令查看状态,用ping命令测试其连通性,比如ping一部windows机器。  
 
四、DNS服务器配置  
 
为了让局域网内部用户访问服务器方便一点,配置一个DNS服务器是十分有必要的,毕竟一个名字总比一串数字好记,下面我将服务器10.10.1.1配一个域名www.cx.com,ftp.cx.com,好,开始行动:  
需要配置的文件:  
/etc/named.conf  
/etc/resolv.conf  
/var/named/named.hosts  
/var/named/named.local  
/var/named/named.10.10  
 
1]配置/etc/named.conf文件。此文件是dns引导文件,named进程在启动时要读取它。  
vi /etc/named.conf  
// generated by named-bootconf.pl  
options {  
directory "/var/named";  
// query-source address * port 53;  
};  
 
zone "." IN {  
type hint;  
file "named.ca";  
};  
//----------------------手工添加如下两节------------------------------  
zone "cx.com" IN {  
type master;  
file "named.hosts";  
};  
 
zone "10.10.in-addr.arpa" IN {  
type master;  
file "named.10.10";  
};  
//------------------------------------------------------------------------------  
zone "0.0.127.in-addr.arpa" IN {  
type master;  
file "named.local";  
};  
 
// include "/etc/rndc.key";  
 
以下的三个文件是DNS数据库文件,具体参数不作详解,请参考相关资料。  
 
2]vi /var/named/named.local  
 
$TTL 86400  
@ IN SOA ns.cx.com. root.ns.cx.com. (  
1997022700 ; Serial  
28800 ; Refresh  
14400 ; Retry  
3600000 ; Expire  
86400 ) ; Minimum  
IN NS ns.cx.com.  
 
1 IN PTR localhost.  
 
3]vi /var/named/named.hosts  
@ IN SOA ns.cx.com. root.ns.cx.com. (  
2002042302; serial  
28800; refresh  
14400; retry  
3600000; expire  
86400; minimu  
)  
IN NS ns.cx.com.  
cx IN A 10.10.1.1  
cx1 IN A 10.10.1.223  
www IN CNAME ns.cx.com.  
ftp IN CNAME cx  
 
4]vi /var/named/named.10.10  
@ IN SOA ns.cx.com. root.ns.cx.com. (  
2002042302; serial  
28800; refresh  
14400; retry  
3600000; expire  
86400; minimu  
)  
IN NS ns.cx.com.  
1 IN PTR ns.cx.com.  
2 IN PTR ns1.cx.com.  
 
5]编辑/etc/resolv.conf文件  
vi /etc/resolv.conf  
domain cx.com  
nameserver 10.10.1.1  
 
好,让我们来启动服务吧:  
/etc/rc.d/init.d/named start  
chkconfig –level 3 named on #将dns服务设置成系统服务,开机自启动  
测试:ping cx.cx.com  
ping www.cx.com  
ping ftp.cx.com  
或用nslookup,用法请参考nslookup –help。  
 
五、 DHCP服务器配置  
 
1]安装dhcp。  
放入光盘1或是光盘2  
mount /dev/cdrom /mnt/cdrom  
cd /mnt/cdrom/RedHat/RPMS  
rpm –ivh dhcp-2.0p15-8.i386.rpm  
请用setup/system services或是chkconfig –levlel 3 linuxconf on将linuxconf设置为系统自启动服务。  
 
2]配置dhcpd.conf文件。  
Vi /etc/dhcpd.conf  
subnet 10.10.0.0 netmask 255.255.0.0{  
range dynamic-bootp 10.10.2.0 10.10.2.100; #IP地址分配范围  
option routers 10.10.1.1; #默认网关  
option subnet-mask 255.255.0.0; #默认子网掩码  
option domain-name "cx.com"; #默认域名  
option domain-name-servers 10.10.1.1,202.96.134.133;  
}  
#最后一行:DNS服务器设置,之所以把10.10.1.1放在前面是想让客户机在作域名解析的时候优先选择内部dns服务器,若域名不能解析,则用下一个dns服务器解析,202.96.134.133是深圳地区ADSL上网用户主DNS服务器.用下一个dns服务器解析,202.96.134.133是深圳地区ADSL上网用户主DNS服务器。  
 
3]启动服务:/etc/rc.d/init.d/dhcpd start  
 
4]使用:不论Win9x还是2K都使用自动获取IP地址,其它什么都不用设。  
 
六、 ADSL及防火墙配置  
 
1]下载软件:http://www.roaringpenguin.com/pppoe/rp-pppoe-3.5.tar.gz  
 
2]安装软件:  
tar zxvf rp-pppoe-3.5.tar.gz  
cd rp-pppoe-3.5  
./go #开始安装软件  
 
3]软件安装好后,会运行设置程序adsl-setup  
 
USER NAME  
>>> Enter your PPPoE user name (XXX):________ #此处填写ADSL用户帐号  
 
INTERFACE  
(default eth0):_____ #以太接口,eth0或者eth1  
 
>>> Enter the demand value (default no): #可以不填  
 
DNS  
>>> Enter the DNS information here: 202.96.134.133 #本地电信提供的主域名服务器  
>>> Enter the secondary DNS server address here: #本地电信提供的辅助域名服务器  
 
PASSWORD  
>>> Please enter your PPPoE password:  
>>> Please re-enter your PPPoE password: #密码  
 
FIREWALLING  
0 - NONE: This script will not set any firewall rules. You are responsible  
for ensuring the security of your machine. You are STRONGLY  
recommended to use some kind of firewall rules.  
1 - STANDALONE: Appropriate for a basic stand-alone web-surfing workstation  
2 - MASQUERADE: Appropriate for a machine acting as an Internet gateway  
for a LAN  
>>> Choose a type of firewall (0-2): 0  
防火墙设置,选择2可使主机设成局域网的internet网关,将客户机网关设为本机IP,DNS设为电信提供的DNS服务器IP即可上网了,它是由ipchains之ip伪装实现的,而rh7.2中的ipchains已经没有了ip_masq_ftp模块,所以客户机无法使用FTP服务,因此我们在这里不用防火墙,选择0。在rh72中已经有了iptables,它是ipchains的替代品,功能也更为强大了,呆会儿我们写一个脚本,用它来实现ADSL共享。  
 
>>> Accept these settings and adjust configuration files (y/n)? y #保存设置  
 
4]接下来,我们编写一个脚本/etc/rc.d/firewall  
vi /etc/rc.d/firewall  
#!/bin/sh  
echo "Start iptables rules..."  
/etc/rc.d/init.d/iptables stop  
echo 1 > /proc/sys/net/ipv4/ip_forward  
modprobe ip_tables  
modprobe ip_nat_ftp  
modprobe ip_conntrack  
modprobe ip_conntrack_ftp  
 
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE  
 
iptables -N mine  
iptables -A mine -m state --state ESTABLISHED,RELATED -j ACCEPT  
iptables -A mine -m state --state NEW -i ! ppp0 -j ACCEPT  
//允许外部访问我的www服务器  
iptables -A mine -p tcp --dport 80 -i ppp0 -j ACCEPT  
//允许外部使用openssh服务,openssh相当于telnet,但是它的数据传输是加密的,  
//所以更安全,强烈推荐使用。  
iptables -A mine -p tcp --dport 22 -i ppp0 -j ACCEPT  
//允许外部访问我的ftp服务器  
iptables -A mine -p tcp --dport ftp -i ppp0 -j ACCEPT  
iptables -A mine -p tcp --dport ftp-data -i ppp0 -j ACCEPT  
//禁止外部ping我  
iptables -A mine -p icmp --icmp-type echo-request -i ppp0 -j DROP  
//  
iptables -A mine -i ppp0 -m limit -j LOG --log-prefix "Bad packet from ppp0:"  
iptables -A mine -i ! ppp0 -m limit -j LOG --log-prefix "Bad packet not from ppp0:"  
iptables -A mine -j DROP  
 
iptables -A INPUT -j mine  
iptables -A FORWARD -j mine  
 
//iptables功能十分强大,这里不作详解,使用方法请参考相关资料。  
 
5]将这个脚加入到/etc/rc.d/rc.local里去,让它开机时自动运行。  
chmod 700 /etc/rc.d/firewall #将firewall设为可执行文件  
echo firewall >> /etc/rc.d/rc.local  
当然也可以用vi编辑/etc/rc.d/rc.local文件,在尾部加入一行firewall即可。  
 
6]chkconfig –level 3 iptables on #开机时启动iptables  
 
7]好,重启,用root登录系统  
用adsl-start命令连接网络,几秒以后出现.Connected,OK,网络已经连通,好!我们来测试:前提:前面写的防火墙脚本已经运行,内部局域网已经连通,DHCP服务已经运行,将客户端tcp/ip设置为自动获取IP地址,其它的什么都不用填,重启登录以后,试试www/ftp/qq等服务吧,速度奇快,爽死你,哈哈。  
 
8]存在的问题:  
ping一下前面我们设置的域名服务器吧,ping [urlwww.cx.com[/url],你会发现ping不通,为什么呢?你应该还记得我们在安装设置adsl的时候,填入了本地电信dns服务器地址,哈,就是它惹的祸。我们在运行adsl-start的时候,会调用adsl-connect脚本,而它会重写/etc/resolv.conf文件:  
原来的:cat /etc/resolv.conf  
domain cx.com  
nameserver 10.10.1.0  
现在的:cat /etc/resolv.conf  
nameserver 202.96.134.133  
在这种情况下DNS服务器要是运行起来了,那才稀奇了,呵呵。  
解决方法:  
修改/etc/resolv.conf文件:  
vi /etc/resolv.conf  
domain cx.com  
nameserver 10.10.1.1  
nameserver 202.96.134.133  
修改/usr/sbin/adsl-connect脚本文件:  
vi /usr/sbin/adsl-connect  
找到下面几行,并将其注释掉:  
---------------------------------------------------------------------------  
if test "$DNSTYPE" = "SERVER" ; then  
# Sorry, dude...  
rm -f /etc/resolv.conf  
ln -s /etc/ppp/resolv.conf /etc/resolv.conf  
elif test "$DNSTYPE" = "SPECIFY" ; then  
# Sorry, dude...  
rm -f /etc/resolv.conf  
echo "nameserver $DNS1" > /etc/resolv.conf  
if test -n "$DNS2" ; then  
echo "nameserver $DNS2" >> /etc/resolv.conf  
fi  
fi  
-----------------------------------------------------------------------------  
 
9]重启,ADSL连接成功,DNS服务器正常,OK,继续前进吧!  
 
七、文件(打印)服务器、模拟NT域的实现。  
 
1]编辑/etc/samba/smb.conf文件  
vi /etc/samba/smb.conf  
[global]  
workgroup = CX #把它当成NT登录域吧  
server string = Samba Server  
netbios name = cxserver #服务器的netbios名字  
hosts allow = 10.10.1. 10.10.2. 127. #只允许10.10.1.0、10.10.2.0网段访问  
printcap name = /etc/printcap  
load printers = yes  
printing = lprng  
log file = /var/log/samba/%m.log  
max log size = 0  
security = user #安全等级为user级,访问资源需要身份验证  
encrypt passwords = yes  
smb passwd file = /etc/samba/smbpasswd  
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192  
domain master = yes  
preferred master = yes  
domain logons = yes #可以登录  
dns proxy = no  
 
[homes] #登录后可以看到用户home目录  
comment = Home Directories  
browseable = no  
writable = yes  
valid users = %S  
create mode = 0664  
directory mode = 0775  
 
[printers] #若有打印机,在\\mineserver中可看到打印机,右键安装  
comment = All Printers  
path = /var/spool/samba  
browseable = no  
guest ok = no  
writable = no  
printable = yes  
 
[public] #共享/mnt/data/public文件夹,共享名为public,admin组有写权限  
comment = software  
path = /mnt/data/public  
public = yes  
wirte list = @admin  
 
2]用testparm测试/etc/samba/smb.conf文件中语法是否正确  
 
3]/etc/rc.d/init.d/smb start启动服务,并用smbclient –L localhost测试服务器是否正常,若是提示输入密码,回车以后看到服务器信息,则服务器正常。  
 
4]添加用户和组  
useradd test  
groupadd admin  
gpasswd –a test admin  
 
5]设置smb用户密码  
smbpasswd –a test  
输入密码并验证  
 
6]用setup之Printer configuration配置一本地打印机,其过程请参考相关资料,这里不过多赘述。  
 
7]测试:  
请设置windows机器的网络属性,登录方式为网络用户登录,直接登录到NT域,NT域为cx,重启后用前面添加的test帐号登录,密码为smbpasswd –a test时设置的密码,进行系统后用控制面板之”用户及密码”可修改登录密码。  
打开网上邻居,看是否能浏览到cxserver,亦可用\\cxserver访问。  
最后设置:chkconfig –level 3 smb on #让smb开机自动运行  
 
八、磁盘配额  
 
前面我们在配置文件共享的时候,有一个共享资源为homes,如aa登录,在\\cxserver中有一个aa文件夹,aa用户对这个文件夹具读写权限,  
 
如若我们不限制aa的话,他有可能会将硬盘塞满,任何一个管理员都不希望看到这种事情,下面我们用quota来实现对用户使用磁盘空间的限制。  
 
1]首先明白一个概念,quota是针对分区的,所以我们在前面安装linux的时候单独分了一个/home区。  
 
2]而所有的用户home目录都在/home下,现在开始在home目录下建立两个文件:  
cd /home  
touch quota.user  
touch quota.group  
chmod 600 quota.user //只允许root对这两个文件读写  
chmod 600 quota.group  
 
3]在/etc/rc.d/rc.local文件尾部加入quota启动脚本:  
if [ -x /sbin/quotacheck ]  
then  
echo "Checking quotas. This may take some time..."  
/sbin/quotacheck -avug  
echo "Done"  
fi  
if [ -x /sbin/quotaon ]  
then  
echo "Turning on quota"  
/sbin/quotaon -avug  
echo "OK"  
fi  
 
4]修改/etc/fstab文件中定义/home分区的那一行:  
原内容: /dev/hda3 /home ext3 defaults 1 2  
新内容: /dev/hda3 /home ext3 defaults,usrquota,grpquota 1 2  
看得出来只是在defaults后面加了usrquota,grpquota而已。  
注意啊,是usrquota而不是userquota,若是错了,后果难以预料。  
 
5]重启,在启动过程中会出错,主要是因为quota在/home目录下打不到aquota.user和aquota.group两个文件,没关系,咱们进了系统以再慢慢收拾它。  
 
6]用root登录,然后我们生成aquota.user和aquota.group两个文件:  
convertquota -u /home  
convertquota –g /home  
若以上步骤不出错的话,我们用ls /home –al就会看到aquota.user,aquota.group两  
个文件了  
 
7]再重启,注意观察,不会再出错了。进入系统后就可以对用户home目录进行限制了。比如现在有一个test用户,我们对他进行限制:  
edquota –u test #此命令将进入一个vi编辑模式,其内容如下:  
Filesystem blocks soft hard inodes soft hard  
/dev/hda3 0 0 0 0 0 0  
注解标识: A B C D E F  
在讲解各参数之前先说说限制的两种方式:soft,hard  
soft:又称软限制,当用户到达这个限制以后,系统会给予警告,但仍可写入。  
hard:又称硬限制,到达这个限制,就完全禁止任何写入啦。  
ABC为磁盘空间的限制设置,而DEF为总文件个数的限制  
A:已使用空间,无需要设置  
B:用户空间使用限制,为软限制,需要设置。  
C:用户空间使用限制,为硬限制,需要设置。  
D:已有文件总数,无需要设置。  
E:文件总数限制,为软限制,需要设置。  
F:文件总数限制,为硬限制,需要设置。  
 
我们要限制test用户使用空间100M,最多不能超过120M,文件总数为2000个,  
最多不能超过2500个,设置如下:  
Filesystem blocks soft hard inodes soft hard  
/dev/hda3 0 102400 122880 0 2000 2500  
注:空间限制是以k为单位的。  
 
8]测试:进入自己的home目录,然后拷贝文件,若是超过120M,就不允许再写入了。  
 
9]其它命令的使用:  
复制相同调协至其它用户:  
edquota –p test –u username1 username2 username3 username4……  
显示某个用户当前磁盘使用情况:  
quota –v username  
显示所有用户当前磁盘使用情况:  
repquota –a  
其它的一些命令请参考相关资料。  
 
九、FTP服务器:  
 
Rh72自带了wu_ftp,但是由于其毛病不少,所以我们不用它,我们用性能及安全性能均优于它的proftpd来代替它。  
 
1]下载软件:ftp://ftp.proftpd.org/distrib/source/proftpd-1.2.5.tar.gz 
2]安装:  
tar zxvf proftpd-1.2.5.tar.gz  
cd proftpd-1.2.5  
./configure –prefix=/usr/local/proftpd //指定安装在/usr/local/proftpd目录下  
make  
make install  
cp contrib/dist/rpm/proftpd.init.d /etc/rc.d/init.d/proftpd  
chmod 700 /etc/rc.d/init.d/proftpd  
chkconfig –level 3 proftpd on //设置为系统自启动服务  
cp /usr/local/proftpd/sbin/proftpd /usr/sbin //将proftpd拷至/usr/sbin目录下,让系  
统能自动搜索到,也免得再去加一个搜索路径  
 
3]配置/usr/local/proftpd/etc/proftpd.conf文件:  
vi /usr/local/proftpd.conf  
ServerName "Xchen FTP server" //服务器登录提示  
ServerType standalone  
DefaultServer on  
Port 21  
Umask 022  
MaxInstances 30  
User nobody  
Group nobody //原来为nogroup,请改成nobody  
RequireValidShell off //手动添加此名,重要  
//限定test组用户只能访问自己的home目录,而不能向上浏览  
DefaultRoot ~ test  
//限定test组用户只能访问自己的/home/ftp目录,不能向上浏览  
DefaultRoot ~/ftp test  
//限定music组用户只能访问/home/music目录,不能向上浏览  
DefaultRoot /home/ftp music  
//除music组中bb用户外都能访问/home/music目录,不能向上浏览  
DefaultRoot /home/ftp music,!bb  
//上面组需要自己建立:groupadd test,gpasswd –a username test  
ServerIdent off //登录时不显示版本信息  
<Directory /*>  
AllowOverwrite on  
</Directory>  
<Anonymous /home/ftp> // /home/ftp为匿名用户登录目录  
User ftp  
Group ftp  
UserAlias anonymous ftp  
MaxClients 10  
DisplayLogin welcome.msg  
DisplayFirstChdir .message  
<Limit WRITE>  
DenyAll  
</Limit>  
</Anonymous>  
 
4]启动服务:/etc/rc.d/init.d/proftpd start  
 
5]测试,在客户端用FTP软件或命令行FTP程序进行访问ftp.cx.com。  
 
6]proftpd技岂只此,还有很多高级应用,请参考相关资料,这里就不多赘述。  
 
十、WWW服务  
 
www服务用apache来实现,步骤极其简单,当然,这里说的是初级应用。因为我们要实现的是简单的www服务,所以只需更改下面几个参数即可:  
 
1]Vi /etc/httpd/conf/httpd.conf  
ServerName www.cx.com  
DocumentRoot ”/var/www”  
 
2]拷贝网页文件到/var/www目录  
 
3]启动服务:/etc/rc.d/init.d/httpd start  
将httpd设置为系统自启动服务:chkconfig –level 3 httpd on  
 
4]测试:在ie中用http://www.cx.com测试。  
 
为什么把www服务讲得这么简单呢,主要是因为这种单一类型的网页文件服务用得较少,现在大多数都要用cgi,asp,php,还有数据库等,关于这方面配置还请参考相关资料,这里不作详解。  
 
十一、动态域名服务  
动态域名这个叫法不大妥当,应该叫动态ip for 域名才对。到现在为止,ftp和www服务我们都实现了,在局域网内可以用www.cx.com来访问,但是我们已经用ADSL连通了internet,我们怎样让外部访问我们的ftp,www服务器呢,总不成每都通知对方服务器的IP吧,所以就要用到动态域名服务,大致原理是每次ADSL拔号时将自身IP更新到外部DNS服务器数据库中所对应的那个域名,所以我们每次访问这个域名就可以了,在这里讨论一下www.3322.org提供的动态服务的实现。  
1]登录www.3322.org网站,注册一个用户,并申请一个动态域名xxxx.3322.org。  
2]下载linux客户端软件:  
http://www.3322.org/dyndnspage/ez-ipupdate-3.0.10-linux-i386.tgz 
3]安装软件:  
tar zxvf ez-ipupdate-3.0.10-linux-i386.tgz  
mv ez-ipupdate-3.0.10-linux-i386 /usr/local/ezip  
4]编辑/usr/local/ezip/qdns.conf文件:  
vi /usr/local/qdns.conf  
service-type=qdns  
user=username:password //用户名及密码,用冒号隔开  
host=xxxxx.3322.org //你申请的域名  
interface=ppp0 //接口为ppp0  
max-interval=2073600  
cache-file=/tmp/ez-ipupdate.cache  
 
5]将当前ip现新到我们申请的域名:  
cd /usr/local/ezip  
ez-ipupdate –c qdns.conf  
系统会提示数据更新成功,好,我们来ping一下xxxx.3322.org,哈,果然是ppp0  
的IP,再用http://xxx.3322.org试一下,一切OK,爽。  
 
6]问题又来了,难道我们每次启动ADSL都要用手动更新一次吗,你可能会想到用crontab让它每隔几分钟更新一次,建议不错,不过为了ip更新而启用crond服务  
似乎有点小题大做,我的方法,修改/usr/sbin/adsl-start脚本:  
vi /usr/sbin/adsl-start  
找到倒数25行”tty –s && $ECHO “ Connected ! “,在其下增加一行:  
/usr/local/ezip/ez-ipupdate –c /usr/local/ezip/qdns.conf  
存盘退出,OK,我们让ADSL拔号完成以后自动更新,爽吧!  
 
7]测试一下:  
adsl-start  
. Connected!  
ez-ipupdate Version 3.0.10  
Copyright (C) 1999-2000 Angus Mackay.  
connected to members.3322.org (202.108.36.139) on port 80.  
request successful  
OK,数据更新成功。  
 
好,现在你随时随地都可以用xxxx.3322.org访问你的服务了,不错吧。  
 
 
十二、openssh的设置  
如果你在家里或者其它地方,怎样控制你的服务器,你可能会想到用telnet,本来是可以的,但是由于telnet用的是明码传输,容易给那些不怀好意者可乘之机,所以我们用openssh来代替telnet。  
 
1]卸载原来的2.9x版,2.9x版有bug,不安全:  
rpm –e openssh  
 
2]最新软件包下载:  
 
ftp://ftp.openbsd.org/pub/OpenBS ... penssh-3.4p1.tar.gz 
3]安装软件:  
tar zxvf openssh-3.4p1.tar.gz  
cd openssh-3.41  
./configure --prefix=/usr/local/ssh \  
--sysconfdir=/etc/ssh \  
--with-tcp-wrappers \  
--with-ipv4-default \  
--with-md5-passwords  
make  
make install  
注:安装完成以后,会自动生成主机密钥,还会提示需要sshd用户帐号,可用useradd加一个sshd用户。  
install /contrib/redhat/sshd.pam /etc/pam.d/sshd  
cp contrib/redhat/sshd.init /etc/rc.d/init.d/sshd  
chkconfig --level 3 sshd on ;配置成系统服务  
 
4]配置openssh之/etc/ssh/ssh_config文件  
vi /etc/ssh/ssh_config  
Host *  
ForwardAgent no  
ForwardX11 no  
RhostsAuthentication no  
RhostsRSAAuthentication no  
RSAAuthentication yes  
PasswordAuthentication yes  
BatchMode no  
CheckHostIP yes  
StrictHostKeyChecking ask  
IdentityFile ~/.ssh/identity  
Port 22  
Cipher 3des  
EscapeChar ~  
 
5]配置openssh之/etc/ssh/sshd_config文件  
vi /etc/ssh/sshd_config  
Port 22  
ListenAddress 0.0.0.0  
ListenAddress ::  
HostKey /etc/ssh/ssh_host_key  
HostKey /etc/ssh/ssh_host_rsa_key  
HostKey /etc/ssh/ssh_host_dsa_key  
KeyRegenerationInterval 3600  
ServerKeyBits 768  
SyslogFacility AUTH  
LogLevel INFO  
LoginGraceTime 600  
#PermitRootLogin yes #还是不要让root直接登录为妙!  
StrictModes yes  
RSAAuthentication yes  
PubkeyAuthentication yes  
RhostsAuthentication no  
IgnoreRhosts yes  
RhostsRSAAuthentication no  
HostbasedAuthentication no  
IgnoreUserKnownHosts no  
PasswordAuthentication yes  
PermitEmptyPasswords no  
Subsystem sftp /usr/local/ssh/libexec/sftp-server  
 
6]配置用户的加密密钥  
useradd test  
passwd test  
su test  
ssh-keygen -d  
出现提示请回车并输入passwd,再次输入passwd。  
注:这个密码是系统加密运算时用到的,登录时还用原来密码。  
 
7]启动服务  
/etc/rc.d/init.d/sshd start  
 
8]在客户端用test帐号进行测试。  
 
 |   
 
 
 
 |