前言
Chapter 01走進UNIX
1.1 UNIX 簡介
1.1.1 什麼是UNIX
1.1.2 什麼是Linux
1.1.3 UNIX 和Linux 的區別與關聯
1.1.4 POSIX 標準
1.1.5 如何學習UNIX
1.2 開放原始碼的UNIX 發行版本
1.2.1 FreeBSD
1.2.2 NetBSD
1.2.3 OpenBSD
1.2.4 OpenSolaris
1.3 商業的UNIX 發行版本
1.3.1 Oracle Solaris
1.3.2 IBM AIX
1.3.3 HP-UX
1.3.4 Apple Mac OS X
1.4 如何選擇UNIX 發行版本
1.4.1 你應該使用什麼型態的UNIX
1.4.2 本書選擇的UNIX 衍生版
1.4.3 取得UNIX 或Linux 的方式
1.5 UNIX 的相關資訊
1.5.1 各發行版本的有關文件
1.5.2 協力廠商網站
1.5.3 新聞群組
1.5.4 郵寄清單
1.5.5 討論區和社區
1.6 與UNIX 有關的常見概念
1.6.1 核心
1.6.2 Shell
1.6.3 檔案系統
1.6.4 多使用者、多工
1.6.5 處理程序
1.7 常見問題
1.7.1 UNIX 和Linux 對於硬體平台的支援是否相同
1.7.2 UNIX 與Linux 上的應用是否可直接相互遷移
1.7.3 Linux 有哪些發行版本
1.8 小結
Chapter 02UNIX 的安裝
2.1 安裝前的準備工作
2.1.1 系統硬體的要求和建議
2.1.2 取得安裝媒體
2.2 以圖形的方式安裝Solaris 11
2.2.1 Solaris 11 LiveCD 簡介
2.2.2 為什麼選擇圖形的安裝方式
2.2.3 執行安裝
2.2.4 安裝其他的軟體套件
2.3 以文字的方式安裝Solaris 11
2.3.1 為什麼選擇文字方式安裝
2.3.2 執行安裝
2.3.3 安裝其他的軟體套件
2.4 在虛擬機中安裝Solaris 11
2.4.1 虛擬機簡介
2.4.2 建立虛擬電腦
2.4.3 以圖形方式安裝Solaris 11
2.5 在虛擬機中安裝FreeBSD
2.5.1 建立虛擬電腦
2.5.2 安裝FreeBSD
2.6 常見問題
2.6.1 Solaris 還可以透過哪些方式來安裝
2.6.2 UNIX 和Linux 的安裝方式有何不同
2.7 小結
Chapter 03 UNIX 的開機、服務管理和關閉
3.1 UNIX 系統啟動
3.1.1 什麼是系統啟動
3.1.2 什麼是主開機記錄(MBR)
3.1.3 開機載入程式
3.1.4 init 處理程序
3.2 UNIX 的執行等級
3.2.1 執行等級
3.2.2 設定預設執行等級
3.2.3 改變目前執行等級
3.2.4 檢視目前執行等級
3.3 UNIX 的服務
3.3.1 什麼是服務
3.3.2 如何管理服務
3.4 UNIX 的關閉
3.4.1 init 或telinit 指令
3.4.2 shutdown 指令
3.4.3 halt 指令
3.4.4 poweroff 指令
3.4.5 reboot 指令
3.5 常見問題
3.5.1 忘記root 密碼如何處理
3.5.2 Linux 的啟動過程與UNIX 有何不同
3.5.3 Linux 和UNIX 的開機載入程式有何不同
3.5.4 如何在Linux 中進入單使用者模式
3.5.5 如何在FreeBSD 中啟動一個服務
3.5.6 在Solaris 中啟動一個服務
3.5.7 如何在FreeBSD 中禁用一個服務
3.5.8 如何在Solaris 中禁用一個服務
3.5.9 如何在Solaris 中檢視服務狀態
3.6 小結
Chapter 04 UNIX 桌面環境:KDE、GNOME 和CDE
4.1 X Window 系統
4.1.1 圖形介面
4.1.2 X Window 系統的歷史
4.1.3 X Window 的管理者
4.1.4 X Window 的抽象層次
4.1.5 X Window 的系統架構
4.1.6 視窗管理員
4.1.7 桌面環境
4.2 KDE
4.2.1 Qt 工具套件
4.2.2 KDE 的歷史
4.2.3 KDE 的安裝
4.2.4 KDE 的桌面配置
4.2.5 檔案管理員
4.2.6 啟動KDE 應用程式
4.2.7 KDE 的文字編輯
4.3 GNOME
4.3.1 GTK+工具套件
4.3.2 GNOME 桌面簡介
4.3.3 GNOME 的安裝
4.3.4 GNOME 桌面配置
4.3.5 檔案管理員
4.3.6 GNOME 桌面應用程式
4.4 CDE
4.4.1 CDE簡介
4.4.2 CDE的桌面配置
4.4.3 CDE的啟動
4.5 常見問題
4.5.1 圖形介面沒有啟動怎麼辦
4.5.2 如何選擇桌面環境
4.5.3 常見的Linux桌面系統有哪些
4.5.4 如何進行桌面環境之間的切換
4.6 小結
Chapter 05 軟體管理:軟體套件
5.1 什麼是軟體套件
5.1.1 什麼是軟體套件
5.1.2 軟體套件的命名約定
5.1.3 軟體安裝步驟
5.2 Solaris的軟體套件管理
5.2.1 Solaris軟體套件概述
5.2.2 傳統的軟體套件管理
5.2.3 映射套件管理系統
5.3 FreeBSD的軟體套件管理
5.3.1 Ports系統和Packages系統
5.3.2 獲得Ports集合
5.3.3 使用Ports系統安裝軟體套件
5.3.4 移除已經安裝的Ports
5.3.5 升級Ports
5.3.6 Ports和磁碟空間
5.3.7 安裝二進位軟體套件
5.3.8 檢視軟體套件的資訊
5.3.9 刪除二進位軟體套件
5.3.10 如何找到所要的軟體套件
5.4 CentOS的軟體套件管理
5.4.1 RPM概述
5.4.2 使用rpm指令查詢軟體套件
5.4.3 使用rpm指令安裝軟體套件
5.4.4 使用rpm指令升級軟體套件
5.4.5 使用rpm指令刪除軟體套件
5.4.6 使用rpm指令驗證軟體套件
5.4.7 YUM概述
5.4.8 設定更新源
5.4.9 使用yum指令列出軟體套件
5.4.10 使用yum指令安裝軟體套件
5.4.11 使用yum指令搜索軟體套件
5.4.12 使用yum指令刪除軟體套件
5.4.13 使用yum指令更新軟體套件
5.4.14 使用yum指令檢視軟體套件
5.4.15 軟體套件組的管理
5.5 其他Linux的軟體套件管理
5.5.1 Fedora的軟體套件管理
5.5.2 Ubuntu的軟體套件管理
5.5.3 Debian的軟體套件管理
5.6 常見問題
5.6.1 如何安裝tar.gz原始程式碼套件
5.6.2 如何安裝tar.bz2原始程式碼套件
5.7 小結
Chapter 06 UNIX使用者、使用者群組管理
6.1 UNIX使用者、使用者群組以及角色簡介
6.1.1 使用者、使用者群組以及角色概述
6.1.2 什麼是使用者
6.1.3 什麼是系統管理員
6.1.4 什麼是超級使用者
6.1.5 什麼是使用者群組
6.1.6 UNIX 中的系統使用者和使用者群組
6.1.7 什麼是角色
6.1.8 與使用者有關的設定檔
6.2 增加使用者
6.2.1 使用預設選項增加使用者
6.2.2 為使用者指定家目錄
6.2.3 為使用者指定預設Shell
6.2.4 為使用者指定群組
6.2.5 為使用者指定UID
6.2.6 了解/etc/passwd 檔案
6.2.7 使用圖形介面增加使用者
6.3 修改使用者
6.3.1 修改使用者登入名稱
6.3.2 修改登入名稱的有效期限
6.3.3 修改使用者所屬的群組
6.3.4 修改使用者家目錄
6.3.5 修改使用者預設的Shell
6.4 刪除使用者
6.4.1 使用預設選項刪除使用者
6.4.2 刪除使用者及其家目錄
6.4.3 使用圖形介面刪除使用者
6.5 增加群組
6.5.1 群組名稱的約定
6.5.2 使用預設選項增加群組
6.5.3 指定群組ID
6.5.4 指定重複的群組ID
6.5.5 使用圖形介面增加使用者群組
6.6 修改群組
6.6.1 修改群組名稱
6.6.2 修改群組ID
6.6.3 指定重複的群組ID
6.7 刪除群組
6.8 增加角色
6.8.1 指定角色家目錄
6.8.2 指定角色家目錄
6.8.3 指定角色的使用者群組
6.8.4 指定角色的有效期
6.8.5 指定角色的UID
6.8.6 指定角色預設的Shell
6.8.7 指定角色的成員
6.8.8 為角色授權
6.9 修改角色
6.9.1 修改角色名稱
6.9.2 修改角色家目錄
6.9.3 修改角色的主群組
6.9.4 修改角色的有效期
6.9.5 修改角色預設的Shell
6.9.6 修改角色的授權
6.10 刪除角色
6.10.1 使用預設選項刪除角色
6.10.2 刪除角色家目錄
6.11 常見問題
6.11.1 在UNIX 中增加一個使用者的過程為何
6.11.2 如何增加一個與root 相同許可權的使用者
6.11.3 如何在Linux 中管理使用者
6.11.4 如何在Linux 中管理使用者群組
6.12 小結
Chapter 07 UNIX 目錄和檔案的操作
7.1 了解UNIX 中的檔案型態
7.1.1 什麼是檔案
7.1.2 檔案型態
7.1.3 目錄和子目錄
7.1.4 連結檔案
7.1.5 裝置檔案
7.1.6 具名管道
7.1.7 proc檔案
7.2 檔案操作
7.2.1 建立檔案
7.2.2 命名檔案
7.2.3 複製檔案
7.2.4 將檔案複製到目錄中
7.2.5 移動檔案
7.2.6 重新命名檔案
7.2.7 刪除檔案
7.2.8 如何防止誤刪檔案
7.3 目錄操作
7.3.1 路徑名稱與工作目錄
7.3.2 路徑名稱縮寫
7.3.3 顯示目前路徑
7.3.4 切換工作目錄
7.3.5 建立目錄
7.3.6 刪除目錄
7.3.7 將目錄複寫到目錄中
7.3.8 移動檔案
7.3.9 重新命名檔案或目錄
7.3.10 列出目錄內容
7.3.11 萬用字元
7.3.12 顯示目錄樹
7.4 檔案和目錄許可權
7.4.1 檔案的所有權
7.4.2 檔案許可權
7.4.3 UNIX維護許可權的方式
7.4.4 顯示檔案許可權
7.4.5 檔案模式
7.4.6 相對許可權設定
7.4.7 絕對許可權設定
7.4.8 遞迴許可權設定
7.4.9 改變檔案的所有權
7.4.10 改變檔案的群組所有權
7.4.11 特殊許可權
7.4.12 許可權隱藏
7.5 搜索檔案
7.5.1 指令的好幫手:whereis指令
7.5.2 透過搜索資料庫來搜索檔案:locate指令
7.5.3 透過搜索目錄樹來搜索檔案:find指令
7.6 檔案壓縮與歸檔
7.6.1 壓縮與解壓縮指令:gzip和gunzip
7.6.2 壓縮與解壓縮指令:bzip2和bunzip2
7.6.3 歸檔指令:tar
7.7 檔案處理相關指令
7.7.1 檔案型態識別:file
7.7.2 統計行數、字數以及字元數:wc
7.7.3 資料的八進位顯示:od
7.7.4 檔案比較:cmp
7.7.5 找出兩個檔案的相同之處:comm
7.7.6 顯示檔案的差異:diff和diff3
7.7.7 檔案內容的排序:sort
7.7.8 搜索檔案內容:grep
7.7.9 顯示檔案內容:cat
7.7.10 分頁顯示檔案內容:more和less
7.7.11 顯示檔案前面幾行內容:head
7.7.12 顯示檔案最後幾行內容:tail
7.8 vi文字編輯器
7.8.1 vi歷史簡介
7.8.2 啟動vi
7.8.3 vi工作模式
7.8.4 儲存檔案
7.8.5 退出vi
7.8.6 建立新檔案
7.8.7 移動游標
7.8.9 使用行號
7.8.10 插入文字
7.8.11 刪除文字
7.8.12 取消或重複改變
7.8.13 複製和貼上文字
7.9 常見問題
7.9.1 UNIX 和Linux 中的檔案型態有何不同
7.9.2 Linux 系統中的ll 指令的由來
7.9.3 Linux 系統中的cp、rm 和mv 指令
7.10 小結
Chapter 08 磁碟管理
8.1 磁碟管理中的基本概念
8.1.1 磁軌
8.1.2 磁區
8.1.3 磁柱
8.1.4 磁段
8.1.5 磁碟控制卡
8.1.6 磁碟裝置命名約定
8.2 在Solaris 中安裝磁碟
8.2.1 連接磁碟
8.2.2 建立磁碟裝置檔案
8.2.3 格式化磁碟
8.2.4 建立Solaris fdisk 分區
8.2.5 磁碟分割和標記磁碟
8.2.6 建立檔案系統
8.3 在FreeBSD 中安裝磁碟
8.3.1 連接磁碟
8.3.2 建立磁碟裝置檔案
8.3.3 建立磁碟分割
8.3.4 建立磁碟標籤
8.3.5 建立檔案系統
8.4 常見問題
8.4.1 什麼是實體卷冊、卷冊群組和邏輯卷冊
8.4.2 什麼是原生設備
8.4.3 如何在Linux 中增加新的硬碟
8.5 小結
Chapter 09 UNIX 檔案系統
9.1 UNIX 檔案系統概述
9.1.1 UNIX 檔案系統的歷史
9.1.2 UNIX 檔案系統型態
9.1.3 記錄檔系統
9.1.4 BSD 系統的soft updates
9.1.5 預設的本機檔案系統
9.1.6 目錄和檔案系統
9.2 監控檔案系統
9.2.1 監控磁碟剩餘空間
9.2.2 監控磁碟使用情況
9.3 建立檔案系統
9.3.1 newfs 指令及其選項
9.3.2 在FreeBSD 中建立檔案系統
9.3.3 在Solaris 中建立檔案系統
9.4 掛載和移除檔案系統
9.4.1 掛載點
9.4.2 顯示目前已經掛載的檔案系統
9.4.3 檔案系統掛載選項
9.4.4 掛載UFS 檔案系統
9.4.5 以唯讀的方式掛載檔案系統
9.4.6 強制掛載檔案系統
9.4.7 了解檔案系統設定檔
9.4.9 移除檔案系統
9.4.10 找出誰在使用檔案系統
9.4.11 強制移除檔案系統
9.5 掛載和移除來自其他系統的檔案系統
9.5.1 核心與檔案系統
9.5.2 掛載MS-DOS 檔案系統
9.5.3 掛載NTFS 檔案系統
9.5.4 掛載Linux檔案系統
9.5.5 掛載和移除以CD-ROM為基礎的檔案系統
9.5.6 掛載和移除以USB為基礎的檔案系統
9.6 檢查和修復檔案系統
9.6.1 fsck指令簡介
9.6.2 fsck指令的工作過程
9.6.3 使用fsck檢查和修復檔案系統
9.7 磁碟配額
9.7.1 什麼是磁碟配額
9.7.2 分配磁碟配額
9.8 Linux檔案系統管理
9.8.1 Linux檔案系統概述
9.8.2 建立ext2/ext3/etx4檔案系統
9.8.3 掛載和移除ext2/ext3/etx4檔案系統
9.8.4 了解Linux檔案系統設定檔
9.8.5 檢查ext2/ext3/etx4檔案系統
9.8.6 管理ext2/ext3/etx4檔案系統標籤
9.8.7 管理磁碟配額
9.8.8 掛載和移除來自其他作業系統的檔案系統
9.8.9 掛載以CD-ROM為基礎的檔案系統
9.8.10 掛載和移除以USB為基礎的檔案系統
9.9 常見問題
9.9.1 什麼是ZFS檔案系統
9.9.2 什麼是HSFS檔案系統
9.9.3 什麼是PCFS檔案系統
9.9.4 如何備份和恢復檔案系統
9.10 小結
Chapter 10 處理程序和作業
10.1 概述
10.1.1 處理程序的基本概念
10.1.2 處理程序和程式的區別
10.1.3 處理程序ID
10.1.4 系統呼叫
10.1.5 處理程序的生命週期
10.1.6 處理程序的狀態
10.1.7 孤兒處理程序和僵屍處理程序
10.1.8 誰是第一個處理程序
10.1.10 前台處理程序和後台處理程序
10.1.11 守護處理程序
10.2 監視處理程序
10.2.1 基本ps指令
10.2.2 熟悉ps指令:列出所有的處理程序
10.2.3 熟悉ps指令:列出某個使用者的處理程序
10.2.4 熟悉ps指令:列出指定ID的處理程序
10.2.5 熟悉ps指令:控制輸出格式
10.2.6 熟悉ps指令:檢視狀態
10.2.7 搜索處理程序
10.2.8 監控處理程序
10.2.9 顯示處理程序樹
10.3 控制處理程序
10.3.1 設定處理程序的優先順序
10.3.2 改變處理程序的優先順序
10.3.3 刪除處理程序
10.3.4 訊號
10.4 作業控制
10.4.1 什麼是作業
10.4.2 後台執行作業
10.4.3 暫停作業
10.4.4 暫停Shell
10.4.5 顯示作業清單
10.4.6 將作業移至後台
10.4.7 將作業移至前台
10.4.8 作業排程:cron
10.5 常見問題
10.5.1 了解交換處理程序與init 處理程序
10.5.2 處理程序間的通訊有哪些方式
10.5.3 什麼是Shell 處理程序
10.6 小結
Chapter 11 網路管理
11.1 TCP/IP 協定簡介
11.1.1 TCP/IP 協定和Internet
11.1.2 TCP/IP 協定網路模型
11.1.3 通訊埠
11.2 IP 位址
11.2.1 IP 位址分類
11.2.2 子網和子網路遮罩
11.2.3 專用位址和NAT
11.2.4 IPv6 定址
11.3 網路介面設定
11.3.1 ifconfig 指令
11.3.2 列出可用的網路介面
11.3.3 修改網路介面參數
11.3.4 給一個網路介面設定多個IP 位址
11.3.5 設定DHCP 支援
11.3.6 關閉或啟動網路介面
11.4 路由
11.4.1 路由表
11.4.2 靜態路由
11.4.3 預設路由
11.5 名稱解析
11.5.1 主機名稱和域名
11.5.2 DNS 用戶端設定
11.6 常見問題
11.6.1 什麼時候使用專用IP 位址
11.6.2 如何確定網路位址的範圍
11.6.3 如何在Linux下設定網路介面
11.6.4 如何在Linux下設定靜態和動態路由
11.6.5 如何在Linux下設定DNS 用戶端
11.7 小結
Chapter 12 DNS 伺服器
12.1 DNS 的起源和背景
12.1.1 DNS 的歷史
12.1.2 DNS 概述
12.1.3 域名空間和系統結構
12.1.4 域和域名
12.1.5 區域和域的不同
12.1.6 DNS 伺服器的型態
12.1.7 DNS 基本原理
12.2 BIND 及其安裝方法
12.2.1 關於BIND
12.2.2 以二進位軟體套件的方式安裝Bind 9
12.2.3 以原始程式碼的方式安裝BIND 9
12.2.4 啟動和停止BIND 9
12.3 設定BIND 9
12.3.1 BIND 設定檔概述
12.3.2 主設定檔named.conf
12.3.3 定義地址比對列表
12.3.4 定義控制通道
12.3.5 包含外部檔案
12.3.6 定義共用金鑰
12.3.7 定義通道
12.3.8 使用通道分類
12.3.9 設定選項
12.3.10 定義遠端伺服器
12.3.11 定義視圖
12.3.12 定義區域
12.3.13 根提示檔案
12.4 DNS資料庫
12.4.1 資源記錄
12.4.2 SOA記錄
12.4.3 NS記錄
12.4.4 A記錄
12.4.5 PTR記錄
12.4.6 MX記錄
12.4.7 CNAME記錄
12.4.8 區域檔案中的指令
12.5 BIND 9的安全管理
12.5.1 name.conf檔案中的安全選項
12.5.2 存取控制清單
12.5.3 限制named
12.5.4 使用TSIG和TKEY保障伺服器之間通訊的安全
12.6 BIND 9的測試和偵錯
12.6.1 記錄檔系統
12.6.2 偵錯等級
12.6.3 使用rndc工具偵錯BIND
12.6.4 使用nslookup、dig和host工具偵錯BIND
12.7 常見問題
12.7.1 如何設定一個虛擬的DNS伺服器,僅供本機查詢
12.7.2 如何使得DNS伺服器供外部電腦查詢
12.8 小結
Chapter 13 DHCP伺服器
13.1 DHCP概述
13.1.1 什麼是DHCP
13.1.2 作用域
13.1.3 超級作用域
13.1.4 位址集區
13.1.5 租約
13.1.6 DHCP工作原理
13.2 安裝DHCP伺服器
13.2.1 DHCP伺服器軟體
13.2.2 ISC DHCP伺服器的安裝
13.3 DHCP伺服器的正常設定
13.3.1 DHCP伺服器設定流程
13.3.2 DHCP主設定檔
13.3.3 常用參數介紹
13.3.4 常用宣告敘述介紹
13.3.5 常用選項介紹
13.3.6 租約資料庫檔案
13.3.7 管理DHCP服務
13.3.8 IP位址綁定
13.4 DHCP客戶端設定
13.4.1 UNIX DHCP客戶端設定
13.4.2 Linux DHCP客戶端設定
13.4.3 Windows DHCP客戶端設定
13.5 常見問題
13.5.1 多個網路卡時的DHCP伺服器設定
13.5.2 如何檢視DHCP伺服器狀態
13.6 小結
Chapter 12 FTP 伺服器
14.1 檔案傳輸通訊協定概述
14.1.1 什麼是檔案傳輸通訊協定
14.1.2 資料傳輸模式
14.1.3 匿名FTP 和使用者FTP
14.1.4 FTP 伺服器軟體
14.2 安裝FTP 伺服器
14.2.1 在Solaris 11 上安裝FTP 伺服器
14.2.2 在FreeBSD 上安裝vsftpd
14.2.3 在FreeBSD 上安裝ProFTPD
14.3 設定vsftpd 伺服器
14.3.1 vsftpd 主設定檔
14.3.2 使用者選項
14.3.3 連接選項
14.3.4 效能與負載控制選項
14.3.5 安全選項
14.3.6 設定FTP 使用者磁碟配額
14.3.7 設定匿名使用者存取
14.4 設定ProFTPD 伺服器
14.4.1 設定ProFTPD 啟動方式
14.4.2 ProFTPD 的元件
14.4.3 proftpd.conf 檔案的基本語法
14.4.4 最簡單的ProFTPD 設定檔範例
14.4.5 ProFTPD 設定檔指令
14.4.6 設定普通使用者
14.4.7 設定匿名使用者
14.5 用戶端連接FTP 伺服器
14.5.1 使用命令列工具存取FTP 伺服器
14.5.2 使用FTP 用戶端軟體存取FTP 伺服器
14.5.3 使用web 瀏覽器存取FTP 伺服器
14.6 常見問題
14.6.1 如何允許或禁止本機使用者透過vsftpd 上傳或下載檔案
14.6.2 解決檔案時間錯誤問題
14.6.3 如何更改FTP 服務通訊埠
14.6.4 如何將使用者鎖定在家目錄
14.6.5 如何允許匿名使用者上傳或下載檔案
14.6.6 如何限制使用者上傳或下載速度
14.6.7 如何在Linux 中安裝vsftpd
14.6.8 vsftpd 元件及其位置為何
14.6.9 如何在Linux 中管理vsftpd 服務
14.6.10 如何在Linux 中安裝ProFTPD
14.7 小結
Chapter 15 網路檔案系統
15.1 NFS 概述
15.1.1 什麼是NFS
15.1.2 NFS 的應用
15.2 設定NFS 伺服器
15.2.1 NFS 伺服器概述
15.2.2 share 指令與dfstab 檔案
15.2.3 exportfs 指令與exports 檔案
15.2.4 檢視共用資源
15.3 設定NFS 用戶端
15.3.1 掛載遠端檔案系統
15.3.2 設定/etc/vfstab 或/etc/fstab 檔案
15.3.3 自動掛載
15.3.4 主映射檔案
15.3.5 直接映射檔案
15.3.6 間接映射檔案
15.4 常見問題
15.4.1 無法掛載NFS 共用目錄的常見原因有哪些
15.4.2 如何在Linux 中安裝NFS 伺服器
15.4.3 如何在Linux中設定NFS伺服器
15.4.4 如何在Linux中啟動NFS服務
15.4.5 如何在Linux中檢視NFS服務狀態
15.5 小結
Chapter 16 郵件伺服器
16.1 電子郵件服務概述
16.1.1 電子郵件系統的組成
16.1.2 電子郵件的工作原理
16.1.3 簡單郵件傳輸協定SMTP
16.1.4 郵局協定POP3
16.1.5 Internet訊息存取協定IMAP
16.1.6 電子郵件與域名的關係
16.1.7 常見的郵件伺服器簡介
16.2 Sendmail郵件伺服器
16.2.1 Sendmail組成部分
16.2.2 使用m4前置處理器
16.2.3 Sendmail範例設定檔
16.2.4 從範例檔案建構設定檔
16.2.5 表和資料庫
16.2.6 安裝Sendmail
16.2.7 設定Sendmail監聽地址
16.2.8 設定主機別名
16.2.9 設定郵件別名
16.2.10 設定郵件伺服器存取權限
16.3 Dovecot的安裝與設定
16.3.1 Dovecot概述
16.3.2 安裝Dovecot
16.3.3 設定Dovecot
16.4 郵件系統綜合實例
16.4.1 設定DNS
16.4.2 設定Sendmail
16.4.3 設定Dovecot
16.4.4 設定郵件用戶端
16.5 以Web方式收發郵件
16.5.1 安裝SquirrelMail
16.5.2 設定SquirrelMail
16.5.3 使用SquirrelMail收發郵件
16.6 常見問題
16.6.1 如何允許某個網路的電腦透過Sendmail發送郵件
16.6.2 如何讓使用者擁有自己的電子郵件地址
16.6.3 如何簡化電子郵件地址
16.6.4 如何拒絕某個來源地址的郵件
16.6.5 如何建立一個郵寄清單
16.7 小結
Chapter 17 遠端登入與控制
17.1 Telnet服務
17.1.1 Telnet概述
17.1.2 安裝Telnet服務
17.1.3 設定Telnet服務
17.1.4 啟動和停止Telnet服務
17.1.5 使用Telnet用戶端
17.2 SSH服務
17.2.1 SSH概述
17.2.2 安裝OpenSSH伺服器
17.2.3 OpenSSH元件列表
17.2.4 設定OpenSSH服務
17.2.5 啟動和停止OpenSSH服務
17.2.6 使用SSH用戶端
17.3 VNC服務
17.3.1 VNC概述
17.3.2 安裝VNC伺服器
17.3.3 設定VNC伺服器
17.3.4 VNC 用戶端的使用
17.4 常見問題
17.4.1 為什麼不使用Telnet
17.4.2 如何修改SSH 服務的通訊埠號
17.4.3 如何重新產生SSH 服務公共金鑰
17.4.4 如何透過Putty 連接SSH 伺服器
17.4.5 如何在Linux 上安裝和設定Telnet服務
17.4.6 如何在Linux 上設定OpenSSH
17.4.7 如何在Linux 上設定VNC 伺服器
17.5 小結
Chapter 18 代理伺服器
18.1 代理伺服器介紹
18.1.1 代理和代理伺服器
18.1.2 代理伺服器工作原理
18.1.3 代理伺服器型態
18.2 安裝Squid 代理伺服器
18.2.1 Squid 伺服器簡介
18.2.2 安裝Squid 伺服器
18.2.3 啟動和關閉Squid 伺服器
18.3 設定Squid
18.3.1 Squid 的主設定檔squid.conf
18.3.2 設定錯誤提示檔案
18.3.3 設定透明代理
18.3.4 設定反向代理
18.4 安全管理Squid
18.4.1 存取控制清單
18.4.2 控制HTTP 請求
18.4.3 身份認證
18.5 Squid 記錄檔管理
18.5.1 access_log 記錄檔
18.5.2 cache.log 記錄檔
18.5.3 store.log 記錄檔
18.6 使用Web 方式管理Squid
18.6.1 cachemgr.cgi 程式
18.6.2 設定cachemgr
18.6.3 透過瀏覽器管理Squid
18.7 設定代理伺服器用戶端
18.7.1 設定UNIX/Linux 用戶端
18.7.2 設定Windows 用戶端
18.8 常見問題
18.8.1 如何增加對使用Squid 時間的控制
18.8.2 如何限制使用者不能存取某個網站
18.8.3 如何限制使用者不能下載某種型態的檔案
18.9 小結
Chapter 19 UNIX 安全管理
19.1 使用者帳號和密碼安全
19.1.1 刪除或禁用不必要的使用者
19.1.2 使用安全的使用者密碼
19.1.3 制訂密碼策略
19.1.4 確保只有一個root 使用者
19.1.5 不要將檔案路徑中的"." 加入到PATH 變數
19.2 網路安全
19.2.1 禁止ping 指令
19.2.2 管理服務通訊埠
19.2.3 使用安全的網路服務
19.3 檔案系統的安全
19.3.1 嚴格管理檔案的共用
19.3.2 特殊的檔案許可權:setuid 和setgid
19.3.3 沒有所有者的檔案
19.3.4 規劃好磁碟分割
19.3.5 使用合適的mount選項
19.4 備份與恢復
19.4.1 使用tar指令備份
19.4.2 專用的備份恢復工具:dump和restore
19.4.3 底層操作指令:dd
19.4.4 資料備份的實體安全
19.5 記錄檔管理
19.5.1 檢視目前登入的使用者
19.5.2 檢視使用者歷史登入記錄檔
19.5.3 檢視認證記錄檔
19.5.4 檢視整體系統記錄檔
19.5.5 檢視計畫工作記錄檔
19.5.6 檢視歷史指令記錄檔
19.5.7 確保記錄檔的安全
19.6 常見問題
19.6.1 如何允許或禁止root使用者透過SSH登入系統
19.6.2 如何了解chroot
19.6.3 什麼是阻斷式攻擊
19.6.4 什麼是資源耗盡
19.7 小結
Chapter 20 Shell程式設計
20.1 Shell程式設計基礎知識
20.1.1 什麼是Shell指令稿
20.1.2 撰寫簡單的Shell指令稿
20.1.3 常數
20.1.4 變數
20.1.5 註釋
20.1.6 單引號和雙引號
20.1.7 如何執行Shell程式
20.2 條件測試
20.2.1 數值比較
20.2.2 字串比較
20.2.3 檔案測試
20.2.4 條件測試的邏輯運算子
20.3 條件判斷敘述
20.3.1 if-then-else分支結構
20.3.2 case分支結構
20.4 迴圈敘述
20.4.1 for迴圈結構
20.4.2 while迴圈結構
20.4.3 until迴圈結構
20.4.4 迴圈控制
20.5 指令稿參數與互動
20.5.1 向指令稿傳遞參數
20.5.2 使用者互動
20.5.3 特殊變數
20.6 常見問題
20.6.1 如何在程式中使用Shell的變數的值 20-28
20.6.2 是否可以將參數一次只傳遞一個給Shell指令稿
20.6.3 如何檢查一個變數是否包含值
20.6.4 如何獲得後台指令執行時期的輸出
20.6.5 如何刪除某個目錄下比對某個特定名字的所有檔案
20.6.6 如何快速清空或建立一個檔案
20.7 小結