• 1. 第一章:Linux基础知识一.LINUX/UNIX简介 是一套免费使用和自由传播的类UNIX系统 主要基于INTEL X86系列CPU的计算机.由全 世界各地的成千上万程序员设计和实现. (可以在网上查相关资料) 二.发展 1
  • 2. 2
  • 3. 三.特点 1.开放性(开放源代码) 2.多用户 3.多任务(同时运行多个进程) 4.可靠的系统安全 5.良好移植性 3
  • 4. 四.LINUX安装 1.文件系统 A.ext2 B.ext3(为ext2升级,增加了日志功能,遇到非 法关机,也能保存数据) 2.分区类型 A.对IDE接口(Integrated Drive Electronics,电子集成驱动器 ) 第一主盘:hda 第一从盘:hdb 第二主盘:hdc 第二从盘:hdd B.对SCSI接口(小型计算机系统接口Small Computer System Interface ) 第一主盘:sda 第一从盘:sdb 注意交换分区:大小是实际内存两倍,主要把内存中暂时 不用的文件存入,需要时再调入内存.4
  • 5. 3.安装方式 A.光盘安装 B.FTP站安装 C.硬盘安装 D.从NFS服务器安装 E.SMB共享卷 4.版本 目前流行:RED HAT 9.0(三张光盘) RED HAT 企业版服务器4.0(四张光盘) FREEBSD 5.0(两张光盘) 5.安装过程讲解5
  • 6. 第二章:LINUX系统管理一.文件系统基础 1.文件基本概念 A.文件与文件名 B.文件类型 a.普通文件(f) b.文本文件 c.二进制文件 d.目录文件(d) e.设备文件 2.目录 A.树型目录结构 (分为:根目录与子目录)6
  • 7. B.工作目录与用户主目录 a.根目录 / b.子目录 /bin 重要可执行文件 /boot 启动内核文件(最好占一个分区) /etc 存放配置文件(最好占一个分区) /home 普通用户宿主目录(推荐占一个分区) /usr 存放应用程序(推荐占一个分区) /root 超户宿主目录(推荐占一个分区) /dev 存放外设文件 /lib 链接库文件 /mnt 挂载软驱/光驱/U盘等 /sbin 用户root使用命令存放处 /tftpboot 文件传输协议 /tmp 临时文件存放 /var 存放系统记录文件7
  • 8. C.查看环境变量 echo $PATH D.路径概念 a.相对路径 b.绝对路径 3.SSH ---安全联机(远程) A.用于LINUX主机与LINUX主机互联 B.用于WINDOWS主机与LINUX主机互联 4.GRUB明文加密的设置 A.开机进入GRUB,按A键,按空格后,再输入init 1进入单用户模式,用passwd修改root用户口令,再输入init 3 进入文本模式测试,刚才改过的口令。8
  • 9. B.给GRUB加密 a.进入系统,找到/boot/grub/grub.conf文件 b.使用vi编辑器打开 c.找到Title …所在行,在前面加一行:password 口令 存盘退出。重启后,再从GRUB下进入单用户时,将要求输入密码! 思考:把password 口令,加到“Title ….”下一行? 补充:LINUX系统启动模式 A.init 0 关机 B.init 1 单用户 C.init 2 多用户 D.init 3 文本 E.init 4 未分配 F.init 5 图形 G.init 6 重启9
  • 10. 5.Putty工具 是LINUX中最典型的客户端软件 二.文件/目录常用命令 1.login/logout(登录/登出,用户必须设口令才能登录) 2.reboot/init 6 重启系统 3.shutdown/poweroff/init 0 关机 4.ls 显示 ls –l 显示文件夹内文件详细信息,也可用ll ls –a 显示文件夹内隐藏文件 ls ~ 显示用户宿主目录 5.man 查看命令帮助文档 man ls 10
  • 11. 6.touch 创建文件 touch a.txt 7.cd 切换目录 cd .. 退出当前目录回到上一级目录 cd / 切换到根目录 cd /root/xx 切换到一个子目录下 cd ~ 切换到用户的宿主目录 8.mkdir 新建目录 9.rmdir 删除一个空目录 10.cp 拷贝 cp /root/a.txt /soft/ab 拷贝一个文件到一个目录中 cp /root/*.mp3 /soft/ab 拷贝扩展名为mp3的所有文件 cp –r /root /soft/ab 拷贝一个目录到另一个目录 cp –r –f /root /soft/ab 拷贝一个目录到另一个目录 同时删除前面已经存在的目录11
  • 12. 11.rm 删除文件/目录 rm –f 删除文件时不提示警告 rm –r 递归删除,常用于删除目录 如:rm –fr /root/xx 表示删除xx目录中所有文件与目录不提示 12.cat 查看文件内容 如:cat /etc/ab/x.txt 查看文件x.txt中内容 13.more 分屏显示 ls /etc |more 让/etc中文件与目录分屏显示 14.date 查看/修改日期和时间 date –s 月/日/四位年 date –s 时/分/秒 如:date –s 16:12:10.2 15.less查看多内容的文件 如:less /etc/squid/squid.conf 表示看squid.conf中内容分屏看. 16.pwd 显示当前所在位置 17.grep 过滤 如:rpm –qa|grep httpd 查看系统中是否装了apache软件12
  • 13. 18.> 导出文件 如:ls /etc > /root/a.txt 把/etc下所有文件名存入a.txt 19.find 查找文件 如:find –name “*.mp3” 查找当前目录中所有mp3文件 20.uptime 显示系统运行时长 21.df 显示磁盘占有空间 df –T 显示磁盘占有空间与文件系统类型 22.cal 显示日历 23.mv 移动文件/目录或重命名 如:mv /root/abc.jpg /etc/kk 如:mv at.doc abc.doc 如:mv kk.zip .kk.zip 表示隐藏文件 如:mv .kk.zip kk.zip 去除隐藏 24.tree 显示树状目录 25.du 看磁盘使用情况 26.mkfs 创建文件系统 如:mkfs –t ext2 /mnt/floppy格式化软盘13
  • 14. 三.VI 编辑器使用 1.是unix中vim增强版本 2.三种模式 A.命令模式(光标移动,字符删除等操作) B.输入模式(insert下写文件内容等操作) C.末行模式(保存退出,查找字符等操作) 3.命令模式常用命令 A.命令dd/ndd整行删除.如:5dd表示删除5行. B.命令yy/nyy整行复制.如:4yy表示从当前行起复制4行. C.命令p(小写)/P(大写)粘贴.p在光标所在行后,P在前粘贴. D.命令/查找字符命令.如:/free表示在文件中找free字符. E.命令.表示重复上一条命令. F.命令u表示撤销 G.命令:q退出不保存; :wq退出保存; !q强制退出不保存. 14
  • 15. H.命令:g/旧字符/s//新字符/g 表示文件中所有字符替换. 如: :g/root/s//abc/g 表示把文件中root用abc替换. I.命令:g/要删除的字符/s///g 表示删除文件中字符. 如: :g/abc/s//abc/g 表示把文件中abc字符全部删除. J.命令:s/旧字符/新字符/g 表示文件中当前行字符替换. 如: :s/abc/bcd/g 表示把文件中光标所在行的abc用bcd替换. K.命令 vi –o 文件1 文件2 表示同时显示两个文件. 如: vi –o a.txt b.txt (用ctrl+w切换两个文件窗口) L.命令 diff 文件1 文件2 表示比较两个文件的区别 M.pagedown /pageup 翻页显示文件中内容 N. ctrl +d 向前翻半屏 ctrl +u 向后翻半屏 ctrl +f 向前翻一屏 ctrl +b 向后翻一屏 小技巧:去除LINUX中乱码 方法:修改/etc/sysconfig/i18n,注释Zh_CN行,加一行LANG=“en_US” 小技巧:修改LINUX启动模式 方法:修改/etc/inittab文件,把“id:5:initdefault”中数字修改. 15
  • 16. 四.LINUX中文件权限管理 1.图例 drwx-rw-rx 2 root root 13 Apr… 权限标志 所有者 所属组 文件或目录相关信息 权限说明: 第一栏:区分目录/文件(d表目录;-表普通文件;l表连接文件 b或c表设备文件;s或p表管道结构) 第二栏:文件属主 第三栏:文件属组 第四栏:其它用户对目录/文件权限 注:其中2表示有几条路径到达此文件. 2.设置权限 格式:chmod u+rwx,g+rwx,o+rwx 文件 可以用数字表示,写权限(修改和删除)为2;读权限为4;运行权限为1. 如:chmod u+rwx,g+rx,o+rx a.txt 或:chmod 755 a.txt16
  • 17. 3.文件名颜色 A.绿色(可执行文件) B.白色(普通文件) C.深蓝色(目录) D.天蓝色(链接文件) E.黄色(设备文件) F.红色(软件包) 例1: touch a.txt 白色 chmod 775 a.txt 绿色 ln /etc/abc.txt 345 天蓝色(建立345为/etc/abc.txt快捷方式) 例2: vi a 写入netstat –nat chmod 777 a ./a 本例为编写的一个脚本(可执行文件) 17
  • 18. 4.更改文件属主 格式:chown 新用户名 目录/文件 例如: chown zhangs /etc/a.txt 表示修改/etc/a.txt属主为zhangs ll /etc 查看属主变为了zhangs 5.更改文件属组 格式:chgrp 新组名 目录/文件 例如: chgrp zhangs /etc/a.txt 表示修改/etc/a.txt属组为zhangs ll /etc 查看属组变为了zhangs18
  • 19. 6.几个重要的命令补充 (1)whoami 显示当前以哪个用户登录 (2)w 显示当前登录用户信息 (3)who 显示所有已登录用户信息 (4)last 查看曾经登录此系统用户和时间 (5)finger 查找并显示用户信 如:finger zhangs表示查看zhangs用户信息 (6)su 切换用户 (7)ntsysv 启动/关闭系统中的服务 (8)setup 设置系统运行参数 19
  • 20. 五.LINUX中用户账户管理 1.查看LINUX中用户 A.用户存放文件/etc/passwd 可通过cat /etc/passwd |more查看 B.格式 a : x : 501 : 501 ::/home/a : /bin/bash 用户名 口令 UID GID 主目录 登录shell(桌面) 注:UID 用户账户识别码 GID 组账户识别码 技巧:如果把普通用户的UID和GID改成与root用户的一样,那么此用户就 变成了管理员. C.查看账户的有效期限(/etc/shadow) a : $1$5xadadsad: 12867 :0: 99999:7: 用户 口令 改动时间 相隔天数 过期时间 D.查看账号所属组(/etc/group) a : x : 503 : zhangs 组名 口令 GID 组中成员20
  • 21. 注:LINUX中每当建立一个用户时,同时也建立一个同名的组,但是此用 户默认是不加入到此组中. 2.用户建立与删除等操作 (1)useradd /adduser 用户名 表示新建用户 (2)passwd 用户名 表示修改用户口令 (3)userdel 用户名 表示删除用户 (4)usermod –l 新用户名 旧用户名 表示修改用户名称 (5)usermod –L 用户名 表示锁定用户名 (6)usermod –U 用户名 表示解锁用户名 3.组的建立与管理 (1)groupadd 组名 表示新建组 (2)groupdel 组名 表示删除组 (3)groupmod 新组名 旧组名 表示修改组名称 (5)gpasswd –a 用户名 组名 表示把用户加入到组中 (6)gpasswd –d 用户名 组名 表示把用户从组中删除 21
  • 22. 六.修改LINUX下网络配置 1.修改IP地址 (1)ifconfig eth0 ip_address netmask net_mask 表示临时修改IP.系统重启将丢失. 如: ifconfig eth0 1.1.1.2 netmask 255.0.0.0 (2)/etc/sysconfig/network-scripts/ifcfg-eth0 表示IP配置文件,可以永久修改,但是改完后需重启network服务 (3)setup命令修改,改完后需重启network服务 (4)一个网卡绑定多个IP 如:ifconfig eth0:1 1.1.1.3 netmask 255.0.0.0 此方法也是临时修改. 如:复制配置文件ifcfg-eth0为ifcfg-eth0:1 此方法为永久修改 2.修改DNS地址 找到/etc/resolv.conf在其中加上:nameserver 218.104.78.3 22
  • 23. 3.ping/nslookup命令 4.scp 用于LINUX主机之间互联. A.在LINUX SERVER上启动SSH服务 B.在客户机上使用 scp LINUXSERVER IP:/目录/文件 /本地目录 表示把服务器上某一文件复制到本地目录 scp –r LINUXSERVER IP:/目录 /本地目录 表示把服务器上某一目录中所有文件与目录复制到本地目录中 ssh LINUXSERVER IP 登录到服务器上查看 5.关闭网卡 Ifconfig eth0 down 6.启用网卡 Ifconfig eth0 up 7.修改网卡物理地址 Ifconfig eth0 hw ether 00:E0:23:45:34:A1 8.重启网络服务 service network restart23
  • 24. 七.LINUX下系统软件包管理 1.tar包 命令:tar -c 创建一个新tar包 –v 显示运行过程信息 -f 指定文件名 -x 解开一个tar包 –z 调用zip –t 查看压缩包内容 -r 添加文件 例1:建立一个tar包 tar cvf aa.tar aa.txt (把aa.txt压缩到文件aa.tar中) 例2:解压一个tar包 tar xvf aa.tar 例3:建立一个tar.gz包 tar cvfz aa.tar.gz aa.txt 2.zip包 解压一个zip包:unzip a.zip 解压一个gz包:gzip –d a.gz 3.tar.gz包 解压一个tar.gz包:tar xvzf abc.tar.gz24
  • 25. 解压一个.tgz包:gunzip abc.tgz 解压一个tar.z包:tar xvzf a.tar.z 解压一个bz2包:bunzip2 b.txt.bz2 4.rpm包 (1)命名规则 abc-1.3.20-16.i386.rpm 注:1.3.20表示版本号 16表示发行次数 i386表示适用平台为intel x86 常见还有: sparc 指sparc 平台 alpha 指Alpha平台 src 指软件源代码 (2)常用命令参数 25
  • 26. 如果是:-i 表示安装指定的软件包 -v 显示安装时详细信息 -h 显示安装进程 例1:安装一个ab123.i386.rpm的软件包 rpm –ivh ab123.i386.rpm 例2:升级ftp软件包 rpm –U vsftpd 例3:删除一个软件包 rpm –e ab123.i386.rpm 例4:强行删除一个软件包 rpm –nodeps vsftpd 26
  • 27. 第一节: Telnet/SSH/VNC服务配置与应用 一.Telnet服务 1.telnet作用:远程控制一部计算机,可以操作其上软/硬件资源,就如同在本地一样. 2.查看服务是否安装 rpm –q telnet-server 3.修改主配置文件 vi /etc/xinetd.d/telnet 找到disable=yes所在行,将其改为: disable=no第三章:LINUX中服务27
  • 28. 4.允许root用户登录 系统默认普通用户可以远程登录,而管理员不可以. vi /etc/securetty 在文件的末行加一行:pts/0 5.telnet配置 (1)设置最大连接数 vi /etc/xinetd.d/telnet 在disable=no的后一行加上一行:instances=4.表示只允许4个用户同时连接. (2)修改连接端口(默认为23) vi /etc/services 把telnet 23/tcp和telnet 23/udp中端口改为自 定义的端口. 注:当改完端口后.用户连接时:telnet IP 端口号 6.从客户端登录 (1)在服务器上启动telnet服务. /etc/init.d/xinetd start (2)在windows客户端连接. 7.不安全,密码很容易被截获 介绍sniffer工具28
  • 29. 二.SSH服务 1.公钥体系结构 (1)采用非对称性算法 比如:B主机要得到数据,那么它就会以各种形式公开发布自己的公 钥,假如被A主机得到,这时A会再加上数据传输给B,这时B就用自己 的私钥进行解密,如果数据在传输的过程中被截获,其它用户没有私 钥也是访问不了数据的。 (2)SSH服务简介 它是代替TELNET进行远程管理,使用多种加密和认证方式,有效解决 传输中的安全问题。 (3)查看系统安装服务 rpm –q openssh-server (4)在客户端上使用F-SSH连接到远程服务器 2.SSH主配置文件(/etc/ssh/sshd-config) A.监听端口 #port 22 所在行,可以把默认的22改为其它端口 29
  • 30. B.协议顺序 #protocol 2,1 (SSH有两个版本) C.设置是否允许root用户登录 #permiRootlogin yes D.是否允许空口令用户登录 #permitEmptyPasswords no E.是否使用口令认证方式 #passwordAuthentication yes 3.SSH客户端 A.putty B.f-ssh 三.VNC服务 1.作用:远程通过WEB形式管理LINUX服务器 2.检查软件安装 rpm –q vnc-server 3.启动VNC服务 输入vncserver :端口号 注:如果输入1 那么客户端使用的端口就为580130
  • 31. 接着再输入:vncpasswd表示远程连接口令,口令会被保存到文件 /root/.vnc/passwd中. 启动服务后,一定要让iptables允许端口通过. 4.在客户机上测试 http://linuxserverIP:5801 注:如果配置正确,不能访问,客户机上要安装java的jre环境. 5.VNC多桌面号配置 vncserver :2 vncserver :3 等. 6.关闭桌面 vncserver –kill :1 vncserver –kill :2 7.启动/停止/重启VNC服务 /etc/init.d/vncserver start/stop/restart 说明:若客户端显示色彩不正常.修改/root/.vnc/xstartup文件,把最后一行中“twm”改为startkde(为KDE桌面)或gnome-session(为GNOME) 31
  • 32. 第二节:DHCP服务配置与应用 一.DHCP服务器的概述 1.用途:为网络中客户机分配IP服务,包含IP/网关/DNS等.减 轻管理员负担. 2.DHCP客户端获取IP过程 (1)发现DHCPDISCOVER (2)提供DHCPOFFER (3)请求DHCPREQUEST (4)确认DHCPACK 二.DHCP服务的安装 1.检查是否安装 rpm –q dhcp 2.若无下载安装32
  • 33. 三.DHCP服务的配置 1.把/usr/share/doc/dhcp-…/dhcpd.conf.sample文件复制到/etc下.且 重命名为dhcpd.conf文件. 2.配置 1)subnet...设置子网声明(如:声名一个子网192.168.185.0) 2)option subnet-mask...为客户端主机配置的子网掩码 3)option routers...为客户端主机配置默认的网关地址 4)option domain-name...为DHCP客户设置DNS域。(用于域环境,如: DHCP客户机为ABC,而这里设为XYZ.NET,那么客户机全名变 (ABC.XYZ.NET) 5)option domain-name-servers...为DHCP客户机配置DNS服务器IP地址 6)range dynamic-bootp...设置IP地址作用域 (192.18.0.1 192.168.0.20) 此作用域为:1至20 7)default-lease-time...默认租期(单位以秒算) 8)max-lease-time...DHCP客户端是长的地址租期 9)host 主机名 {hardware ethernet MAC地址; fixed-address IP地址; } 主要用于地址保留33
  • 34. 四.启动/停止/重启DHCP服务 /etc/init.d/dhcpd start/stop/restart 五. DHCP客户端 配置 1. LINUX客户端,通过setup命令来设置 2. Windows客户端,将IP改为自动 (ipconfig/renew/release) 思考:1.DHCP超级作用域如何实现? 2.DHCP中继代理如何实现?34
  • 35. 第三节:SAMBA服务配置与应用 一.samba的概述 1.简介:SMB(server message block服务信息块),是局域网上共享文件夹 /打印机的协议,由MICROSOFT公司与INTEL公司于1987年开发,通过SMB 协议,客户端应用程序可以在各种网络环境下读写服务器上文件。 还可以远程访问服务器上文件和打印机等资源。 2.samba服务简介 LINUX使用Samba来实现SMB协议,而WINDOWS主要通过NETBIOS,这样使得 相互访问 二.samba服务的安装查看 rpm –q samba 与 /etc/init.d/smb start/stop/restart重启服务等 三. Sambae服务的配置文件 1.配置文件:/etc/samba/smb.conf GLOBAL SETTINGS ...设置针对所有共享资源。 SHARE DEFINITIONS...设置针对共享目录,只对当前资源起作用。 35
  • 36. 2.相关密码文件 1)/etc/samba/smbpasswd...此文件原本不存在,当把linux 用户加到samba服务中就会产生,方法:smbpasswd -a linux用户 (添加用户到samba服务中) 2)/etc/samba/smbuser ...控制用户映射的作用. 四.samba服务的文件共享 1.全局参数 1)设置SMB服务器所属的群组名称或WINDOWS的域名可使用:“workgroup=服务器名称” 2)设置SMB服务器的简要说明:“ server string=服务器说明 ” 3)设置可访问SMB服务器的主机/子网/域,可使用: “ hosts allow=IP/主机名/域名” 如:hosts allow=xx,kk.edu,192.168.10. EXCEPT 192.168.10.10 4)设置SMB服务启动时将自动加载打印机: printcap name=/etc/printcap" 5)设置是否允许打印机配置文件中的所有打印机开机时自动加载:"load printer=yes" 6)设置GUEST用户:Guest account=pcguest 36
  • 37. 7)设置SMB服务器安全等级:security=选项 选项: A.share...当客户进入SMB服务器时不用输入账户与口令就可以访问资 源. B.user...当客户进SMB服务器时必须输入用户名与口令才能访问,否 则就被拒绝. C.server...与USER相以,但是密码验证由另一台SMB服务器来负责, 因此还必须设置口令服务器. D.domain...安全验证交给NT域控来完成. E.ads...把SMB服务器加入到WINDOWS活动目录,用WINDOWS DC 来验证. 8)设置SMB服务器同时当WINS服务器 wins support=yes wins server=w.x.y.z 2.共享目录 A、comment=目录说明. B、browseable=yes/no是否允许用户浏览所有人的主目录. C、writeable=yes/no是否允许写入个人的主目录.37
  • 38. 3.设置一个共享目录 例1:设置共享目录share,它的本地路径/home/share,只有share组用 户(安全等级为user) 可以读写此目录,tom用户只能读取. 方法:A.以root用户登录,建文件夹/home/share B.建立组share和用户share1,share2,tom 并且把用户share1,share2加入到组share gpasswd –a share1 share gpasswd –a share2 share C.把/home/share属组改为share chgrp share /home/share chmod 774 /home/share D.修改SMB主配置文件/etc/samba/smb.conf [share] comment = my smb path = /home/share read list = tom write list = @share 38
  • 39. 例2 设置一个共享文件夹abc,其本地路径为/www/xxx,允许所有用户都可 以读取. (安全等级为share) 方法:A.以root用户登录,建立一个文件/www/xxx B.修改本地权限,允许所有用户读取. chmod 775 /www/xxx C.修改SMB主配置文件 [abc] comment = my abc path = /www/xxx read only = yes public = yes 五.在WINDOWS下访问LINUX的SMB服务器 运行中输入:\\LINUXSERVER IP 或通过映射网络驱动器来完成 六.从LINUX访问WINDOWS文件服务器 mount –t smbfs –o username=WINDOWS中用户,password=口令 //WINDOW SERVER IP/共享名 /LINUX本地目录 如取消访问: umount //WINDOWS SERVER IP/共享名 39
  • 40. 第四节:NFS服务的配置与应用 一.NFS服务的概述 1.NFS(network file system),即网络文件系统,是使不同的计算机之 间能通过网络进行文件共享的一种网络协议,多用于UNIX/LINUX网络 系统中,一台NFS服务器就如同一台文件服务器,只要将其文件系统共 享出现,NFS客户端就可以挂载到本地系统中. 2.NFS:由SUN公司开发,采用客户机/服务器模式(类似于WINDOW要中文件 服务器) 3.NFS特点 可提高资源使用率,大省去本地硬盘空间. 二.NFS服务的安装 检查是否安装方法 rpm –q nfs-utils portmap 三.NFS服务器配置 1.exports文件的格式 (1)<输出目录>[客户端1|选项1、选项2…] [客户端2|选项1、选项2…] …40
  • 41. (2)客户端: A、192.168.16.20....指定的目标主机。 B、192.168.0/24(或写成:192.168.16.*)...指定一个子网。 C、pcl.abc.gov ...指定一个域名主机。 D、*.abc.gov …指定域名为 .abc.gov中的所有主机。 E、* ...指定所有的主机。 (3)选项: A.访问权限选项:用于控制输出目录访问权限,这类选项只有ro(输出目录为只读)和rw(输出目录为可读写)。 B.用户映射选项:默认情况下,当客户端访问NFS服务器时,若远程访问用户是root,则NFS服务器会将它映射成一个本地的匿名用户(为nfsnobody)并将它所属的用户组也映射成匿名的用户组 (nfsnobody)这样有助于提高系统的安全性。用户映射选项如下: 41
  • 42. all_squash …将远程访问的所有普通用户与所属用户组都映射为匿名用 户或用户组(nfsnobody) no_all_squash...不将远程用户进行映射. root_squash.... 将root用户与用户组都映射为匿名用户或用户组(默认) no_root_squash....不将root用户进行映射 anonuid=xxx...将远程访问的所有用户都映射为匿名用户并指定该匿名用户为本 地用户(uid=xxx). anongid..与上面相似,只是映射为本地用户组. C.其它选项: 作用:可用于对输出目录进行更全面的控制 secure ...限制客户端只能从小于1024的TCP/IP端口连接NFS服务器(默认设置) insecure ...允许客户端从大于1024的TCP/IP端口连接NFS服务 sync...将数据同步写入内存缓存区与磁盘中.(默认) async ...将数据先保存在内存的缓存区,必要时才写入磁盘中. wdelay...检查是否相关的写操作,如果有则将这些写操作一起执行这样提高效 率.(默认) no_wdelay...若有写操作,则马上执行与sync配合使用 subtree_check...若输出目录是一个子目录,则NFS服务器将检查目录的权限.(默 认) no_subtree_check...即使输出子目录.则NFS服务器不作检查父目录.(提高效率) 42
  • 43. 2.NFS服务配置实例 (1)打开主配置文件/etc/exports (2)内容 /nfs/wang9 192.168.185.0/24(rw,async) *(ro) 表示共享一个文件夹/nfs/wang9,可供子网192.168.185.0/24客户端访问,具有读写功能,其它子网只能读取。 /nfs/lx 192.168.16.20(rw,sync) 表示共享文件/nfs/lx,只允许192.168.16.20计算机可以访问,而且进行读写操作。 /nfs/root *.gov.net(ro,no_root_squash) 表示对于输出目录/nfs/root , gov.net域中的所有客户机是只读权限,并不将root用户映射到匿名(nfsnobody)用户。 /mnt/cdrom 192.1468.16.*(ro) 表示输出目录/mnt/cdrom,网段192.168.16.0/24子网均可以具有读取权限 。 注意:在设置权限时,不仅要考虑NFS的权限,还要考虑本地的权限。43
  • 44. 3.维护NFS服务的输出目录列表 每次改完/nfs/exports文件,重启服务可以用命令代替服务: exportfs -rv 重新输出共享目录 exportfs –auv 停止输出共享目录 四.启动/停止/重启NFS服务 (1)启动/停止/重启NFS与portmap服务 /etc/init.d/nfs start/stop/restart /etc/init.d/portmap start/stop/restart (2)检查portmap与NFS服务状态 /etc/init.d/portmap status /etc/init.d/nfs status (3)可以改ntsysv,让以上两个服务跟着系统一起启动。 五.测试NFS服务 1.检查输出目录所使用的选项 查看文件/var/lib/nfs/etab 可看到anonuid=-2,anongid=-2 实际上是65536-2=65534从而得出些用户账户与组账户为匿名用户, 再对照/etc/passwd和/etc/group文件可知,就是用户nfsnobody 44
  • 45. 2.使用showmount命令测试NFS服务器输出目录状态 格式:showmout [选项] NFS服务器名称或IP (1)查看当前主机中NFS服务器上所有输出的共享目录 showmount –e (2)显示当前主机中NFS服务器上被挂载的所有输出目录 showmount –d (3)显示指定的NFS服务器的所有客户端主机与其所连接的目录 showmount –a 六.NFS客户端的使用 1.客户端上查看NFS服务器上哪些共享目录 showmount –e NFS服务器IP 2.连接NFS服务器上共享资源 mount –t nfs NFS服务器IP:输出目录 本地挂载目录 如:mount –t nfs 192.168.185.186:/nfs/public /home/abc 3.断开NFS服务器 umount /home/abc 45
  • 46. 注:服务器中如果输出目录还在被使用,则先用exportfs –aux停止所有输出目录,然后才能正常关机 4.可设置自动连接 修改文件/etc/fstab文件 192.168.185.186:/nfs/public /home/abc nfs default 0 0 小技巧:改LINUX主机的名称 A.临时修改 在命令行中输入: hostname 新计算机名 重启后,还是原来的主机名称. B.永久修改 修改文件/etc/sysconfig/network 在“HOSTNAME=”后面输入新的计算机名。重启后生效。46
  • 47. 第五节:DNS服务配置与应用 一.DNS概述 1.DNS(domain name system)简介 (1)DNS域名空间 根域 COM CN EDU NET …. 顶级域 Ahgaoxin gov edu …. 二级域 tinghua …. 子域 www mail movies … 主机 (2)资源记录 将DNS域名映射到指定类型的资源信息,以便在名称注册和解析时使用. (3)DNS服务器 提供存储和应答资源记录的名称查询服务 (4)DNS客户端 用来查询DNS服务器,将域名称解析为查询中指定的资源记录类型. 2.DNS查询工作原理47
  • 48. (1)本地解析 查找本地缓存ipconfig/displaydns (2)查询DNS服务器 在本地无法解析时,将请求发送到DNS服务器,此时DNS服务器将: A.查找名称与本地区域信息中的相应资源记录匹配,则使用此信息来解析 查询的名称,作出应答,完成查询. B.若区域信息中没有查询的名称,则DNS服务器,会查询本地缓存,若有,则完成查询. C.若缓存,区域信息中都无,则使用递归方法来向其它DNS查询. 根服务器 DNS客户端 DNS服务器 COM等服务器 example.com 注:除了此种方式之外,还有一种迭代查询,DNS服务器给客户的是一个过程而不是一个结果。48
  • 49. 3.Bind简介 LINUX下架设DNS服务器通常使用Bind来实现,原先是由美国DARPA资助研究伯克里大学开设的一个研究生课题,后来变化成为世界上最为广泛的DNS服务器软件. 二.DNS服务的安装 1.检查 rpm –q bind 2.若无,则下载安装 三.安装chroot软件包(可选项,R9上默认是不安装的,RHL4默认安装) 作用:增强安全性. 当装好后,区域文件存放就不在是默认的/var/named下了. 而是需要在/var/named/chroot/var/named中配置. 四.配置主要名称服务器 1.主配置文件/etc/named.conf 2.注释行说明 //或#表示单行注释 /*与*/成对出现,可注释多行 49
  • 50. 3.设置根区域 /etc/named.conf (1)作用:当DNS进行递归查询时,DNS服务自身无法获得解析时,就会找根DNS服务器 (2)主配置文件/etc/named.conf Zone “.” { type hint ; file “named.ca”; }; 注:根区域用 “.”号来表示.全球根区域服务器,查看文件/var/named/named.ca 4.设置主区域 /etc/named.conf (1)作用:保存着某个区域的数据信息,将域名解析成IP (2)例: zone “example.com” { 容器指令zone后面指的是区域名称exaple.com type master; 指定主区域类型为主区域 file “example.com.zone”;主区域文件,存放主机名和对应IP等. allow-transfer{ 注明那些是辅助DNS服务器.当设置好后.主DNS会 192.168.1.177; 把自己的资源记录复制给指定的辅助DNS服务器. 192.168.7.17; }; };50
  • 51. 5.设置反向解析区域 /etc/named.conf (1)作用:将IP解析成域名 (2)例: zone “185.168.192.in-addr.arpa” { type master; file “example.com.local” ; allow-transfer { 192.168.1.177; 192.168.7.177; }; }; 注:意思与第4点相同. 如果不设置辅助DNS,则可以 allow-transfer{none;}; 51
  • 52. 6.正向区域文件 正向区域文件 /var/named/example.com.zone (1)什么是区域文件:包括主机名和对应IP, 刷新时隔和过期时间等 (2)例(以下时间单位为:秒) $ttl 38400 #定义允许客户端缓存来自查询的数据时间,实际配置中删除此行 @ IN SOA dns.example.com. Baikp.sohu.com. ( #授权主机定义 2005090503 年月日与修改次数 10800 为设置更新间隔时间(辅助DNS从主DNS) 3600 设置重试间隔 604800 设置过期时间(辅助DNS从主DNS) 38400 ) 同第一行. IN NS dns.example.com.设置名称名服器资源记录 dns.example.com. IN A 192.168.185.186 设置主机A记录 www.example.com. IN A 192.168.185.187 mail.sohu.com. IN A 210.107.89.4 xiaomao IN CNAME dns 设置别名 example.com. IN MX 10 mail.sohu.com.设置邮件交换记录.10为优先级.1最 高,数字越小,优先级越高. 52
  • 53. 7.反向区域文件 (1)反向区域文件 /var/named/example.com.local (2)例: $ttl 36000 实际配置中删除此行 @ IN SOA dns.example.com. Baikp.sohu.com ( 2005090503 10800 3600 604800 36000 ) IN NS dns.example.com. 186 IN PTR dns.example.com. 187 IN PTR www.example.com. 注:每行语句同第6点说明一样. 53
  • 54. 8.实现负载均衡功能 例:一家公司有三台内容相同的FTP服务器,IP分别为 192.168.0.1 192.168.0.2 192.168.0.3 现为了防止大家都访问到某一台的FTP服务器,而其它两台不被访问. 可在DNS中如下配置: ftp IN A 192.168.0.1 ftp IN A 192.168.0.2 ftp IN A 192.168.0.3 这样做的目的,就是客户端通过DNS解析时,每次DNS解析的都不一样,从而可以实现,客户端可以较平均地访问每一台FTP服务器。DNS服务器会顺序解析。 9.实现直接解析域名 (1)作用:因为有的人不喜欢写www.example.com 来访问站点.而是在地址栏中直接输入example.com访问. (2)方法:在正向区域文件中添加 example.com. IN A 192.168.185.187 或 . IN A 192.168.185.18754
  • 55. 10.实现泛域名的解析 (1)比如用户ping www.example.com 能实现解析,而输入 ping xxx.example.com 也能解析 (2)方法:在正向区域文件中添加 *.example.com. IN A 192.168.185.187 或 * IN A 192.168.185.187 11.名称服务器测试 (1)启动服务 /etc/init.d/named start (2)如果在本地测试要在/etc/resolv.conf文件中添加 nameserver 192.168.185.186 (3)使用nslookup测试 nslookup dns.example.com >set type=cname 测试别名 >set type=soa 测试超始授权机构 >set type=a 测试负载均衡 >set type=ns 测试名称服务器源记录 55
  • 56. 五.配置辅助名称服务器 1.作用:实现DNS容错与加快查询速度 2.在辅助DNS上/etc/named.conf中配置如下: directory “/var/named”; dump-file “/var/named/data/cache_dump.db”; statistics-file “/var/named/data/named_stats.txt”; zone “.” { type=hint; file “named.ca”; }; zone “example.com” { type slave; file “example.com.zone”; #复制的副本 masters {192.168.185.186;}; #指明从哪台主DNS处复制 }; zone “185.186.192.in-addr.arpa” { type slave; file “example.com.local”; masters {192.168.185.186;}; };56
  • 57. 六.配置缓存cache-only服务器 1.功能 本身无数据库,仅仅起代理功能,它除了把结果返回给客户外,还在自己的缓存中存放一份.在局域网中,建立这样一台DNS代理,可提高客户 机DNS查询效率,减少内网到外网流量. 2.配置方法 /etc/named.conf 找到语句 option { …..}; 仅在其中加上几行 forwarders { 218.104.78.2; 218.104.78.3; }; 3.在客户端测试(把客户端DNS改为192.168.185.186,也可以上网) 七.启动/停止/重启 DNS服务器 1./etc/init.d/named start/stop/restart 2.在防火墙中允许DNS包通过(走UDP的53端口) iptables –I INPUT –p udp –dport 53 –j ACCEPT iptables –I INPUT –p tcp –dport 53 –j ACCEPT 57
  • 58. 第六节:FTP服务器配置与管理 一.概述 1.LINUX实现FTP服务常用有: VSFTP WU-FTPD PROFTP 等 2.Vsftp系统安装时自动安装 3.Vsftp登录方式 (1)anonymous 匿名 (2)real 真实账户 (3)guest 虚拟账户 二.检查系统安装情况 rpm –qa|grep vsftpd 三.常用命令 (1)ftpwho 查看登录用户 (2)ftpcount查看连接名 (3)ftpshut –l 8 –d 5 2200 “this ftp going down at %s”58
  • 59. 说明: 以上参数表示:在关机前8分钟不准新用户登录,关机前5分钟会把目前 已经登录用户断开,并且在22点关闭FTP服务. 也可以:使用ftpshut now 立即关闭FTP服务. 四.主配置文件 /etc/vsftpd/vsftpd.conf anonymous_enable = yes 表示允许匿名用户(anonymous)登录; local_enable = yes 表示允许本地用户登录; write_enable = yes 表示允许本地用户具有写的权限; local_umask = 022 设置本地用户的文件生成掩码为022,默认为077; 文件写入格式(二进制等) anon_mkdir_write_enable = yes 允许匿名用户具有写的权限; dirmessage_enable = yes 激活上传/下载日志,当远程用户更改时提示; ascii_download_enable = yes 允许用户用ascii格式来上传/下载文件; ftp_banner = welcome to you! 用户登录时提示欢迎词; userlist_enable = yes 用户列表是否启用(当前为启用); 注:当用户加入到/etc/vsftpd.ftpusers文件时,用户将不能访问FTP服务. 59
  • 60. 五.实例配置 /etc/vsftpd/vsftpd.conf anonymouse_enable = yes local_enable = yes write_enable = yes local_umask = 022 xferlog_enable = yes connect_from_port_20 =yes xferlog_file = /var/log/vsftpd.log xferlog_std_format = yes pam_service_name = vsftpd userlist_enable = yes 启用用户列表,那么列表中用户不能访问FTP listen = yes tcp_wrappers = yes max_clients = 100 并发100个用户 max_per_ip = 2 每个用户同时下载线程数为2 anon_max_rate = 20000 匿名用户下载速度为20kbps local_max_rate = 200000 本地用户下载速度为200kbps listen_port = 5566 把系统默认的21端口改为5566 chroot_local_user = yes 不允许用户访问除自己宿主以外的目录 ftp_banner = welcome to wang11 60
  • 61. ascii_upload_enable = yes ascii_download_enable = yes 采用ASCII传输数据 重要说明: 若想禁一些IP的匿名用户访问 A.改/etc/vsftpd/vsftpd.conf 文件 改: tcp_wrappers = yes B.改/etc/hosts.allow 文件 加: vsftpd:218.105.15.12:DENY vsftpd:41.12.49.75:DENY 表示不允许上面两台主机的IP访问FTP服务. 六.客户端连接 1.在IE中输入 ftp://ftpserver ip 若在主配置文件中修改了端口,那么应 ftp://ftpserver ip:端口号61
  • 62. 2.在cmd模式下 进入FTP服务: ftp ftpserverIP 命令: (1)mkdir 目录名 表示建立目录 (2)put 文件 表示上传文件到FTP服务器上 (3)get 文件 表示下载文件到本地文件夹中 (4)rmdir 目录名 表示删除远程FTP服务器上目录 (5)rename 文件名 新文件名 表示修改FTP服务器上文件名称 (6)mdelete 文件 表示删除远程FTP服务器上文件 (7)pwd 表示查看当前处在什么位置 (8)cd 目录 表示进入远程FTP服务器中的一个目录 (9)close 中断与远程FTP服务器会话 (10)quit 退出FTP服务器 (11)mput 上传多个文件 ex: mput *.jpg 表示上传扩展名为jpg的所有文件到FTP服务器中 (12)mget 下载多个文件 ex: mget *.mp3 表示下载扩展名为mp3的所有文件到本地计算机 ex: mget *.* 表示下载所有文件到本地计算机 62
  • 63. (13)open host[port] 表示建立FTP服务器,可指定端口 (14)dir / ls 显示当前目录下文件与目录 (15)help 查看帮助文件 ex: help get (16)delete 文件 表示删除远程主机文件 (17)status 显示当前FTP服务器状态 (18)send 文件 表示把本地文件上传到FTP服务器中,同put命令.63
  • 64. 第七节:WEB服务配置与应用 一.WEB服务概述 1.HTTP协议:超文本传输协议,使用的端口号为80 2.WEB服务:采用客户/服务器模型,用于解释和显示WEB页面,响应用户输 入请求,并通过HTTP协议将用户请求传递给WEB服务器. 服务种类:A.静态WEB服务,用户可能浏览页面不可修改,除网页编辑 人员利用编辑工具修改. B.动态WEB服务,实现浏览器和服务器之间数据交互. 3.WEB服务工作原理 客户端使用HTTP发请求 WEB客户端与服务器建立连接 服务器查找到文档后将文档回传给客户 (WEB客户端) (WEB服务器) 客户端通过浏览器显示文档 客户端关闭与服务器连接 64
  • 65. 二.Apache服务器 1.由illinois大学开发,至2005年10月,市场占有率为69.89%而IIS只有20.55% 2.名字的由来,为记念名为Apache(印地安语)的美洲印第安从土著人的一 支,他们拥有高超作战.策略和无穷的耐性. 三.Apache服务器的安装 1.查看 rpm –q httpd 2.测试 (1)启动服务 /etc/init.d/httpd start (2)在客户端上的IE中通过APACHE服务器的IP测试 四.Apache服务的基本配置 1.httpd.conf配置文件组成部分 (1)全局变量(Global Environment) (2)主服务器配置(main server configuration) (3)虚拟主机(virtual host) 2.WEB服务器的基本配置 (1)设置主目录的路径 DocumentRoot “/var/www/html” 系统默认为/var/www/html如果你发布的网站 65
  • 66. 不是在此目录下,可以改成你自己的发布目录,就可以. (2)设置默认文档 DirectoryIndex index.html index.html.var 如果你发布的网页扩展名为htm或php等,可以在其后加一句如: index.php index.htm (3)设置Apache监听的IP地址和端口号 Liten 80 如果你发布的网站想别人通过其他端口访问,那么在此处修改.比如想别 人通过6622端口访问到你的站点.可以写入: liten 192.168.185.183:6622 这时客户端再访问时就要: http://192.168.185.183:6622这样访问. (4)设置相对根目录的路径 ServerRoot “/etc/httpd” 通常用于存放日志文件,其中有conf与logs 两个文件夹. (5)设置日志文件 A.错误日志 Errorlog logs /error_log B.访问日志 Customlog logs /access_log combined 66
  • 67. (6)设置管理员E-MAIL ServerAdmin baikp@sohu.com (7)设置服务器主机名称 ServerName 192.168.85.183:80 (若有域名,也可以写域名) (8)设置默认字符集 AddDefaultCharset UTF-8 默认为西欧UTF-8,若网页中中文无法显示,则把其改为GB2312 3.创建虚拟目录 (1)不包括在Apache主目录中,访问方法 http://Apache server IP/别名 (2)优点 A.便于访问,比真实目录路径要短 B.能灵活加在磁盘空间 C.安全性好 D.便于移动站点目录 67
  • 68. (3)例如 创建名为/down的虚拟目录,它对应的物理路径为/soft/abc 方法: Alias /down “/soft/abc/” 4.设置虚拟目录相对应的权限 (1)语句 (2)例如 Alias /down “/soft/abc/” options Indexes Multiviews Allowoverride None Order allow,deny Allow from all 注解: A.Indexes 表示允许目录浏览.68
  • 69. Multiviews表示允许内容协商的多重视图,如:在地址栏中输入以下内容 http://192.168.185.183/icons/a这时会显示出此目录下所有a.*的文 件,而不是出现一个出错信息. B.Allowoverride None 定义对于此目录的访问控制为所有人都能访问, 还是通过密码验证才可访问.当前设置为None表示无需密码验证. C.Order allow,deny表示允许所有客户机都可以访问. 相关案例: Order deny, allow Deny from 192.168.185.14 Deny from xx.com 表示仅禁用xx.com域名的主机与192.168.185.14的客户机不允许访问. Order allow, deny Allow from 192.168.1.0/24 Deny from 192.168.1.5 表示仅允许来自网络192.168.1.0/24,但192.168.1.5除外的主机访问.69
  • 70. 5.用户认证 (1)作用:仅允许合法用户才可访问网络系统资源使用 (2)例如 有一个虚拟目录名为myserver。真实物理位置为/xl/myserver,现需要 用户认证,只允许用户名为kkk与ooo才能访问。 方法: A.建立密码文件: htpasswd -c /etc/httpd/mypasswd kkk htpasswd /etc/httpd/mypasswd ooo 说明:只有第一次加KKK时要创建文件,再加OOO时文件已存在,就不用 再用参数-C了.否则会又重建一个文件把KKK用户就删除了. B.建立虚拟目录并配置用户认证,在httpd.conf中,语句如下: Alicas /myserver "/xl/myserver/“ 设置虚拟目录 AuthType Basic 认证类型 AuthName “This is kkk&ooo login:” 登录提示 AuthUserFile /etc/httpd/mypasswd 密码文件存放位置 Require user kkk ooo 允许哪些用户访问 70
  • 71. C.测试 a.重启服务 /etc/init.d/httpd restart b.在客户端输入:http://192.168.185.183/myserver 这时会弹出对话框。要求输入密码,否则不能访问。 6.虚拟主机的配置 (1)虚拟主机的概述 A.随着网络发展,不能仅局限于“每站一机”,可以把一台真正的主机分成许多“虚拟”的主机,每台虚拟主机都具独立域名与IP,具有完善的WEB功能。 B.优点 a.节约投资 b.节约维护费用 c.拥有更加稳定的性能 (2)基于IP地址的虚拟主机 A.作用:基于此类虚拟主机,给服务器绑定多个IP,然后配置Apache。把多个网站绑定在不同的IP上,通过访问不同的IP可得到不同的网站。 71
  • 72. B.例如(注:在/etc/httpd/conf/httpd.conf最后添加) 服务器有192.168.16.201和192.168.16.202两个IP,现在用这两个IP 创建2台虚拟主机,每台主机对应不同的主目录.配置如下: ServerName 192.168.16.201:80 ServerAdmin admin@sohu.com DocumentRoot “/www/v1“ #主目录首页位置 DirectoryIndex index.html #首页的名字,如:index.asp等 ErrorLog logs/v1/error_log #错误日志路径 CustomLog logs/v1/access_log combined #访问日志路径 ServerName 192.168.16.202:80 ServerAdmin admins@sohu.com DocumentRoot “/www/v2“ #主目录首页位置 DirectoryIndex index.asp #首页的名字,如:index.html ErrorLog logs/v2/error_log #错误日志路径 CustomLog logs/v2/access_log combined #访问日志路径 72
  • 73. (3)基于域名的虚拟主机 A.作用:利用DNS服务器多个主机地址A资源记录,使它们解析到同一个IP 地址上,但是得到的网站是不同的. 如: www.abc.com IN A 192.168.16.201 www.xyz.com IN A 192.168.16.201 B.例如:假设IP为192.168.16.201在DNS中的两个域名映射到此IP上,现使用这两个域名,分别创建两台虚拟主机,每台虚拟主机都对应不同的主目录.配置如下(注:在/etc/httpd/conf/httpd.conf最后添加) NameVirtualHost 192.168.16.201 ServerName www.abc.com:80 ServerAdmin web1@sohu.com ServermentRoot "/www/x1“ DirectoryIndex index.html ErrorLog logs/x1/error_log CustomLog logs/x1/access_log combined NameVirtualHost 192.168.16.201 73
  • 74. ServerName www.xyz.com:80 ServerAdmin web2@sohu.com ServermentRoot "/www/x2“ DirectoryIndex index.asp ErrorLog logs/x2/error_log CustomLog logs/x2/access_log combined 五.启动/停止/重启web服务 1./etc/init.d/httpd start/stop/restart 或者 service httpd start/stop/restart 2.可以让此进程跟系统一起启动,通过命令ntsysv 3.允许通过防火墙: iptables -I INPUT -p tcp --dport 80 -j ACCEPT 重要说明:如果启动出现问题,那么修改文件/etc/hosts文件 把其中的localhost.localdomin 改为自己的计算名.74
  • 75. 六.CGI运行环境配置 1.概念:CGI为通用网关接口,用于连接网页和WEB服务器,应用程序的接 口,因为传统的html为静态,难以完成访问数据一类操作,因为很 多一些网页编程都配置了CGI,所以在LINUX下要搭建这样的平台 让其运行. 2.作用:可实现处理网页表单,数据库查询,发送电子邮件等工作,为交 互式,支持动态网站。 3.CGI输入输出环境 能编写CGI的工具有perl、c、c++、java其中perl最为简单,可以在 linux下通过 rpm –q perl来检查是否安装。 4.设置CGI文件目录权限与标明CGI程序文件类型 方法:修改httpd.conf文件 (1)找到“#AddHandler cgi_script.cgi”语句,去掉前面的注释 改为: AddHandler cgi_script.cgi .pl (2)找到 这一行 修改如下:75
  • 76. #表示发布的含CGI的网站存放位置 Allow override None options ExecCGI -Indexes #加上的Indexes允许目录浏览 Order allow deny #设置访问权限所有都可以访问 Allow from all 5.测试CGI运行环境 (1)在/var/www/myweb中建立一个名为index.cgi的首页 通过VI在其中写入: #!/usr/bin/perl print “content-type:text/html\n\n”; print “Hello World!\n”; (2)对index.cgi授权给所有人有运行权限 方法:chmod +x /var/www/myweb/index.cgi (3)在客户端测试 http://WEBSERVERip/index.cgi 就能看到结果 Hello World76
  • 77. 七.PHP运行环境的配置 1.概述:为一种HTML内嵌式语言,语法风格类型似于C语言,支持几乎所有 流行的数据库和操作系统,类似于MICROSOFT的ASP 2.特点 (1)跨平台 (2)嵌入HTML (3)支持各种数据库 (4)支持图象处理 3.PHP解释器的安装 检查当前系统是否安装 rpm –q php 若无,则需要下载安装 4.设置apache支持PHP的扩展名 方法:找到 DirectoryIndex index.html index.html.var index.php 上一行中加上一个index.php即可. 5.测试 (1)在/var/www/html中建立一个文件为index.php通过VI写入 (2)在客户端测试 http://LinuxSERVERip/index.php就能得到测试页77
  • 78. 第八节:电子邮件服务的配置与应用 一.电子邮件服务的概述 1.电子邮件服务 (1)在INTERNET上超过30%的业务量,仅次于WWW服务 (2)快速与经济 2.电子邮件系统 (1)用户代理:就是用户与电子邮件系统的接口,目前主流有outlook和foxmail等. (2)邮件服务器:主要用于发送和接收邮件 (3)电子邮件使用协议 A.SMTP协议:帮助每台计算机在发送或中转信件时找到下一个目的地; B.POP3协议:允许从服务器上把邮件存储到本地主机; C.IMAP4协议:与POP3一样,但使用的广泛度不如POP3. 3.电子邮件工作原理 画图说明sina邮件服务器与sohu邮件服务器的工作流程,并且说明两台 邮件服务器之间怎么实现邮件转发的功能(DNS邮件交换记录)78
  • 79. 4.主流电子邮件服务器软件 (1)sendmail 安全性差,不适合较大的负载 (2)postfix 在易于管理,安全性,快速等方面都较好 (3)qmail 复杂性强,有较高的安全性. 二.Postfix邮件服务的安装 (1)检查是否安装 rpm –q postfix (2)停止sendmail A./etc/init.d/sendmail stop B.检查是否停止了 chkconfig sendmail off (3)DNS配置要完好 三.postfix邮件服务器的配置(实现SMTP) 1.postfix服务的基本配置 /etc/postfix/main.cf (1)设置主机名与域名 myhostname = baikp.wang9.edu mydomain = wang9.edu 79
  • 80. (2)设置主机寄出邮件所使用的域名或主机名称 myorigin = wang9.edu (3)设置postfix服务监听的网络接口 inet_interface = all 表示允许从网络任何端口发过来的邮件 (4)设置可接收邮件的主机名称或域名 mydestination = $mydomain,$myhostname mydestination = $myhostname ftp.$mydomain(相对上一行的第三行) (5)设置可转发哪些网络的邮件 mynetworks = 192.168.185.0/24,192.168.186.0/24 (6)设置可转发哪些网络域的邮件 relay_domains = wang9.edu 当然,实现不同域名的邮件转发,还要在DNS中设置邮件交换记录. 2.修改/etc/postfix/master.cf文件 找到: smtp inetn -n --smtpd 把此前的注释去掉. 3.测试SMTP telnet baikp.wang9.edu 25 退出用quit 80
  • 81. 四.POP和IMAP服务的实现 1.dovecot服务的实现 (1)检查是否安装 rpm –q dovecot (2)dovecot基本配置 /etc/dovecot.conf 修改1: protocols = imap imap3 pop3 pop3s 方法是先去掉前面的注释,然后再添加 修改2:在其中加一行 auth_passdb = shadow 2.启动服务 /etc/init.d/dovecot start chkconfig –level 345 dovecot on (设置跟随系统一道启动) 3.测试 telnet baikp.wang9.edu 110 退出用quit 五.邮箱与邮件管理—cyrus-imapd服务实现 1.检查是否安装此服务 rpm –qa|grep cyrus-imapd81
  • 82. 2.装好后检查以下几个文件看是否存在 /etc/sysconfig/cyrus-imapd /etc/cyrus.conf /etc/imapd.conf 3.启动服务 service cyrus-imapd start chkconfig cyrus-imapd on 4.用户邮件信箱管理 A.首先为cyrus邮箱管理员加设口令 passwd cyrus B.使用cyradm管理工具为用户创建邮箱 /usr/lib/cyrus-imapd/cyradm –u cyrus localhost 登录 createmailbox user.xiaok.send 建立发件箱 createmailbox user.xiaok.trash 建立垃圾箱 createmailbox user.xiaok.drafts 建立草稿箱 注:createmailbox也可以用cm代替 setquota user.xiaok 5210 设置用户xiaok邮箱大小5210KB 注:可以通过 listquota user.xiaok查看用户对邮箱的使用情况. 或: su –l cyrus –c /usr/lib/cyrus-imapd/quota查看邮箱情况82
  • 83. C.管理员删除用户邮箱 setacl user.xiaok cyrus all (先授权) deletemailbox user.xiaok (再删除) 六.通过客户端软件收发电子邮件 1.通过OE收发 2.通过FOXMAIL收发 七.SMTP认证(反垃圾邮件) 1.目的:根据管理员的定义来转发邮件,而不能让邮件服务器盲目转发,常 利用cyrus SASL认证机制来完成. 2.安装cyrus-SASL认证包 (1)检查当前系统安装情况 rpm –qa|grep sasl (2)查看cyrus-SASL v2 所支持的密码验证机制 saslauthd –v (常见有getwent kerberos5等) (3)测试cyrus-SASL V2 的认证功能 83
  • 84. A.看saslauthd进程是否运行 ps aux |grep saslauthd B.如果没有,则要启动服务  /etc/init.d/saslauthd start C.用下列命令测试认证功能  /usr/sbin/testsaslauthd –u zhangs –p ‘123456’  通过测试用户zhangs是否认证成功. (4)设置postfix启用SMTP认证   对/etc/postfix/main.cf主配置文件修改,在最后加下列语句: smtpd_sasl_auth_enable = yes 启用SMTP认证 smtpd_sasl_local_domain = ‘’ 版本不作设置 smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_ authenticated,reject_unauth_destination对收件人地址过滤 broken_sasl_auth_clients = yes  smtpd_client_restrictions = permit_sasl_authenticated smtpd_sasl_security_options = noanonymous 84
  • 85. (5)测试postfix是否启用SMTP认证 A.重启postfix服务 /etc/init.d/postfix restart B.查看文件/usr/lib/sasl2/smtpd.conf文件 pwcheck_method:saslauthd C.测试 telnet baikp.wang9.edu 25 再输入: EHLO 163.com 这时会出现250 –AUTH DIGEST-MD5这一行,表示已经进行的认证. 八.使用postfix实现虚拟别名域的配置 1.作用:使用虚拟别名域,可以将发给虚拟域的邮件实际地投递到真实域 的用户邮箱中. 2.实例 例一:如果要将发送给虚拟域@dzxx.cn的邮件实际投递到真实域@wang9.edu,那么实现方法如下:85
  • 86. A.修改文件/etc/postfix/main.cf 找到以下两行改为: Virtual_alias_domains = dzxx.cn #如有多个别名中间以逗号分开 Virtual_alias_maps = hash:/etc/postfix/virtual B.修改文件/etc/postfix/virtual 到最后一行输入: @dzxx.cn @wang9.edu #前面输入为虚拟域名,后面为真实域名 C.在修改完以上文件后,使用下面两条命令,使其生效 postmap /etc/postfix/virtual postfix reload 例二.如果要将发送给虚拟域中某个虚拟用户(或组)的邮件,实际投递到 本地真实域邮件服务器中,还再发送到这个用户账户INTERNET邮箱 中,那么实现的方法如下: 86
  • 87. A.修改文件/etc/postfix/main.cf 找到以下两行改为: Virtual_alias_domains = abc.com #如有多个别名中间以逗号分开 Virtual_alias_maps = hash:/etc/postfix/virtual B.修改文件/etc/postfix/virtual 到最后一行输入: admin@abc.com xiaok #前面输入为真实用户xiaok的虚拟域名,后面 为真实域名xiaok. aa@abc.com xiaok,xiaow,xiaol #表示给虚拟用户aa@abc.com发邮 件,后面真的用户都能收到邮件. aa@abc.com xiaok,baikp@sohu.com #表示给虚拟用户aa@abc.com发邮件,真的用户xiaok能收到,同时通过转发到INTERNET上的邮箱. C.在修改完以上文件后,使用下面两条命令,使其生效 postmap /etc/postfix/virtual postfix reload 87
  • 88. 九.使用postfix实现用户别名的配置 1.作用:实现群组邮递(也称邮件列表)功能,通过它可将发送给某个别名 邮件地址,转发到多个真实用户邮箱中. 2.实例: 例一:假如班级中每个同学在邮件服务器中都有一个真实的邮箱账号,现 在发信件给每位同学,可以实现如下: A.修改文件/etc/postfix/main.cf 找到以下两行改为: alias_database = hash:/etc/aliases alias_maps = hash:/etc/aliases B.修改文件/etc/aliases 到最后一行输入: xiaoxiao : xiaok,xiaow,xiaol #前面为别名,后面为多个真实域名 C.在修改完以上文件后,使用下面两条命令,使其生效 postalias /etc/aliases postfix reload 88
  • 89. 例二.某用户在本地邮件服务器中有一个用户账户为zhangs,并且他在 INTERNET上也有一个邮箱baikp@sohu.com,现为此用户设置一个别 名baby,当给别名发邮件时,本地邮件服务器能收到.而也发送到 INTERNET邮箱中一份.方法: A.修改文件/etc/postfix/main.cf 找到以下两行改为: alias_database = hash:/etc/aliases alias_maps = hash:/etc/aliases B.修改文件/etc/aliases 到最后一行输入: baby : zhangs,baikp@sohu.com #前面为别名,后面zhangs真实名 C.在修改完以上文件后,使用下面两条命令,使其生效 postalias /etc/aliases postfix reload89
  • 90. 重点补充:邮件交换记录在DNS中配置 A.本地邮件服务器DNS配置正确.而且能联入INTERNET B.在DNS中的zone文件中加下如下: mail.sohu.com IN A 61.135.132.99 wang9.edu IN MX mail.sohu.com 上述表示让本地的邮件服务器在收到扩展名为sohu.com的邮件,会自动转 发到mail.sohu.com的邮件服务器上. 十.小松鼠电子邮件客户端的实现 1.WEB形式(squirrelmail小松鼠网页电子邮件系统) 2.检查安装情况 rpm –q | squirrelmail 3.配置 /etc/squirrelmail/config.php (1)打开配置界面 /usr/share/squirrelmail/config/conf.pl (2)选择D,在command>>后面输入d,则进入指定的IMAP服务的预设置,在输入IMAP服务名称时,输入cyrus 90
  • 91. (3)在下面菜单中输入数字1,进入子菜单,然后选择6,进入到 [en_US]:在后面输入zh_CN,表示修改语言为简体中文. (4)再返回主菜单,选择2,再选择1,进入Domain.localhost将其改为 wang9.edu (5)同上,再选择3,把sendmail or SMTP改为SMTP (6)返回主菜单,选择4,然后选择1,把iso-8859-1改为gb2312 退出保存 (7)在APACHE中建立一个虚拟目录 Alias /webmail/ /usr/share/squirrelmail 再授权 (8)客户端测试 http://LINUX IP/webmail/ 就能得到界面,然后再登录到邮件服务器 小技巧:启动脚本,可以放在/etc/rc.d/rc.local中91
  • 92. 第九节:iptables防火墙与NAT服务 一.防火墙的概述 1.简介 (1)设置在不同的网络或网络安全域之间的一系列部件的组合,它能增强机构内部网络的安全性 (2)通过审查经过每一个数据包,判断它是否有相匹配的过滤规则,根据规则先后顺序一一进行比较,直到满足其中的一条规则为止,然后依据控制机制做出相应的动作,若都不能满足,则将数据包丢弃,从而保护网络安全。 (3)可以是一台路由器,也可以是一台或一组主机构成,它通常被放置在公共网络入口处,所有内部外部网络通信数据包都必须经过防火墙,接受检查,只有符合安全规则的数据才允许通过。 (4)使用防火墙实现功能 A.可以保护易受攻击的服务 B.控制内外网络之间网络系统的访问 C.集中管理内网的安全性,降低管理成本 D.提高网络保密性和私有性 E.记录网络使用状态,为安全规划和网络维护提供依据.(根据图示讲解) 92
  • 93. 2.防火墙的分类 (1)包过滤防火墙 优点:速度快; 缺点:一旦被攻破,对数据包源/目标地址与IP端口很容易伪造,常见有 “IP地址欺骗”. (2)代理服务型防火墙 优点:用户请求访问某站点,代理服务器就会替用户去那个站点取回所 需信息,再转发给用户,相对前面的防火墙,要安全很多. 缺点:速度较慢 二.iptables简介 是一款免费的软件,可代替高价的防火墙解决方案,完成封包过滤,封包重定向和网络地址转换NAT功能等. 三.iptables基础 1.规则(rules):网管预定义条件,一般定义为“若包头符合这样的条件,就这样处理这个数据包”,这些规则分别指定了源地址、目标地址,传输协议(如:TCP UDP ICMP)和服务类型(如:HTTP FTP SMTP)等,当数据包与规则相匹配时,IPTABLES就根据规则所定义的方法来处理这些数据包,如放行(ACCEPT)、拒绝(REJECT)和丢弃(DROP)等,配置防火墙主要工作就是添加、修改和删除这些规则。 2.链(chains):是数据包传播路径,每一条链其实就是众多规则中的一个检查清单93
  • 94. ,每一条链中可以有一条或多条规则,数据包到达一个链时,然后从此链中 第一条规则开始检查. 3.表(tables):提供特定的功能,iptables内置了三个表 (filter/nat/mangle),分别用于实现包过滤、网络地址转换和包重构的 功能。 (1)filter表:主要用于过滤数据包,该表根据系统管理员预定义的一 组规则过滤符合条件的数据包,对于防火墙而言,主要利用在此表中指 定一系列规则来实现对数据包进行过滤操作,此表也是IPTABLES默认的 表,IPTABLES也是使用此表执行所有的命令,此表含了INPUT链(处理进 来的包),FORWARD链(处理转发的数据包)和OUTPUT链(处理本地生成 的包),在此表中只允许对数据包进行接受、丢弃的操作,而无法对数 据包进行更改。 (2)nat表:主要用于网络地址转换,可以实现一对一、一对多、多对 多等转换工作,IPTABLES使用此表实现共享上网功能,nat表含有 PREROUTING链(修改将要到来的数据包)、OUTPUT链(修改在路由前本 地生成的数据包)和POSTROUTING链(修改将要出去的数据包)。94
  • 95. (3)mangle表:主要用于对指定的包进行修改,因为一些特殊应用可能 需要去改写数据包的一些传输特性,如:TTL等 4.iptables传输数据包的过程 进入数据包 输出数据包 PREROUTING链 FORWORD链 POSTROUTING链 转发 进入本地 INPUT链 内部处理过程 OUTPUT链 四.关闭系统防火墙 1.iptables命令格式 iptables [-t 表] – 命令 匹配 操作 (1)表选项 用于指定命令应用于哪个iptables内置表,共有filter/nat/mangle表 (2)命令选项:用于指定iptables执行方式,有插入/删除/添加规则等95
  • 96. 命令 说明 -P 或 --policy<链名> 定义默认策略 -L 或 --list<链名> 查看IPTABLES规则列表 -A 或 --append<链名> 在规则列表最后一行增加1条规则 -I 或 --insert<链名> 在指定位置插入1条规则 -D 或 --delete<链名> 从规则列表中删除1条规则 -R 或 --replace<链名> 替换规则列表中的某条规则 -F 或 --flush<链名> 删除表中所有规则 -Z 或 --zero<链名> 将表中数据包计数器/流量计数据归零 (3)匹配选项:指定数据包与规则匹配所应具有的特征,包括源地址/目的地址/传输协议和端口号等. 96
  • 97. 匹配 说明 -i或 --in-interface<网络接口号> 指定包从哪个网络接口进入 -o或 --out-interface <网络接口号> 指定包从哪个网络接口输出 -p或 --proto协议类型 指定数据包匹配的协议 -s或 --source<源地址或子网> 指定数据包匹配的源地址 --sport<源端口号> 指定数据包匹配的源端口号,可用“起始端口:结 束端口”的格式指定一个范围 -d或--destination<目标地址或子网> 指定数据包匹配的目标地址 --dport<目标端口号> 指定数据包匹配的目标端口号,可用“起始端口: 结束端口”的格式指定一个范围 (4)动作选项:指定当数据包与规则匹配时,应该做什么操作 97
  • 98. 动作 说明 ACCEPT 接受数据包 DROP 丢弃数据包 REDIRECT 将包重新转向到本机或另一台主机的某个端口,通常用此实 现透明代理或对外开放内网的某些服务 SNAT 源地址转换,可改变数据包源地址 DNAT 目标地址转换,可改变数据包目标地址 MASQUERADE IP伪装,只能用于ADSL的NAT LOG 日志功能,为排错 2.iptables的使用 (1)定义默认策略 当数据包不符合链中任一条规则时,iptables将根据此链预先定义的默认 策略来处理数据包,默认策略定义如下: 格式:iptables [-t 表名] <-p> <链名> <动作> 98
  • 99. 说明:A.默认为filter表,可指定到nat或mangle中 B. <-p> 定义默认策略 C.<链名> 指默认策略将应用于哪个链,可使用 INPUT/OUTPUT/FORWARD D.<动作> 将包处理情况 例一:将filter表INPUT链的默认策略定义为接受数据包 iptables –P INPUT ACCEPT 例二:将nat表OUTPUT链默认策略定义为丢弃数据包 iptables –t nat –P OUTPUT DROP 小技巧:对没有配置规则的用户,先拒绝所有数据包,然后再根据需要 对一些包放行。 方法: iptables –P INPUT DROP iptables –P FORWARD DROP iptables –P OUTPUT ACCEPT99
  • 100. (2)查看iptables规则 格式: iptables [-t 表名] <-L> [链名] 如:查看nat表所有链的规则 iptables –t nat –L (3)增加/插入/删除/替换规则 格式: iptables [-t 表名] <-A|I|D|R>链名 [规则编号] [-i|o网卡 名称] [-p协议类型] [-s源IP地址|源子网] [--sport源端口号 ] [-d目标IP地址|目标子网] [--dport目标端口号] <-j动作> 例一:为filter表的INPUT链添加一条规则,规则的内容是将来自IP地址 为192.168.1.200这台主机的数据包都丢弃,然后查看filter表的INPUT链 规则列表. iptables –t filter –A INPUT –s 192.168.1.200 –j DROP iptables –t filter –L INPUT 补充:如果,规则的内容是接受这台主机的包,只需将DROP改为ACCEPT100
  • 101. 例二:在filter表的INPUT链规则列表中的第2条规则前插入一条规则,内 容为禁止192.168.2.0这个子网里所有主机访问TCP协议的80端口. iptables –t filter –I INPUT 2 –s 192.168.2.0/24 –p tcp –dport 80 –j DROP iptables –t filter –L INPUT 例三.删除filter表的INPUT链规则列表中第3条规则,然后查看 iptables –t filter –D INPUT 3 iptables –t filter –L INPUT 例四:替换filter表的INPUT链规则列表中的第2条规则,为禁止 192.168.3.0这个子网主机访问TCP协议80端口,然后查看 iptables –t filter –R INPUT 2 –s 192.168.3.0/24 –p tcp –dport 80 –j DROP iptables –t filter –L INPUT (4)清除规则和计数器 格式:iptables [-t 表名] <-F|Z> 例如:A.删除filter表中所有规则 iptables -F 101
  • 102. B.将表中数据包计数器和流量计数器归零 iptables –Z C.删除nat表中所有规则 iptables –t nat –F 五.NAT服务 1.什么是私有IP 10.0.0.0-10.255.255.255 172.16.0.0-172.31.255.255 192.168.0.0-192.168.255.255 2.什么是NAT 是将一个地址域(如:私有网络)映射到另一个地址域(如:INTERNET)的标 准方法. 3.NAT的工作原理 (1)静态网络地址转换 A.定义:地址转换必须依赖手工建立的内外部地址映射表来运行. B.原理 102
  • 103. 192.168.16.10 INTERNET NAT服务器 192.168.16.11 NAT映射表 公网IP 内部私有IP 192.168.16.12 202.96.2.8 192.168.16.10 202.96.2.9 192.168.16.11 202.96.2.10 192.168.16.12 一对一的转换 (2)动态网络地址转换 A.定义:地址转换是由NAT服务器来完成 B.原理103
  • 104. 192.168.16.10 INTERNET NAT服务器 192.168.16.11 NAT映射表 公网IP 内部私有IP 192.168.16.12 202.96.2.8:2320 192.168.16.10:2320 202.96.2.8:2879 192.168.16.11:2879 202.96.2.8:3012 192.168.16.12:3012 一对多的转换(端口一致性) (3)网络地址端口转换(NAPT) A.定义:不但会改变经过这个NAT设备的IP数据报IP地址,还会改变IP数据 报的TCP/UDP端口 B.原理 104
  • 105. 192.168.16.10 INTERNET NAPT服务器 192.168.16.11 NAT映射表 公网IP 内部私有IP 192.168.16.12 202.96.2.8:3200 192.168.16.10:2320 202.96.2.8:1784 192.168.16.11:2879 202.96.2.8:1579 192.168.16.12:3012 一对多的转换(端口随机性) 六.使用iptables实现NAT服务 1.配置两块网卡 (1)eth0为公网IP (2)eth1为私有IP (3)配置DNS与网关 (4)重启网络服务 105
  • 106. 2.在命令行输入命令 (1)echo 1 > /proc/sys/net/ipv4/ip_forward 表示打开内核的路由功能,如关闭将1改为0就可以了. (2)iptables –t nat –A POSTROUTING –o eth0 –j SNAT --to 218.104.71.45 注:可以写到文件中做成脚本,然后再放入到/etc/rc.d/rc.local中,让其与系统一起启动,还得要求把nat/filter表规则与计数器清除(F|Z) 3.客户端配置 (1)IP 地址 (2)网关 (3)DNS 七.IPTABLES技巧实例 1.禁止客户访问不健康的网站 例1:添加一条规则,禁止用户访问域名为www.sohu.com网站 iptables –I FORWARD –d www.sohu.com -j DROP 例2:禁止用户访问IP为202.17.61.4的网站 iptables –I FORWARD –d 202.17.61.4 -j DROP106
  • 107. 2.禁止一些客户机上网 例1:添加一条规则禁止IP为192.168.1.200的客户机上网 iptables –I FORWARD –s 192.168.1.200 –j DROP 例2:添加一条规则禁止子网192.168.1.0/24的客户机上网 iptables –I FORWARD –s 192.168.1.0/24 –j DROP 3.禁止客户端访问一些服务 例1:禁止192.168.1.0子网里所有客户机使用FTP协议下载 iptables –I FORWARD –s 192.168.1.0/24 –p tcp --dport 21 –j DROP 例2:禁止192.168.1.0子网里所有客户机使用TELNET协议 iptables –I FORWARD –s 192.168.1.0/24 –p tcp --dport 23 –j DROP 4.禁止使用ICMP协议 例1:禁止外网用户通过ICMP来PING你的NAT服务器外网接口 iptables –I INPUT –i eth0 icmp –j DROP 5.禁止客户机使用QQ(QQ服务器很多) iptables –I FORWARD –p tcp --dport 8000 –j DROP iptables –I FORWARD –d tcpconn.tencent.com –j DROP107
  • 108. 6.发布内部网络服务器到公网(端口映射技术) 例:发布内网192.168.16.200主机的WEB服务到INTERNET上,外网用户通过访问NAT服务器的外网卡接口的TCP协议80端口来访问. iptables –t nat –I PREROUTING –i eth0 –p tcp --dport 80 –j DNAT --to-destination 192.168.16.200:80 7.通过IPTABLES禁止外网访问我的NAT服务器,除TCP的80口外. iptables –A INPUT –i eth0 –s 0.0.0.0/0 –p icmp –j DROP iptables –A INPUT –i eth0 –s 0.0.0.0/0 –p tcp --dport !80 –j DROP 8.只允许内网用户访问TCP/UDP的53与80端口 iptables –t nat –A POSTROUTING –p tcp –m multiport --port 53,80 -s 192.168.168.0/24 –o eth0 –j SNAT --to 218.104.71.43 补充:一个R9下的实用的NAT配置方案: 108
  • 109. echo 1 > /proc/sys/net/ipv4/ip_forward modprobe ip_tables modprobe ip_nat_ftp/ip_nat_irc/ip_conntrack modprobe ip_conntrack_ftp/ip_conntrack_irc iptables –F iptables –X iptables –Z iptables –F –t nat iptables –X –t nat iptables –Z –t nat iptables –P INPUT ACCEPT iptables –P OUTPUT ACCEPT iptables –P FORWARD ACCEPT iptables –t nat –P PREROUTING ACCEPT iptables –t nat –P POSTROUTING ACCEPT iptables –t nat –P OUTPUT ACCEPT iptables –t nat –A POSTROUTING –o eth0 –s 192.168.186.0/24 –j SNAT --to 218.104.71.45 重要说明:如果为ADSL环境,把eth0改为ppp0;SNAT…改为MASQUERADE 109
  • 110. 第十节:SQUID代理服务器的配置与应用 一.代理服务器概述 1.简介:提供文件缓存、复制和地址过滤等服务,充分利用有限的出口带 宽,加快内部主机的访问速度,也可解决公有IP不足问题,同时还可以 作为一个防火墙,监控网络和记录传输信息。 2.特点 (1)共享网络 (2)加快访问速度,节约通信带宽,记录相的WEB站点,当别的用户再访问上一个用户已访问过的站点时,就不必再去INTERNET上查此信息,而是在自己的本地缓存中给他拷贝一份. (3)防止内部主机受到攻击,比NAT安全 (4)限制用户访问,完善网络管理. 3.代理服务器原理110
  • 111. 代理服务器 缓存(cache) 客户机A Internet 访问控制列表(ACL) 客户机B 分析:客户机A发请求给代理服务器,访问INTERNET 客户机B发请求给代理服务器,访问INTERNET 两者之间的区别 二.SQUID的简介 1.在UNIX与LINUX下使用的代理服务器 2.查看系统安装 rpm –qa|grep squid 三.主配置文件 (/etc/squid/squid.conf文件) 1.配置前先备份文件 2.主配置文件配置如下111
  • 112. http_port 192.168.16.1:8080 (侦听内网IP的请求) cache_mem 64 MB (定义内存缓冲大小) cache_dir ufs /var/spool/squid 4096 16 256 (前者指缓存空间) cache_effective_user squid cache_effective_group squid dns_nameservers 218.104.78.2 cache_access_log /var/log/squid/access.log (上网记录查询) cache_log /var/log/squid/cache.log cache_store_log /var/log/squid/store.log visible_hostname 192.168.16.1 cache_mgr baikp@sohu.com acl all src 0.0.0.0/0.0.0.0 http_access allow all 图示原理 112
  • 113. Internet SQUID代理服务器 交换设备 内网客户机 外网接口配置:IP与SUBNET MASK/网关/DNS 内网接口配置:IP与SUBNET MASK 3.在LINUX中建立squid用户与组 4.初始化squid (1)创建squid使用硬盘缓冲区目录结构 /usr/sbin/squid –Z 当建好后可以通过 ls –l /var/spool/squid查看结构 (2)设置错误信息为中文 A.先把/etc/squid/errors备份,再删除 B.建立中文信息为快捷方式 ln –s /usr/share/squid/errors/Simplify_Chinese /etc/squid/errors 5.启动服务 /etc/init.d/squid start/stop/restart 113
  • 114. 6.在客户端测试 A.在“本地连接”中可要设置IP/SUBNET MASK B.在IE中设置代理服务器(IP与端口号) 7.优化设置与管理 重要说明:所有优化设置必须放在acl all src 0.0.0.0/0.0.0.0与 http_access allow all前面. 例1:禁止IP为192.168.16.200客户机上网 acl byx200 src 192.168.16.200 http_access deny byx200 例2:禁止192.168.16.0子网内所有客户机上网 acl byx0 src 192.168.16.0/255.255.255.0 http_access deny byx0 例3:禁止客户机访问IP地址为210.100.100.5的网站 acl byx5 dst 210.100.100.5 http_access deny byx5114
  • 115. 例4:禁止用户访问www.sina.com网站 acl jzsina dstdomain –i www.sina.com http_access deny jzsina 例5:禁止用户访问域名中包含有163.com网站 acl bad163xx url_regex –i 163.com http_access deny bad163xx 例6:禁止IP为192.168.16.33客户端最大并发连接数为5 acl clientmax5 src 192.168.16.33 acl conn5 maxconn 5 http_access deny clientmax5 conn5 例7:禁止QQ通过squid代理上线 acl QQ url_regex –i tencent.com http_access deny QQ 例8:禁止客户端下载mp3/zip/rar文件 acl badfile urlpath_regex –i \.mp3$\.zip$\.rar$ http_access deny badfile115
  • 116. 第十一节:网络时间服务的配置与应用 一.网络时间服务概述 1.北京时间的网站 http://time001.com 2.使用NTP网络时间协议,此协议在局域网上可小于1ms,广域网上可小几十毫秒,可通过原子钟/天文台/卫星和Internet等多种方式获得全球标准时间(UTC) 二.检查网络时间服务的安装 rpm –q ntp 三.配置文件 1.改“#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap” 把前面的#号去掉,再把网段改为允许同步的网段,如:192.168.186.0 2.在server0.pool.ntp.org前面添加 server 137.189.8.137 profer server 218.75.4.130 profer server 192.5.41.40 profer server 192.43.244.18 profer server 133.100.11.8 profer restrict 137.189.8.137 mask 255.255.255.255 nomodify notrap noquery116
  • 117. restrict 218.75.4.130 mask 255.255.255.255 nomodify notrap noquery restrict 192.5.41.40 mask 255.255.255.255 nomodify notrap noquery restrict 192.43.244.18 mask 255.255.255.255 nomodify notrap noquery restrict 133.100.11.8 mask 255.255.255.255 nomodify notrap noquery restrict 0.pool.ntp.org mask 255.255.255.255 nomodify notrap noquery restrict 1.pool.ntp.org mask 255.255.255.255 nomodify notrap noquery restrict 2.pool.ntp.org mask 255.255.255.255 nomodify notrap noquery 注:以上配置使用上层NTP服务器来校验本地时钟,防止校验失败,所以多设了几台 3.再进行下列设置 A.peer 192.168.186.183 与NTP服务器相互校时 B.broadcast 224.0.1.1 设本机可多播 C.broadcast 192.168.186.255 设NTP服务器可进行广播 D.修改/etc/ntp/step-tickers 为保证本机能快速找到时间服务器 137.189.8.137 218.75.4.130 192.5.41.40117
  • 118. 192.43.244.18 133.100.11.8 0.pool.ntp.org 1.pool.ntp.org 2.pool.ntp.org 127.127.1.0 三.配置使用系统时间 1.启动服务(在防火墙中允许UDP的133口通过,否则客户端不能与服务器同步) /etc/init.d/ntpd start/stop/restart 2.可手动改服务器系统时间 date MMDDhhmmYYYY.ss 3.把系统时间写入CMOS hwclock –w 四.在客户机上设置 1.98/2000中修服务中windows Time 将服务启动类型改为“自动” 2.XP/03中,双击任务栏时间,在窗口中“Internet 时间”,然后输入 LINUX时钟服务器IP(如:192.168.186.183),就可以同步. 118
  • 119. 第十二节:使用Webmin图形化配置各种服务 一.Webmin简介 1.具有本地和远程管理能力,同时访问控制和SSL支持,为远程管理提供高 安全性; 2.管理模块全,几乎包括了常见LINUX管理 3.提供多语种版本 二. Webmin安装和配置 1.安装perl语言解释器 (1)检查系统是否安装: rpm –q perl (2)若无安装,则下载 2.安装Net_ssleay perl和openSSL (1)目的:为了数据传输的安全 (2)包的下载 openssl-0.9.8.tar.gz Net_SSLeay.pm-1.25.tar.gz 119
  • 120. (3)安装方法 tar xvzf openssl-0.9.8.tar.gz cd openssl-0.9.8 ./config make make install tar xvzf Net_SSLeay.pm-1.25.tar.gz cd Net_SSLeay.pm-1.25 perl Makefile.PL make install 3.安装 Webmin rpm –ivh Webmin-1.230-1.noarch.rpm 4.登录并改中文版本 http://192.168.186.183:10000/change-user/120
  • 121. 注:Webmin安装好后,默认连接端口为10000 在页面中选择personal choice 然后,再把版本改为:ZH_cn 三.启动/停止 Webmin 服务 /etc/init.d/webmin start/stop/restart 四.使用Webmin配置各种服务 1.DNS 2.FTP ……121
  • 122. 第十三节:流媒体服务配置与应用 一.流媒体技术基础 1.简介 指采用流式的方式在INTERNET/INTRANET中传输媒体格式文件,如音频/ 视屏或多媒体文件,流媒体在播放前并不需要下载整个文件,只是先下载 开始部分的数据,然后在计算机中对数据进行缓存并使媒体数据正确地输 出,并在播放过程中不断地下载后续数据进行处理播放. 2.传输方式 (1)顺序流式传输(通过HTTP协议) A.不需特殊服务软件,而是已有WEB即可. B.对带宽要求较低,即使无法在线观看,也可下载后观看. C.兼容性好,不受防火墙影响 D.不能实现广播或多播 E.用户无法随意选择播放点 F.当用户采用慢速连接时,延时现象严重 注:适合播放一些短小流媒体文件,如:广告,精彩片断等.122
  • 123. (2)实时流式传输 A.支持实时传输,能采用广播或多播方式传输流媒体 B.用户可随意选择播放点,而无需下载完整流文件 C.可实现对每个流的带宽分配和带宽补尝等功能 D.但需要特殊服务软件 E.对带宽要求高 F.兼容性较差 G.采用专门的协议和端口,有可能无法穿过防火墙 3.流媒体播放方式 (1)单播的发送方式 A.点播:客户端主动与服务器连接,可对流的控制,如:开始/暂停等 B.广播:用户被动接收流,用户无法控制流,如:开始/快进等 节目A 流媒体服务器 客户机1 节目B 客户机2 123
  • 124. (2)多播 又称为组播,是一对多连接,多个客户端从服务器收到相同的流媒体数据, 对低带宽尤为有用 节目A 流媒体服务器 客户机1 客户机2 客户机3 …. 4.流媒体格式 Realnetworks 公司 rm rmvb ra rt rp Microsoft 公司 asf wmv wma Apple 公司 mov 5.流媒体应用系统组成 媒体采集设备/流媒体编码器/流媒体服务器/网络/客户端 6.常用流媒体软件 (1)windows media server (MICROSOFT 公司) (2)Helix server (Realnetworks公司) 124
  • 125. 二.流媒体服务器安装 1.首先访问 http://www.realnetworks.com/products/connectedserver/next_setp.html 注册并下载软件,REALNETWORKS公司会把软件发送到你的邮箱里 2.安装包 (1)对扩展名为bin的文件授于可执行权限. (2)使用 ./….bin安装 (3)安装过程中要求输入注册文件路径 lic文件 (4)安装过程中注意端口的填写 基本全为默认,只是在http处,要求改为8080,不然会与APACHE冲突 (5)装好后,保存按F键. 3.启动服务 到安装目录的Bin中执行 ./rmserver ../rmserver.cfg 注:若要把服务放到后台用ctrl+ZZ 4.停止服务 到安装目录的Bin中执行 fuser –k ./rmserver ../rmserver.cfg 125
  • 126. 三.流媒体服务配置 1.客户端使用 http://SERVERip:端口号/admin/index.html 对流媒体服务器进行配置,端口号是指管理员端口 2.在界面中选择“server setup” 再选“ip binding” 输入服务器IP 3.建立加载点 (1)选择“服务器配置” (2)添加加载点 /mp3 客户端访问的目录 /home/bb/mp3 本地路径 然后再选择本地 4.测试 rtsp://serverip/mp3/rr.rm 5.别名设置 126
  • 127. (1)作用:客户端不一定要使用建立加载点处的路径,可以通过别名的方式 来访问. (2)填写 如:别名:/mp3/a.rm 源地址: /mp3/yyyad.rm 这样一来客户端就可以用别名的方式来访问音乐文件. 此外:还可以对/mp3起别名,如/mp4 6.限制最大连接数 (1)服务器设置 (2)连接控制 (3)默认为0,表示无限制,可改数值. 7.访问控制(了解) 8.用户认证 (1)安全设置 到用户认证,然后添加一个vipuser 再填写:域ID(vipuser),认证协议(Basic),数据库:playercontent (2)再添加用户 (3)安全设置 到商业应用,建立一个规则,在受保护路径处/;许可数据库playercontent,采用认证类型处,选vipuser.127
  • 128. 9.节目管理平台 (1)利用网页三剑客制作网页,对节目进行管理 (2)在网上下载模板128
  • 129. 第十四节:VPN服务的配置与应用 一.VPN服务概述 1.VPN简介 VPN称为虚拟专用网,随着企业业务不断发展,越来越多员工需要到外地出 差或在家办公,由于工作需要他们要经常连接到企业内部网络,安全问题 如何解决,VPN是最佳解决方案. 2.VPN的原理 (画图讲解,或在网上找相关图示) 3.流行的VPN协议 (1)PPTP 点对点隧道协议 (PPTP) 是一种网络协议,其通过跨越基于 TCP/IP 的数据网络 创建 VPN 实现了从远程客户端到专用企业服务器之间数据的安全传输。PPTP 支 持通过公共网络(例如 Internet)建立按需的、多协议的、虚拟专用网络。 PPTP 允许加密 IP 通讯,然后在要跨越公司 IP 网络或公共 IP 网络(如 Internet)发送的 IP 头中对其进行封装。 129
  • 130. (2)L2TP 第 2 层隧道协议 (L2TP) 是一种工业标准 Internet 隧道协议,其可以为跨越面向数据包 的媒体发送点到点协议 (PPP) 框架提供封装。L2TP 允许加密 IP 通讯,然后在任何支持 点到点数据报交付的媒体上(如 IP)进行发送。Microsoft 的 L2TP 实现使用 Internet 协议安全 (IPSec) 加密来保护从 VPN 客户端到 VPN 服务器之间的数据流。IPSec 隧道模 式允许加密 IP 数据包,然后在要跨越公司 IP 网络或公共 IP 网络(如 Internet)发送 的 IP 头中对其进行封装。PPTP 连接只要求通过基于 PPP 的身份验证协议进行用户级身 份验证。IPSec 上的 L2TP 连接不仅需要相同的用户级身份验证,而且还需要使用计算机 凭据进行计算机级身份验证。 (3)IPSec 隧道模式 隧道是封装、路由与解封装的整个过程。隧道将原始数据包隐藏(或封装)在新的数据包 内部。该新的数据包可能会有新的寻址与路由信息,从而使其能够通过网络传输。隧道与 数据保密性结合使用时,在网络上窃听通讯的人将无法获取原始数据包数据(以及原始的 源和目标)。封装的数据包到达目的地后,会删除封装,原始数据包头用于将数据包路由 到最终目的地。隧道本身是封装数据经过的逻辑数据路径。对原始的源和目的端,隧道是 不可见的,而只能看到网络路130
  • 131. 径中的点对点连接。连接双方并不关心隧道起点和终点之间的任何路由器、交换 机、代理服务器或其他安全网关。将隧道和数据保密性结合使用时,可用于提供 VPN。封装的数据包在网络中的隧道内部传输。在此示例中,该网络是 Internet。 网关可以是外部Internet 与专用网络间的周界网关。周界网关可以是路由器、 防火墙、代理服务器或其他安全网关。另外,在专用网络内部可使用两个网关来 保护网络中不信任的通讯。当以隧道模式使用 IPSec 时,其只为 IP 通讯提供 封装。使用 IPSec 隧道模式主要是为了与其他不支持 IPSec 上的 L2TP 或PPTP VPN 隧道技术的路由器、网关或终端系统相互操作。 二.安装配置 1.配置网络(双网卡) 2.下载软件包 dkms-2.0.5-1.noarch.rpm kernel-ppp-mppe-0.0.5-2dkms.noarch.rpm ppp-2.4.3.rhel4.i386.rpm pptpd-1.3.0-0.i386.rpm 3.安装 131
  • 132. 注:除ppp-2.4.3.rhel4.i386.rpm包要升级安装外,其它都是正常安装 rpm –Uvh ppp-2.4.3.rhel4.i386.rpm 三.配置VPN服务器 1.配置主配置文件 /etc/pptpd.conf 在文件最后加入两行 local ip 192.168.16.1 定义VPN服务器IP remoteip 192.168.16.10-20,192.168.16.125设置分配给VPN客户地址段 2.配置账号文件 账号文件/etc/ppp/chap-secrets 保存VPN客户机拔入时所使用的账号名和分配的IP地址. 格式: 账号名 服务 口令 分配给此账户IP 如:“linda” pptpd “test” “*” 随机取得IP “tom” pptpd “hello” “192.168.16.12” 3.打开LINUX内核路由功能 echo “1” >/proc/sys/net/ipv4/ip_forward132
  • 133. 四.启动VPN服务 1. /etc/init.d/pptpd start/stop/restart 2.在防火墙中允许通过此包 端口号:TCP 1723 iptables –I INPUT –p tcp --dport 1723 –j ACCEPT iptables –I INPUT –p gre –j ACCEPT (开放编号47的IP协议) 五.VPN客户端的配置 在WINDOWS 下测试 133
  • 134. 第十五节:网络数据库MYSQL服务的配置与应用 一.MYSQL概述 高性能、多线程、多用户,建立在客户/服务器结构上关系型数据库管理 系统,始于1979年,起始名为UNIREG,1996年5月份由WIDENIUS开发出 MYSQL最初版本,当前最新版本为5.0 实用案例:YAHOO/GOOGLE/CISCO/HP等都采用它作为自己的数据库引擎. 二.MYSQL安装 1.检查 rpm –qa|grep mysql 2.若无则下载安装 三.MYSQL服务配置与使用 1.修改管理员的密码 (1)刚装好后无密码,可使用 mysqladmin –uroot password 密码 134
  • 135. (2)以管理员身份登录数据库 mysql –u root –p (3)原来有密码,现在要修改 mysqladmin –uroot –p旧密码 password 新密码 2.数据库的创建与删除 (1)创建数据库 create database 数据库名; 查看创建好的数据库 show databases; (2)选择数据库 use 数据库名; (3)删除数据库 drop database 数据库名; 3.表的创建/复制/删除/修改 (1)创建表 格式:135
  • 136. create table 表名称(字段1,字段2,…字段n,[表级约束]) [Type=表类型]; 注:A.字段i(i=1,2,…,n)格式为 字段名 字段类型 [字段约束] 说明一:字段类型,规定了某字段所允许输入的数据类型 类型 描述 int 允许值在0至2的32次方减1(无符号)之间标准整数 double 双精度浮点数 char 最大长度不超过255字符定长字符串 varchar 最大长度不超过255字符变长字符串 text 最大长度为65535字符字符串 Blob 可变数据的二进制类型 date YYYYMMDD格式日期类型 说明二:字段约束,用来进一步对某个字段所允许输入的数据进行约束,常用的 字段约束如下: 136
  • 137. 约束 描述 NULL(或NOT NULL) 指定允许(或不允许)某字段为空,默认为NULL DEFAULT 为某字段指定一个默认值 AUTO_INCREMENT 自动为某个INT字段生成一个递增加1的整数 B.表级约束:用于指定表的主急键、外键、索引和维一约束 约束 描述 Primary key 为表指定主健 Foreign key …References 为表指定外键 Unique 为某字段创建索引,此字段必须唯一 Fulltext 为某字段建立全文索引 C.表类型:用于指定表的类型,即数据的存储格式137
  • 138. 表类型 描述 MyISAM 具有很多优化和增强的特性,是MYSQL默认表类型 ISAM 类似于MYISAM,但是功能较少 HEAP 保存在内存中,存取速度快,但存储量小,恢复难 BDB 支持事务和页锁定 INNODB 支持事务,外键和行锁定,是MYSQL中最完善表格式 MERGE 可把多个MYISAM表构建为一个虚拟表,使得这些表 的查询就象在一个表上进行,提高查询速度和修复 效率,并节省了磁盘空间 例如:要在学生选课数据库中创建一个名为student的表,存放学生相关信息 create table student(sno varchar(7) not null,sname varchar(20) not null,ssex char(1) default ‘t’ , sbirthday date,sdepa char(20),primary key (sno) ); 注:A.建好后可以能过命令describe查看表结构 B.系统会在/var/lib/mysql/xxkk目录下创建student.frm(表定义文件)、 student.MDY(数据文件)和student.MYI(索引文件)三个文件。138
  • 139. (2)复制表 格式:create table 新表名称 like 源表名称; 如:create table xstudent like student; (3)删除表 格式:drop table 表名称1 [,表名称2,…]; 如:drop table xstudent; (4)修改表 格式:alter table 表名称 更改动作1[,更改动作2,…]; A.增加表中字段 alter table student add saddress varchar(25) #向表中添加字段 B.更改表字段名和字段类型 alter table student change saddress beizhu text;#beizhu为新字段 C.删除字段 alter table student drop beizhu; D.更改名称 alter table student rename to xs;139
  • 140. 4.插入记录 insert into 表名称(字段名1,字段2,…) values (字段1的值,字段2的值,…); 例如:要在表student中插入一组数据 insert into student(sno,sname,ssex,sbirthday,sdepa) values (‘0321001’,‘LIU TAO’, default,19870201,‘math’); 类似例子 例1:要插入与前与相同的记录,可使用下面的insert命令缩写 insert into student values (‘0320001’, ‘LIU TAO’ , default,19870201,‘math’); 例2:表中有默认字段值,若就取默认值,这时只需修改要修改的内容 insert into student (sno,sname,sbirthday) values (‘0320002’, ‘WANG MEI’,19870204); 例3:在一个单独的insert语句中使用多个values子句,可插入多条记录 Insert into student values (‘0322001’, ‘ZHANG SAN’, ‘f’,19801011, ‘computer’), (‘0322002’, ‘LI SI’, ‘t’,19811101, ‘computer’); (2)删除记录 delete from 表名称 where 条件表达式; 140
  • 141. 例1:删除表中(student),sno字段值为‘0321002’的记录 delete from student where sno=‘0321002’; 例2:要从表student中删除sno字段值的前4位为‘0322’的所有记录 delete from student where left(sno,4)=‘0322’; 注:删除表中所有记录的方法: truncate table student; (3)修改记录 格式:UPDATE 表名称 SET 字段名1=字段值1[,字段名2=字段值2…] WHERE 条件表达式 例:要修改表student中的sno字段值为0321002的记录,将其sbirthday字段值改为19900104、sdepa字段值改为‘english’ update student set sbirthday=19900104,sdepa=‘english’ where sno=‘0321002’; 5.索引的创建与删除(对数据量大的表,使用索引可以减少数据查询的执行时间) (1)在创建表的同时创建索引 例:要创建一个选课课程表course,将课程编号cno字段定义为主键,同时为课程名称cname字段创建一个名为can的索引。 create table course (cno varchar (5) not null,cname varchar (30) not null,teacher varchar (20),primary key (cno),index cna (cname));141
  • 142. (2)向已存在的表添加索引(unique或index字句) 格式:create [unique] index 索引名 on 表名称 (字段名1[(长度)],…); 例1:要为表student的sname字段创建名为sna的索引. create index sna on student (sname); 例2:要为表student的sname字段创建名为sna的索引,并指定索引长度值为10. create index sna on student (sname(10)); (3)删除索引 格式:drop index 索引名 on 表名称; 例:要删除表student中索引名为sna的索引. drop index sna on student; 6.用户的创建与删除 说明1:系统安装好后,MYSQL默认有两个数据库(mysql和test),而且除了root用户 外,其他用户仅能访问test数据库; 说明2:mysql中设置5个MYSQL的授权表(user表/db表/host表/tables_priv表/columnts_priv表)142
  • 143. (1)创建新用户 方法如下: A.mysql –u root –p #以客理员登录 B.insert into mysql.user (host,user,password) values(‘%’, ‘guest’,password(‘guest’)); #向user表中添加一条记录 C.flush privileges; #重载授权表 D.mysql –h 192.168.16.1 –u guest –p #退出后,以新用户登录测试 (2)删除用户 A.mysql –u root –p #以客理员登录 B. delete from mysql.user where user=‘guest’; #从用户表中删除 C.flush privileges; #重载授权表 (3)更改用户密码 例:要将用户guest密码改为123456 A.mysql –u root –p #以客理员登录 B.update mysql.user set password=password(‘123456’) where user=‘guest’; C.flush privileges; #重载授权表 143
  • 144. 7.用户授权 (1)使用GRANT语句授权 格式:GRANT 权限列表[(字段列表)] ON 数据库名称.表名 TO 用户名@域 名或IP地址 [IDENTIFIED BY ‘密码值’] [WITH GRANT OPTION]; 例一:要授给用户guest可以从任意主机连接到数据库服务器,并具有完全 访问学生选课数据库xsxk的权限. grant all on xsxk.* to guest@‘%’ identified by ‘guest’; 说明: A.%表示从任何主机连接数据库服务器,也可以用空白; B.%.gdvcp.net 表示从gdvcp.net域中的任何主机连接数据库服务器; C.192.168.16.% 表示从192.168.16.0子网中任何主机连接 D.localhost 表示从本地主机连接 E.192.168.16.19 表示从IP为192.168.16.19的主机连接 例二:新建一个用户tom,让他能从子网192.168.16.0中任何主机连接到数 据库服务器,可以读取数据库xsxk的内容,并且能修改表course中字段 teacher的值. 144
  • 145. grant select on xsxk.* to tom@‘192.168.16.%’ identified by ‘123456’; grant update(tearch) on xsxk.course to tom@‘192.168.16.%’; 例三:MYSQL管理员要授予用户admin可以从本地连接到数据库服务器,对 学生选课数据库xsxk具有完全访问权限,并可将其所拥有的权限授予其他 用户. grant all on xsxk.* to admin@localhost identified by ‘sw56$zA’ with grant option; (2)使用REVOKE语句撤权 格式:REVOKE 权限列表[(字段列表)] ON 数据库名称.表名称 FROM 用户名@域名或IP地址 例:MYSQL管理员要撤销用户admin@localhost对数据库xsxk所拥有的创建 删除数据库与表的权限,并撤销此用户可以把自己所拥有的权限授予其他用户的权限。 revoke create,drop on xsxk.* from admin@localhost; revoke grant option on xsxk.* from admin@localhost; 145
  • 146. 四.MYSQL图形化配置 1. 需要软件:phpMyAdmin-2.7.0-pl2.tar.gz 2.解压缩到一个APACHE发布的虚拟目录中如: /var/www/phpmysql中 3.修改其中的config.default.php文件 验证类型:http MYSQL中的管理员名称:root MYSQL的管理员密码:123456 保存后退出. 4.在远程使用http协议访问到虚拟目录,就可以远程管理MYSQL了. 借此回顾一下前面在APACHE平台下搭建的<<菁菁站点>> 146
  • 147. 谢谢! 147