网络操作系统-Linux基础
主讲人:王柯wangk@swnu.edu.cn
西南师范大学计算机科学系2005年春
Red Hat Linux 网络配置与网络管理
第19章-第22章
第19章配置网络连接
?网络类配置文件(1)
对网络进行配置的初始化脚本。/etc/rc.d/init.d/network
将网络服务名转换为端口号/协议。由inetd、telnet、
tcpdump 和一些其它程序读取。有一些C 访问例程。
/etc/services
路由表/proc/net/route
列举当前可用的协议。请参阅NAG(网络管理员指南,
Network Administrators Guide)和联机帮助页。C 接口
是getprotoent。绝不能更改。
/etc/protocols
列举从机器所连接的网络可以访问的网络名和网络地址。
通过路由命令使用。允许使用网络名称。
/etc/networks
设置NETWORKING=yes 或no;HOSTNAME=:
GATEWAY=。至少由rc.sysinit 读取。
/etc/sysconfig/network
Red Hat 网络配置脚本。Ifup ifdown ifcfg-eth0 ifcfg-lo0
/etc/sysconfig/network-
scripts/if*
本文件包含了系统的主机名和完全的域名
如linux.swnu.edu.cn(linux为主机名;swnu.edu.cn为域名)
/etc/HOSTNAME
?网络类配置文件(2)
在程序请求“解析”一个IP 地址时告诉内核应该查询哪个名称服
务器nameserver。
/etc/resolv.conf
允许使用本地INET服务的主机列表。至少由/usr/sbin/tcpd 读取。/etc/hosts.deny
允许使用本地INET服务的主机列表。至少由/usr/sbin/tcpd读取。/etc/hosts.allow
告诉网络域名服务器如何查找主机名。(通常是/etc/hosts,然
后就是名称服务器bind;可通过netconf 对其进行更改)
/etc/host.conf
包含(本地网络中)已知主机的一个列表。如果系统的IP 不是
动态生成,就可以使用它。对于简单的主机名解析(点分表示
法),在请求DNS 或NIS 网络名称服务器之前,/etc/hosts.conf
通常会告诉解析程序先查看这里。
/etc/hosts
?网络类配置文件(3)
gated 的配置。只能被gated 守护进程所使用。/etc/gated.conf
包含gated 守护进程的版本号。/etc/gated.version
由routed 守护进程可选地使用。/etc/gateway
包含RPC 指令/规则,这些指令/规则可以在NFS 调用、远
程文件系统安装等中使用。
/etc/rpc
邮件程序sendmail 的配置文件。/etc/sendmail.cf
inetd的配置文件。包含每个网络服务的条目,inetd 必须为这些
网络服务控制守护进程或其它服务。注意,服务将会运行,但
在/etc/services 中将它们注释掉了,这样即使这些服务在运行也
将不可用。格式为:<service_name> <sock_type> <proto>
<flags> <user> <server_path> <args>
/etc/inetd.conf
要导出的文件系统(NFS)和对它的权限。/etc/exports
19.1 网络连接配置
? 19.1.1 建立以太网连接
? 19.1.2 建立ISDN连接
? 19.1.3 建立MODEM连接
? 19.1.4 设置DNS
? 19.1.5 管理主机
? 19.1.6 激活设备
? 19.1.7 使用配置文件profile
? 19.1.8 设备别名device aliases
19.1 网络连接配置
?网络管理工具
#redhat-config-network-gui
#redhat-config-network-tui
?网络设备控制工具
#redhat-control-network
19.1 网络连接配置
?逻辑设备v.s. 设备别名device aliases
–逻辑设备:每个物理网络设备可以创建多个逻辑网络设备。
可以使用不同的别名和不同的配置文件profile来与同一物理网
络设备相关联。和同一物理网络设备相关联的逻辑网络设备
必须存在于不同的配置文件中,并且不能被同时激活。
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/networking/profiles/*
–设备别名:设备别名是与同一物理设备相关联的虚拟设备,
它们通常使用设备名、冒号和数字来代表(例如:eth0:1)。
必须存在于不同的配置文件中,可以被同时激活。(例如:
一个网卡配置多个IP地址,并且可以同时激活。)
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network-scripts/ifcfg-eth0:1
19.2 PPP配置
PPP Architecture
OSI layer
Physical Layer
(such as EIA/TIA-232, V.24, V.35, ISDN)
High-Level Data Link Control (HDLC)
Link Control Protocol (LCP)
Network Control Protocol (NCP)
(specific to each network-layer protocol)
Upper-layer protocols
(such as IP, IPX, AppleTalk)
3
2
1
19.2 PPP配置
19.2.1 什么是PPP PAP CHAP
19.2.2 必要的软件和硬件
检查内核对PPP的支持#dmesg | more
检查PPP软件#ls /usr/sbin/pppd文件
#ls /usr/sbin/chat文件
#ls /etc/ppp目录
19.2.3 配置PPP连接
19.2 PPP配置
19.2.3 配置PPP连接
1. 使用KPPP配置PPP
2. 使用PPP script配置PPP
#cp /usr/share/doc/ppp-2.4.1/scripts/ppp-o* /etc/ppp
ppp-off
ppp-on
ppp-on-dialer
ppp-on-rsh
ppp-on-ssh
第20章TCP/IP管理程序
20.1 TCP/IP配置文件
?主机名:/etc/hosts
?网络名:/etc/networks
?主机名:/etc/HOSTNAME
?网络服务:/etc/services
?网络协议:/etc/protocols
ifconfig命令
? #ifconfig eth0 202.202.104.37 netmask 255.255.255.0
? #ifconfig eth0 up/down
? #ifconfig ppp0 192.168.1.72 pointtopoint 204.166.254.14
? #ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE:FF
? #ifconfig eth0 192.168.50.50 netmask 255.255.255.240 broadcast 192.168.50.63
? #ifconfig eth0:0 202.202.104.38
? #ifconfig eth0:1 202.202.104.39
route命令
? #route add –host hostname or IP dev device
? #route add –net network-address netmask dev device
? #route add –net default gw hostname or IP
? #route
? #route add –host 192.168.1.1 dev eth0
? #route add –net 192.168.1.0 dev eth0
? #route add –net 192.168.50.48 255.255.255.240 dev eth0
? #route add default gw 192.168.1.1 dev eth0
? #route del 192.168.23.0
第21章服务器配置
? 21.1 NFS(网络文件系统)服务器
? 21.2 NIS (网络信息服务)服务器
? 21.3 Samba服务器
? 21.4 Apache服务器
21.1 NFS服务器
?安装好两个软件包:portmap nfs
?NFS基于RPC,所以需要portmap服务
?修改配置文件/etc/exports
格式:/directory nfs-client-host-ip-or-name (access options)
示例:
/www client1.sina.com(ro, ro) client2.sina.com(ro)
/www client1.sina.com(rw) client2.sina.com(rw,sync)
/www 202.202.104.104(ro)
/www 202.202.50.48/255.255.255.240(rw)
/www *.sina.com(rw,insecure,sync,no_wdelay,no_subtree_check,insecure_locks)
/www (ro)
/pub linuxlab-??.swnu.edu.cn(noaccess)
在NFS服务器和客户之间进行用户映射
?通常并不希望NFS客户上的root帐户对NFS服务器安装的共享
目录享有root的特权,所以NFS服务器默认使用root_squash.
? /www *.swnu.edu.cn(root_squash)
将root(UID=0和GID=0)压缩到nobody
? /www *.swnu.edu.cn(no_root_squash)
把客户root当作本地root
? /www *.swnu.edu.cn(anonuid=500,anongid=666)
将root压缩到UID=500和GID=666
? /www *.swnu.edu.cn(all_squash)
将所有客户压缩到nobody
? /www *.swnu.edu.cn(anonuid=500,anongid=666,squash_uids=0-
100,squash_gids=0-100)
将0~100范围内的所有UID和GID压缩到nobody UID=500和GID=666
? /www *.swnu.edu.cn(map_static=/etc/nfs.map)
编辑nfs.map文件来实现映射。
在NFS服务器和客户之间进行用户映射
? #cat /etc/nfs.map
uid 0-100 #squash all remote uids in the 0-100 range
gid 0-100 #squash all remote gids in the 0-100 range
uid 500 666 #map remote uid 500 to local uid 666
gid 500 777 #map remote gid 500 to local gid 777
NFS服务器
?将修改后/etc/exports的变化让NFS进程知道
#exportfs
#servie nfs reload
?检查rpc.mountd、rpc.rquotad、rpc.nfsd(这三个被称
为portmap-administered程序)是否运行正常
#rpcinfo –p
?查看、启动、停止、在引导时启动NFS服务
#service nfs status
#service nfs start
#service nfs stop
#service nfs restart
#chkconfig –level 345 nfs on
NFS客户-挂载NFS文件系统
?使用mount命令挂载NFS文件系统
#mount nfs.swnu.edu.cn:/www /localdir –t nfs
?使用/etc/fstab命令挂载NFS文件系统
修改/etc/fstab,
增加server:/www /localdir nfs
rsize=8192,wsize=8192,timeo=14,intr
NFS客户-挂载NFS文件系统
?使用autofs挂载NFS文件系统
?守护进程:automount
?要在客户/misc/myproject 挂载点上挂载服务器nfs.swnu.edu.cn
上的/www 目录:
修改/etc/auto.master 主配置文件
/misc /etc/auto.misc --timeout=60
修改/etc/auto.misc 从配置文件
myproject –rw,soft,intr,rsize=8192,wsize=8192 nfs.swnu.edu.cn:/www
?重启autofs服务:
#service autofs reload
#service autofs restart
chkconfig
? chkconfig命令可以用来激活和停运服务。由xinetd 管理的服务
会立即被chkconfig 影响。对其它服务的改变在使用chkconfig
之后不会立即生效,必须使用service daemon stop 命令来停止
个别服务。
? #chkconfig --list 显示一个系统服务列表,以及它们在运行级别
0 到6 中已被启动(on)或停止(off)。在列表末端,你会看
到由xinetd 管理的服务部分。
? # chkconfig --list finger
返回了下列输出:
finger on
? #chkconfig --list anacron
返回了下列输出:
anacron 0:off 1:off 2:on 3:on 4:on 5:on 6:off
? #chkconfig --level 345 nscd off
在运行级别3、4、5 中停运nscd 服务
ntsysv 工具
? ntsysv 工具为激活或停运服务提供了简单的界面。
?使用ntsysv 来启动或关闭由xinetd 管理的服务,配置
运行级别。按照默认设置,只有当前运行级别会被配
置。要配置不同的运行级别,使用--level 选项来指定
一个或多个运行级别。
?譬如,命令ntsysv --level 345 配置运行级别3、4和5。
21.2 NIS服务器
?NIS服务器:存放网络范围内与主机无关但却需要定
期更新的配置文件,如passwd和group文件。
?NIS客户:
ypbind/ypwhich/ypat/yppoll/ypmatch/yppasswd/ypset
21.3 Samba服务器
?Samba 使用SMB 协议通过网络连接来共享文件和打
印机. 支持该协议的操作系统包括Microsoft Windows
(通过它的Network Neighborhood)、OS/2、和
Linux。
?Samba 会允许文件和打印机被你的网络中的所有系
统共享。
Samba配置文件
? /etc/samba/smb.conf
? /etc/samba/smbpasswd
? /etc/samba/users
/etc/samba/smb.conf 配置文件
?以# ;开始的是注释行
?以[ ]定义一个部分
[global]
[homes]
[printers]
?以“名称=值”定义配置参数
workgroup = mygroup
/etc/samba/smb.conf 配置文件
? [global]
workgroup = mygroup
server string = samba server
printcap name = /etc/printcap
load printers = yes
printing = cups
log file = /var/log/samba/%m.log
max log size = 0
security = user # / share /server
encrypt password = yes
smb passwd file = /etc/samba/smbpasswd
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
dns proxy = yes
/etc/samba/smb.conf 配置文件
?[homes]
comment = Home Directories
browseable = no
writable = yes
create mod = 0664
directory mod = 0775
? [printers]
comment = All Printers
path = /var/spool/samba
browseable = no
guest ok = no
printable = yes
Samba客户
? #smbclient //hostname/sharename –U username
smb:\>?
?在Nautilus中输入:
smb://user:passwd@servername/sharename/
Webmin管理工具
?Webmin是一个基于Web的Unix系统管理工具。管理员
通过浏览器访问Webmin的各种管理功能并完成相应的
管理动作。目前Webmin支持绝大多数的Unix系统,这
些系统除了各种版本的Linux以为还包括:AIX、HP-UX、
Solaris、Unixware、Irix和FreeBSD等。
?Webmin自带web服务器miniserver。
?Web管理方式使得Webmin同时具有本地和远程管理的
能力。
?插件式结构使得Webmin具有很强的扩展性和伸缩性。
目前Webmin提供的标准管理模块几乎涵盖了常见的
Unix管理,而且第三方的管理模块也被不断地被开发出
来。
?访问控制和SSL支持为远程管理提供了足够的安全性。
?国际化支持,提供多国语言版本,包括简体中文。
Webmin安装
?1. 在www.webmin.com/webmin或其镜象站点,下载webmin,有tar.gz格式和
rpm格式等可选。(以下的安装以webmin-1.110.tar.gz为例)
?2. 安装Webmin需要先安装perl5.0.6或以上版本。如果目标系统上没有安装perl
的话,需要到http://www.cpan.org下载并安装{perl-for- linux},同时需要安装常
用的perl模块;如果你需要Webmin支持SSL,还需要安装OpenSSL和perl模块
Net::SSLeay。
?3. 把webmin-1.110.tar.gz解包到你想安装Webmin的目录:
tar vzxf webmin-1.110.tar.gz
?4. 进到该目录,并运行安装脚本setup.pl:
cd webmin-1.0.8
./setup.pl
?5. 安装过程会询问Webmin配置文件目录、Log目录和系统的监听端口(缺省
是10000,可以自己修改),还会要求你设置管理员密码。安装脚本还会把
Webmin安装成系统的守护进程,在开启系统时自动启动。
?6. 启动系统,访问http://localhost:10000,如果出现了Webmin的登录界面就说
明安装成功了。
21.4 Apache服务器
?配置文件/etc/httpd/conf/httpd.conf
?使用「主菜单」=> 「系统设置」=> 「服务器设置」=>
「HTTP 服务器」配置工具来配置Apache HTTP 服务器的
一般步骤如下:
1.在「主」标签下配置基本设置。
2.点击「虚拟主机」标签来配置默认设置。
3.在「虚拟主机」标签下,配置默认的虚拟主机。
4.如果你想为不止一个URL 或虚拟主机提供服务,则添加额
外的虚拟主机。
5.在「服务器」标签下配置服务器设置。
6.在「性能微调」标签下配置连接设置。
7.把所有必要的文件复制到DocumentRoot 和cgi-bin 目录中。
8.退出程序并保存设置。
21.4 Apache服务器
MaxSpareSer
vers
MinSpareServersUserDirBindAddress
AddLangua
ge
ClearModulelistAddModule
LoadModule
KeepAliveTi
meout
KeepAliveMaxKeepAliveRe
quests
MaxRequestPerCh
ild
TimeoutMaxClientsGroupCoreDumpDirecto
ry
UserPidFileLockFileServerAlias
NameVitural
Host
VitualHostUnsetEnvPassEnv
SetEnvHostnameLookupsLogLevelErrorLog
LogFormatTransferLogErrorDocumentDirectoryIndex
ListenServerAdminServerNameServerRoot
第22章网络安全
? 22.1 防火墙
? 22.2 防火墙配置
– 21.1.1 「主菜单」=> 「系统设置」=> 「安全级别」
– 21.1.2 Gnome Lokit安全工具箱
「主菜单」=> 「系统工具」=> 「更多系统工具」=> 「Lokkit」
ipchains Linux防火墙管理程序
在TCP消息中的ACK标志必须被置位,以指示对连接请求
或正在进行创建的连接的初始化响应.如果!-y没有给出,则
TCP标志不被检查.
!-y
指定规则应用到的网络接口.若无,则规则用于所有接口
-i <interface>
指定规则应用到的IP协议.若无, ,则规则用于所有协
议.protocol可以是:tcp、udp、icmp和all.来自/etc/protocols中
的任何协议名和协议号都是可以的.
-p <protocol>
在TCP消息中的SYN标志必须被置位,ACK标志必须清除,
以表明一个正在建立的连接请求.如果-y没有给出,则TCP标
志不被检查.
-y
-A 在链尾添加一条规则
-I 在链头插入一条规则
Chains 可为input或output或forward.若无,则规则用于所有
链
–A|I [chains]
ipchains Linux防火墙管理程序
指明包的目的地址.如果没有指定目的地址,则表
示全是单点传送目的地址.如果指定某一端口或端
口范围,则此规则仅适用于这些端口;如果没有指
定端口,则规则适用所有端口.
-d <address> [:<port>]
指定此规则对数据包的处理策略:ACCEPT或
DENY或REJECT.另外,forward链还能采用
MASQ(地址隐藏)策略.
-j <policy>
当一包匹配此规则时,默认操作是在系统日志
/var/log/messages中写下一内核消息(KERN_INFO)
-l
指明包的源地址.如果没有指定源地址,则表示全
是单点传送源地址.如果指定某一端口或端口范围,
则此规则仅适用于这些端口;如果没有指定端口,
则规则适用所有端口.
-s <address> [:<port>]
ipchains防火墙使用的符号常量
CLASS_E_RESERVED_NET
= “224.0.0.0/5”
BROADCAST_SRC =
“0.0.0.0”
CLASS_D_MULTICAST =
“224.0.0.0/4”
LOOPBACK = “127.0.0.0/8”
MY_ISP =
“my.isp.address.range”
CLASS_A = “10.0.0.0/8”
CLASS_B = “172.16.0.0/12”
CLASS_B = “192.168.0.0/16”
LOOPBACK_INTERFACE =
“LO”
IPADDR = “my.ip.address”
EXTERNAL_INTERFACE =
“eth0”
ipchains防火墙使用的符号常量
UNPRIVPROTS =
“1024:65535”
BROADCAST_DEST =
“255.255.255.255”
PRIVPROTS = “0:1023”
BROADCAST_SRC =
“0.0.0.0”
22.3 OpenSSH
? OpenSSH是SSH (Secure SHell)协议的免费开源实现。
? OpenSSH用安全、加密的网络连接工具代替了telnet、ftp、rlogin、rsh
和rcp 工具(telnet 和ftp 使用纯文本口令,并被明文发送)。
? OpenSSH支持SSH 协议的版本1.3、1.5、和2。自从OpenSSH 的版
本2.9 以来,默认的协议是版本2,该协议默认使用RSA 钥匙。
? OpenSSH工具将会增进系统安全性。所有使用OpenSSH 工具的通讯,
包括口令,都会被加密。
? OpenSSH 自动把DISPLAY 变量转发给客户机器。换一句话说,如果
你在本地机器上运行X 窗口系统,并且使用ssh 命令登录到了远程机
器上,当你在远程机器上执行一个需要X 的程序时,它会显示在你的
本地机器上。如果你偏爱图形化系统管理工具,却不能够总是亲身访
问该服务器,这就会为你的工作大开方便之门。
22.3 OpenSSH
?安装好两个软件包:openssh openssh-server
?配置文件
服务器端配置文件/etc/ssh/sshd_config
客户端配置文件/etc/ssh/ssh_config
主机ID密钥文件/etc/ssh/ssh_host*key*
?守护进程sshd
?查看、启动、停止、在引导时启动sshd服务
#service sshd status
#service sshd start
#service sshd stop
#service sshd restart
#chkconfig –level 345 sshd on
22.3 OpenSSH
? Openssh客户
#ssh 202.202.104.104
#ssh username@202.202.104.104
#ssh –l username 202.202.104.104
#scp localfile username@202.202.104.104:/remotefilename
#scp username@202.202.104.104:/remotefilename localfile
#sftp username@202.202.104.104
生成钥匙对
?如果你不想每次使用ssh、scp 或sftp 时都要输入口令来连接
远程机器,你可以生成一对授权钥匙。
?钥匙必须为每个用户生成。
?SSH 协议1 和2 共享~/.ssh/authorized_keys、
~/.ssh/known_hosts 和/etc/ssh/ssh_known_hosts 文件。
?从OpenSSH 版本3.0 开始,~/.ssh/authorized_keys2、
~/.ssh/known_hosts2 和/etc/ssh_known_hosts2 就会过时。
? Red Hat Linux 9 默认使用SSH 协议2 和RSA 钥匙。
为版本2 生成RSA 钥匙对
(1)#ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key(/root/.ssh/id_rsa):
#回车,接受~/.ssh/id_rsa 的默认位置
Enter passphrase(empty for no passphrase):
#输入一个与你的帐号口令不同的口令,再输入一次来确认。
The key fingerprint is:
63:e5:e2:31:12:8b:2c:79:1d:55:40:02:f2:e0:a5:4a username@hostname
(2)公钥被写入~/.ssh/id_rsa.pub。密钥被写入~/.ssh/id_rsa。决不能把密钥出示
给任何人。
(3)使用chmod 755 ~/.ssh 命令改变你的.ssh 目录的许可权限。
(4)把~/.ssh/id_rsa.pub 的内容复制到你想连接的机器上的
~/.ssh/authorized_keys 文件中。如果~/.ssh/authorized_keys 不存在,你可
以把~/.ssh/id_rsa.pub 文件更名拷贝为那个机器上的
~/.ssh/authorized_keys 文件。
(5)配置ssh-agent
为版本2 生成DSA 钥匙对
(1)#ssh-keygen -t dsa
Generating public/private dsa key pair.
Enter file in which to save the key(/root/.ssh/id_dsa):
#回车,接受~/.ssh/id_dsa的默认位置
Enter passphrase(empty for no passphrase):
#输入一个与你的帐号口令不同的口令句,再输入一次来确认。
The key fingerprint is:
63:e5:e2:31:12:8b:2c:79:1d:55:40:02:f2:e0:a5:4a username@hostname
(2)公钥被写入~/.ssh/id_dsa.pub。密钥被写入~/.ssh/id_dsa。决不能把密钥出
示给任何人。
(3)使用chmod 755 ~/.ssh 命令改变你的.ssh 目录的许可权限。
(4)把~/.ssh/id_dsa.pub 的内容复制到你想连接的机器上的
~/.ssh/authorized_keys 文件中。如果~/.ssh/authorized_keys 不存在,你可
以把~/.ssh/id_dsa.pub 文件更名拷贝为那个机器上的
~/.ssh/authorized_keys 文件。
(5)配置ssh-agent
为版本1 生成RSA 钥匙对
(1)#ssh-keygen -t rsa1
Generating public/private rsa1 key pair.
Enter file in which to save the key(/root/.ssh/identity):
#回车,接受~/.ssh/identity 的默认位置
Enter passphrase(empty for no passphrase):
#输入一个与你的帐号口令不同的口令,再输入一次来确认。
The key fingerprint is:
63:e5:e2:31:12:8b:2c:79:1d:55:40:02:f2:e0:a5:4a username@hostname
(2)公钥被写入~/.ssh/identity.pub。密钥被写入~/.ssh/identity。决不能把密钥出
示给任何人。
(3)使用chmod 755 ~/.ssh和chmod 644 ~/.ssh/identity.pub 命令改变你的.ssh 目
录的许可权限。
(4)把~/.ssh/identity.pub 的内容复制到你想连接的机器上的
~/.ssh/authorized_keys 文件中。如果~/.ssh/authorized_keys 不存在,你可
以把~/.ssh/identity.pub 文件更名拷贝为那个机器上的
~/.ssh/authorized_keys 文件。
(5)配置ssh-agent
在Gnome中配置ssh-agent
(1)安装openssh-askpass-gnome 软件包
(2)「主菜单」(在面板上)=> 「首选项」=> 「更多首选项」
=> 「会话」。然后点击「启动程序」标签。点击「增加」,
在「启动命令」文本字段内输入/usr/bin/ssh-add。把它的优
先级设为比任何现存命令都高的数字以确保它最后才执行。
ssh-add 的优先级数字最好是70 或更高。优先级数字越高,
优先级越低。如果你列出了其它程序,该程序的优先级应该
最低。点击「关闭」来退出该程序。
(3)注销后再登录进GNOME;换一句话说,重新启动X 服务器。
在GNOME 启动后,一个提示你输入口令句的对话框就会
出现。输入要求的口令句。如果你把DSA 和RSA 两者都配
置了,你会被提示两者都输入。从现在起,你就不会被ssh、
scp 或sftp 提示输入口令了。
在命令行中配置ssh-agent
(1) 在shell 提示下,键入下面的命令:
#exec /usr/bin/ssh-agent $SHELL
(2) 然后,键入下面的命令:
#ssh-add
(3) 输入你的口令。如果你配置了不止一个钥匙对,你会被提示
输入每个口令
(4) 当你注销后,口令句就会被忘记。你必须在每次登录到虚拟
控制台或打开终端窗口时都执行这两条命令
22.4 ftpd
? Wu-ftpd
?ProFTPD
? vsftpd (Very Secure ftpd)
22.4 Wu-ftpd
?下载wu-ftpd-2.6.2-11.72.1.i386.src.rpm
?安装
#cp wu-ftpd-2.6.2-11.72.1.i386.rpm /usr/src/redhat/SRPMS
#rpm –i wu-ftpd-2.6.2-11.72.1.i386.src.rpm
# cd /usr/src/redhat/SPECS
#rpmbuild –ba wu-ftpd.spec
#cd/usr/src/redhat/RPMS
#rpm –Uvh wu-ftpd-2.6.2-11.72.1.i386.rpm
?配置文件
/etc/ftpaccess
/etc/ftpconversions
/etc/ftphosts
/etc/ftpusers
/etc/ftpgroups
/var/log/xferlog
22.4 Wu-ftpd
?FTP服务器管理工具
#ftpshut [-d min] [-l min] now [“message”]
#ftpshut [-d min] [-l min] +60 [“message”]
#ftpshut [-d min] [-l min] 0830 [“message”]
#ftpwho
#ftpcount
#ftprestart
22.4 vsftpd
?安装vsftpd-1.1.3-8.i386.rpm
?启停服务
#/etc/rc.d/init.d/vsftpd start
#/etc/rc.d/init.d/vsftpd restart
#/etc/rc.d/init.d/vsftpd stop
?配置文件
/etc/vsftpd.ftpusers //指定哪些用户帐号不能访问ftp服务器
/etc/vsftpd.user_list //本文件中的用户帐号默认情况下也不能访问ftp
服务器,除非vsftpd.conf中设置userlist_enable=no才允许
/etc/vsftpd/vsftpd.conf //用户登录控制、用户权限控制、超时设置、
服务器功能选项、服务器性能选项、服务器响应消息等。
22.5 sendmail
?安装sendmail-8.12.8-4.i386.rpm
?启停服务
#/etc/rc.d/init.d/sendmail start
#/etc/rc.d/init.d/sendmail restart
#/etc/rc.d/init.d/sendmail stop
?配置文件
/etc/mail/sendmail.cf //主配置文件
/etc/mail/sendmail.mc //macro config模板文件,可由它导出sendmail.cf
#cp /etc/mail/sendmail.cf /etc/mail/sendmail.cf.bak
#m4 /etc/mail/sendmail.mc > /etc/mail/sendmai.cf
22.5 sendmail支持POP和IMAP功能
?安装POP和IMAP服务器imap-2001a-18.i386.rpm
? #vi /etc/services
imap 143/tcp imap2 #Interim Mail Access Proto v2
imap 143/udp imap2
pop2 109/tcp pop-2 postoffice #POP version 2
pop2 109/udp pop-2
pop3 110/tcp pop-3 #POP version 3
pop3 110/udp pop-3
确保这些服务前面没有#
?修改/etc/xinetd.d/ipop3文件, 将disable=yes改为disable=no
?修改/etc/xinetd.d/imap文件, 将disable=yes改为disable=no
?重新启动xinetd程序来读取新的配置文件
#/etc/rc.d/init.d/xinetd.reload
超级服务器xinetd
?RH 9用xinetd.conf代替原来的inetd.conf,并且直接使用了firewall
服务
? xinetd(eXtended InterNET services daemon)对inetd功能进行了扩展,
其背景和细节可访问www.xinetd.org
超级服务器xinetd
?xinetd的默认配置文件是/etc/xinetd.conf,以一个脚本的形式将
inetd中每一行指定的服务扩展为一个/etc/xinetd.d/下的配置文件,
其文件格式为:
service service-name
{
Socket_type = xxx; //TCP/IP socket type,such as stream,dgram,raw,....
protocol = xxx; //服务使用的协议
Server = xxx; //服务daemon的完整路径
Server_args = xxx; //服务的参数
Port = xxx; //指定服务的端口号
Wait = xxx; //是否阻塞服务,即单线程或多线程
User = xxx; //服务进程的uid
Group = xxx; //gid
REUSE = xxx; //可重用标志
Disabled = yes/no; //是否禁用
…..
}
22.6 DNS客户
?配置文件/etc/resolv.conf
#Default Domain
domain redhat.com
#Default search list
search redhat.com
#First name server
nameserver 202.202.96.33
nameserver 202.202.96.34
?配置文件/etc/hosts
211.83.25.77 test.redhat.com test
127.0.0.1 localhost localhost
?配置文件/etc/host.conf
order hosts,bind
22.6 BIND
?安装bind-9.2.1-16.i386.rpm
?守护进程named
?启停服务
#service named start
#service named restart
#service named stop
?配置文件:
/etc/named.conf 主配置文件
/var/named 目录Zone配置文件
22.6 BIND
? BIND(Berkeley Internet Name Domain)
?配置工具redhat-config-bind 配置基本的BIND Server Zone
? Bind Configuration Tool allows you to add a forward master
zone(正向主区), a reverse master zone(逆向主区), and a slave
zone(从区).
DNS数据库与UNIX文件系统之比较
DNS与UNIX文件系统表示法比较
DNS
的
别
名
指
向
一
个
正
式
主
机
名
DNS
中
命
名
冲
突
问
题
的
解
决
DNS命名空间结构
域名与目录名之比较
一个主机在多个域中
同时具有IP与数据的域名
DLUT负责维护域dlut.edu.cn
域(domain)与区域(zone)
DNS
查
询
过
程
递归查找:DNS解析过程
In-addr.arpa
反
向
域