本书是普通高等教育“十一五”国家级规划教材。本书从Linux操作系统基础入手,以丰富的示例为依托,循序渐进地讲述了Linux系统中典型的网络技术与应用。全书分为12章,内容包括:概述与安装、命令与示例、shell编程基础、DNS、DHCP、Apache、Vsftpd、Samba、iptables、Postfix、SSH和OpenStack云计算等内容。
适读人群 :本科计算机类专业师生
普通高等教育“十一五”国家级规划教材。采用新的RHEL7.0作为新平台。符合任务驱动的教学模式。讲述了各种典型的网络服务,并引入了基于OpenStack云计算的新内容。
当前Linux网络技术的应用已经非常普及、地位十分显著。运行在Linux系统上的典型网络服务稳定地占据着Internet上各种排名的榜首位置。随着新技术、新应用的不断出现,各种Linux发行版也随即推陈出新,本书第1版基于RedHat Enterprise Linux 4.0并于2007年7月发行,时至今日改版需求日益显著。
本次修订的第2版采用了2014年6月RedHat公司最新发行的RedHat Enterprise Linux 7.0(RHEL 7.0)为平台,全书仍分为12章,包括概述与安装、命令与示例、shell编程基础、DNS服务、DHCP服务、Apache服务、VSFTPD服务、Samba服务、iptables、Postfix、SSH及OpenStack等。本次修订涉及所有章节,所有网络服务示例均在RHEL 7.0上测试通过,总体修订比例在70%以上。在秉承上一版特点的基础上,引入了近来非常流行的基于OpenStack云计算的新内容,邮件服务也用Postfix代替了原来的Sendmail,新版中唯一去除掉了一章就是Squid服务。
从策划开始,历经近一年的修订工作,中间经历了一次重大的版本升级,原计划采用RHEL 6.5作为新平台,在进度过半的时刻,RHEL7.0发行了。各位作者商议一致临时决定采用新的RHEL7.0作为新平台,因此新版修订拖延了一段时间。
本书从结构上来说,前三章为基础,后九章分别讲述了各种典型的网络服务。在教学过程中建议前4章顺序学习,其余章节可以有选择进行教学,最后一章OpenStack可作为综合性实践教学题目,请灵活掌握。需要说明的是:虽然本书以RHEL 7.0为主来讲述,但是绝大部分内容也适合于其他的Linux发行版本。另外,为方便教学本书特配备了电子教案。
本书是集体智慧的结晶,除主编作者外参与本书编写工作的还有魏绍谦、翟红英、李湛、张银霞等。本书的出版也得到了作者单位北京联合大学师范学院的支持与帮助,在此一并感谢。
出版说明
前言
第1章 概述与安装
1.1 概述
1.1.1 Linux 的历史与应用前景
1.1.2 Linux主要的发行版
1.1.3 RedHat Linux 简介
1.2 RHEL 7.0的安装
1.2.1 光盘安装
1.2.2 网络安装
1.3 本章小结
1.4 思考与练习
第2章 命令与示例
2.1 常用命令与示例
2.1.1 文件基本操作命令
2.1.2 用户、组管理命令
2.1.3 文件属性操作命令
2.1.4 i节点及其相关命令
2.1.5 查找命令
2.1.6 文件内容操作命令
2.1.7 压缩与打包命令
2.1.8 挂装与卸载命令
2.1.9 网卡配置命令
2.1.10 rpm命令
2.1.11 帮助命令
2.1.12定时器命令
2.1.13 查看进程命令
2.1.14 其他命令
2.2 管道与重定向
2.2.1 管道
2.2.2 输出重定向
2.2.3输入重定向
2.3 vi 编辑器使用简介
2.3.1 vi的工作方式
2.3.2 vi的常用命令
2.4 正则表达式简介
2.4.1 正则表达式的基本语法
2.4.2 正则表达式的应用示例
2.5本章小结
2.6思考与练习
第3章shell编程基础
3.1shell脚本简介
3.1.1编写第一个shell脚本
3.1.2注释
3.1.3执行shell脚本程序的一般方法
3.2 shell变量与环境变量
3.2.1定义shell变量
3.2.2访问shell变量
3.2.3清除shell变量
3.2.4环境变量
3.2.5位置参数
3.2.6特殊变量
3.2.7引用
3.2.8变量替换
3.3流程控制结构
3.3.1顺序结构
3.3.2条件测试
3.3.3分支结构
3.3.4循环结构
3.4shell函数
3.4.1函数的定义
3.4.2函数的调用与执行
3.4.3参数的传递
3.4.4函数的返回
3.5本章小结
3.6思考与练习
第4章DNS 服务
4.1 BIND概述
4.1.1 BIND的安装
4.1.2 域名解析相关的配置文件介绍
4.2 BIND的主配置文件
4.2.1 BIND默认的主配置文件
4.2.2自定义主配置文件
4.3 正向区域数据库文件
4.3.1 SOA资源记录的含义
4.3.2典型的正向资源记录
4.4 反向区域数据库文件
4.5 运行与测试
4.5.1运行DNS服务
4.5.2测试DNS服务
4.6 辅DNS
4.6.1 主辅DNS的关系
4.6.2 辅DNS的配置
4.6.3 测试辅DNS
4.7 子域
4.7.1 父子域在同一台DNS服务器上
4.7.2 父子域在不同的DNS服务器上——区域委派
4.8 高级配置
4.8.1 配置使用转发器forwarder
4.8.2 访问控制
4.8.3 负载平衡
4.9 本章小结
4.10 思考与练习
第5章DHCP 服务
5.1 DHCP概述
5.1.1 DHCP的工作机制
5.1.2 DHCP的安装
5.2 DHCP服务器端配置
5.2.1 基本配置
5.2.2 配置IP地址与MAC地址绑定
5.2.3 配置超级作用域
5.3 DHCP客户端配置
5.3.1 Windows客户端配置
5.3.2 Linux客户端配置
5.4 配置基于类别的DHCP服务
5.4.1 基于类别的DHCP服务器端的配置
5.4.2 基于类别的DHCP客户端的配置
5.5 配置DDNS服务
5.5.1 DDNS服务的概念
5.5.2 生成动态更新密钥
5.5.3 配置DNS服务支持动态更新
5.5.4 配置DHCP服务支持动态更新
5.5.5 测试DDNS服务
5.6 本章小结
5.7 思考与练习
第6章 Apache 服务
6.1 Apache概述
6.1.1 Apache的功能
6.1.2 Apache的安装
6.1.3 Apache的运行
6.2 Apache的配置文件
6.2.1 Apache配置文件的结构
6.2.2 Apache配置指令
6.3 Apache的配置示例
6.3.1 主机访问控制
6.3.2 用户访问控制
6.3.3 虚拟主机
6.4 Apache的高级配置
6.4.1 重定向
6.4.2 重写规则
6.5本章小结
6.6思考与练习
第7章 VSFTPD服务
7.1VSFTPD概述
7.1.1 FTP概述
7.1.2 VSFTPD的特点
7.1.3 VSFTPD的安装
7.1.4 VSFTPD的运行
7.2 VSFTPD的配置文件
7.2.1 VSFTPD默认的配置指令
7.2.2 测试
7.3 VSFTPD的配置示例
7.3.1 匿名FTP服务器
7.3.2 配置chroot
7.3.3 主机访问控制
7.3.4 用户访问控制
7.3.5 基于不同IP地址的虚拟主机
7.3.6 监听非标准端口
7.3.7 配置虚拟用户FTP服务器
7.4 本章小结
7.5 思考与练习
第8章 Samba服务
8.1 Samba概述
8.1.1 Samba的功能
8.1.2 Samba的特点
8.1.3 Samba的运行
8.2 Samba的配置文件
8.2.1 Samba配置文件的结构
8.2.2 Samba服务基本的配置指令
8.3 Samba的配置示例
8.3.1 添加Samba用户
8.3.2 配置打印共享
8.3.3 访问Samba服务器及Windows上的共享资源
8.3.4 主机访问控制
8.3.5 用户访问控制
8.3.6 Samba做活动目录中的成员服务器
8.4 本章小结
8.5 思考与练习
第9章 iptables
9.1 Linux 防火墙概述
9.1.1 Linux 防火墙的架构
9.1.2 netfilter/iptables的功能
9.1.3 数据包通过iptables的流程
9.1.4 激活IP转发功能
9.2 iptables基础
9.2.1 iptables语法格式中的命令
9.2.2 iptables语法格式中的参数
9.2.3 iptables语法格式中的目标动作
9.3 iptables应用示例
9.3.1 filter表的应用示例
9.3.2 nat表的应用示例
9.4 本章小结
9.5 思考与练习
第10章 Postfix
10.1 Postfix概述
10.1.1 MUA、MTA和MSA
10.1.2 邮箱及相关命令
10.2 Postfix配置文件及相关数据库
10.2.1 Postfix配置文件
10.2.2 Postfix常用的数据库
10.3 postfix配置示例
10.3.1 两台邮件服务器互发邮件
10.3.2 配置带SMTP认证的Postfix服务
10.4本章小结
10.5思考与练习
第11章 SSH
11.1 SSH概述
11.2 SSH基础示例
11.2.1安全远程登录
11.2.2 scp
11.2.3 sftp
11.3 SSH应用示例
11.3.1 采用公钥认证登录
11.3.2 主机访问控制
11.3.3 用户访问控制
11.3.4 端口重定向
11.3.5 X11转发
11.3.6 ssh-agent
11.3.7 Windows 下的SSH客户端
11.4本章小结
11.5思考与练习
第12章 OpenStack
12.1 OpenStack概述
12.1.1 OpenStack提供的服务
12.1.2 OpenStack架构
12.2构建OpenStack云平台
12.2.1基本环境配置
12.2.2配置Identity Service
12.2.3安装与配置OpenStack clients
12.2.4配置Image Service
12.2.5配置Compute services
12.2.6增加networking service
12.2.7启动一个实例
12.3本章小结
12.4思考与练习