第1章 建立Linux系统 1
1.1 Linux简介 1
1.1.1 Linux的产生与发展 1
1.1.2 Linux的基本特性 1
目录 1
1.1.3 常用的Linux版本 2
1.2 VMware的使用 3
1.3 在虚拟机中安装Linux 5
1.4.1 引导Linux 18
1.4.2 Root口令的恢复 18
1.4 Linux的启动与关闭 18
1.4.3 用户登录 19
1.4.4 系统重启与关闭 20
1.5 Linux网络配置 20
1.6 本章小结 24
1.7 思考与练习 24
第2章 Linux终端操作 25
2.1 Linux终端操作基础 25
2.1.1 Linux文件及操作符 25
2.1.2 Linux目录结构 25
2.1.3 Linux的RPM包 27
2.1.4 Linux的tar包 27
2.2 目录和文件操作 28
2.3 用户管理 34
2.4 系统管理命令 39
2.5 本章小结 43
2.6 思考与练习 43
第3章 shell编程 45
3.1 文本编辑器vi简介 45
3.1.1 vi基本概念 45
3.1.2 vi输入模式 45
3.1.3 删除与修改操作 45
3.1.5 编辑命令 46
3.1.4 移动光标命令 46
3.1.6 文件操作指令 47
3.2 bash shell编程 47
3.2.1 环境变量 47
3.2.2 运算符 50
3.2.3 常用命令 52
3.2.4 If语句 53
3.2.5 for循环结构 54
3.2.6 while和until 55
3.2.7 case语句 56
3.2.8 bash中的函数 57
3.3 awk语言介绍 58
3.3.1 变量 59
3.3.2 显示文件中指定分段内容 60
3.3.3 显示文件特定行指定段的内容 61
3.3.4 多条件语法 62
3.3.5 多行记录-结构 62
3.3.6 循环结构 63
3.3.7 数组 64
3.4 本章小结 66
3.5 思考与练习 67
第4章 Linux常用服务 68
4.1 Telnet服务 68
4.2.2 Samba的组成 69
4.2.1 Samba的由来 69
4.2 Samba原理与应用 69
4.2.3 Samba的安装、运行与使用 70
4.2.4 建立smb用户 72
4.2.5 smb.conf配置文件 72
4.3 Apache Web服务器 75
4.3.1 Apache的由来与特点 75
4.3.2 Apache的安装与运行 75
4.3.3 Apache的配置文件httpd.conf 78
4.3.4 Apache目录和文件访问控制 82
4.3.5 虚似主机 84
4.4.1 什么是DNS 87
4.4 DNS域名解析服务器 87
4.4.2 DNS的求解过程 88
4.4.3 本地DNS服务器的结构 88
4.4.4 正反向解析文件分析 90
4.4.5 后备DNS服务器 92
4.4.6 负载均衡 93
4.5 FTP服务器 93
4.5.1 ProFTPD的特点、安装与运行 94
4.5.2 ProFTPD的配置文件proftpd.conf 94
4.5.3 ProFTPD用户登录 96
4.5.4 ProFTPD匿名登录异常分析 97
4.5.5 VSFTP服务器 98
4.6 本章小结 99
4.7 思考与练习 99
第5章 Apache与PHP和MySQL组合应用 101
5.1 在Linux集成环境中的Apache与PHP和MySQL 101
5.1.1 系统集成的Apache与PHP服务 101
5.1.2 系统集成的MySQL 102
5.2 Apache与PHP和MySQL独立安装包组合应用 103
5.2.1 在Linux 7.3中安装mysql-3.23.33、apache_1.3.27、php-4.3.10 104
5.2.2 在Fedora中安装mysq1-4.1.11、apache-2.0.46、php-4.3.10 105
5.3 Windows下Apache与PHP与MySQL的使用 106
5.5 思考与练习 108
5.4 本章小结 108
第6章 MySQL数据库应用 109
6.1 MySQL数据库的结构与建立 109
6.1.1 MySQL数据库的结构 109
6.1.2 数据库的建立 110
6.2 MySQL数据库中数据的操作 112
6.2.1 表的修改操作 112
6.2.2 数据的过滤 113
6.3 MySQL数据库的用户权限 113
6.3.1 用户权限 113
6.3.2 增加新用户 114
6.3.5 MySQL管理软件 115
6.3.3 取消权限 115
6.3.4 删除用户 115
6.4 本章小结 116
6.5 思考与练习 116
第7章 PHP编程初步 117
7.1 HTML基础 117
7.1.1 基本HTML标记 117
7.1.2 HTML页面举例 118
7.1.3 框架 119
7.1.4 JavaScript 119
7.2.1 常量 121
7.2 PHP操作符与变量 121
7.2.2 运算符 122
7.2.3 变量 123
7.3 PHP程序控制语句 127
7.3.1 if语句 127
7.3.2 for循环 128
7.3.3 while循环 128
7.3.4 switch开关 129
7.3.5 中断语句 130
7.4 文件和字符串操作 131
7.4.1 文件和字符串操作常用函数 131
7.4.2 一个基于文件操作的留言板 133
7.4.3 PHP在Linux中以shell方式运行 134
7.5 PHP对MySQL数据库的访问 135
7.5.1 常用数据库函数 135
7.5.2 一个MySQL数据库的留言板 137
7.6 本章小结 139
7.7 思考与练习 140
第8章 Linux扩展服务 141
8.1 Qmail的应用 141
8.1.1 创建Qmail主目录和运行用户 141
8.1.2 安装Qmail 141
8.1.3 调试Qmail 143
8.1.4 安装vpopmail 146
8.1.5 邮件发送和接收实验 149
8.2 DHCP服务器建立 150
8.2.1 DHCP服务器的安装 150
8.2.2 DHCPD配置文件dhcpd.conf 151
8.2.3 DHCP服务器的备份与中转 151
8.3 代理服务的使用 152
8.3.1 Apache代理服务 152
8.3.2 Squid代理服务 153
8.4 综合安装各种服务shell程序 156
8.4.1 网络参数和启动程序设置 156
8.4.2 参考安装程序shell脚本 157
8.5 本章小结 161
8.6 思考与练习 161
第9章 Linux防火墙iptables 162
9.1 防火墙的任务 162
9.2 TCP的连接与状态 163
9.2.1 状态 163
9.2.2 TCP的三次握手过程 164
9.2.3 TCP三次握手的状态 166
9.2.4 ICMP的状态 166
9.3 iptables中的表和链 166
9.3.2 NAT表 167
9.3.3 Mangle表 167
9.3.1 Filter表 167
9.3.4 iptables的流程 168
9.4 iptables中的规则 168
9.4.1 数据包的匹配方式和限制 169
9.4.2 非正常包的匹配 169
9.4.3 常用命令 170
9.5 防火墙举例 172
9.5.1 测试iptables防火墙的Filter表中链的工作情况 172
9.5.2 防火墙例题分析 173
9.6 本章小结 176
9.7 思考与练习 177
10.1 软件特点及安装 178
第10章 Linux路由器Zebra 178
10.2 配置与启动Zebra 179
10.3 一个Zebra实验 182
10.3.1 确认zebra已启动 182
10.3.2 配置Zebra的网卡IP 182
10.3.3 在Cisco路由器上配置接口IP和RIP协议 184
10.3.4 查看动态路由RIP传播情况 185
10.4 本章小结 186
10.5 思考与练习 187
附录A iptables参考手册 188
附录B 常见TCP端口列表 196
习题参考答案 200