Product SiteDocumentation Site

Debian 8

The Debian Administrator's Handbook

Debian Jessie from Discovery to Mastery

版 1

Raphaël Hertzog

法律聲明

ISBN: 979-10-91414-04-3 (English paperback)
ISBN: 979-10-91414-05-0 (English ebook)
This book is available under the terms of two licenses compatible with the Debian Free Software Guidelines.
Creative Commons License Notice:
This book is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.
GNU General Public License Notice:
This book is free documentation: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version.
This book is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.

Show your appreciation

This book is published under a free license because we want everybody to benefit from it. That said maintaining it takes time and lots of effort, and we appreciate being thanked for this. If you find this book valuable, please consider contributing to its continued maintenance either by buying a paperback copy or by making a donation through the book's official website:

摘要

A reference book presenting the Debian distribution, from initial installation to configuration of services.
前言
1. 為什麼寫這本書?
2. 為誰而寫?
3. 一般方法
4. 本書架構
5. 致謝
5.1. 簡史
5.2. 英文版誕生
5.3. 法文版的自由
5.4. 對貢獻者的感謝
5.5. 感謝翻譯者
5.6. Raphaël 的個人謝辭
5.7. 對 Roland 的致謝
1. Debian 計畫
1.1. Debian 是什麼?
1.1.1. 跨平台作業系統
1.1.2. 自由軟體的品質
1.1.3. 法律框架:非營利組織
1.2. 基金會文件
1.2.1. 使用者的承諾
1.2.2. Debian 自由軟體指導方針
1.3. Debian 的內部作業
1.3.1. Debian 發展者
1.3.2. 使用者的積極角色
1.3.3. 團隊與子計畫
1.4. 跟著 Debian 最新消息
1.5. 發行版的角色
1.5.1. 安裝器:debian-installer
1.5.2. 軟體程式庫
1.6. 釋出週期
1.6.1. 實驗狀態
1.6.2. 不穩定狀態
1.6.3. 移殖至測試
1.6.4. 從測試版穩定版
1.6.5. 舊穩定版更舊穩定版狀態
2. 個案呈現
2.1. 高速成長的資訊科技需求
2.2. 總體規畫
2.3. 為什麼選擇 GNU/Linux 發行版?
2.4. 為什麼選擇 Debian 發行版?
2.4.1. 商業與社群推動的發行版
2.5. 為什麼選 Debian Jessie?
3. 分析當前設置與移殖
3.1. 在異質環境中共存
3.1.1. 與視窗機器整合
3.1.2. 與 OS X 機器整合
3.1.3. 與其他 Linux/Unix 機器整合
3.2. 移殖的方法
3.2.1. 調查與鑑定服務內容
3.2.2. 備份組態
3.2.3. 接手現有的 Debian 伺服器
3.2.4. 安裝 Debian
3.2.5. 安裝與組態選定的服務
4. 安裝
4.1. 安裝方式
4.1.1. 從 CD-ROM/DVD-ROM 安裝
4.1.2. 從 USB 隨身碟啟動
4.1.3. 從網路安裝
4.1.4. 其他安裝方法
4.2. 安裝,一步步來
4.2.1. 啟動程式與啟動安裝器
4.2.2. 選定語系
4.2.3. 選擇國家
4.2.4. 選擇鍵盤布局
4.2.5. 偵測硬體
4.2.6. 載入套件
4.2.7. 偵測網路硬體
4.2.8. 組態網路
4.2.9. 管理員密碼
4.2.10. 新增第一個使用者
4.2.11. 組態時鐘
4.2.12. 偵測磁碟與其他設備
4.2.13. 開始分區的工具
4.2.14. 安裝基本系統
4.2.15. 組態套件管理器 (apt)
4.2.16. Debian 套件流行競賽
4.2.17. 選擇安裝的套件
4.2.18. 安裝 GRUB 啟動程式
4.2.19. 安裝完成並重開機
4.3. 首次啟動之後
4.3.1. 安裝其他軟體
4.3.2. 系統升級
5. 套件系統:工具與基本原則
5.1. 執行檔套件的結構
5.2. 套件元資訊
5.2.1. 描述:control 檔案
5.2.2. 組態腳本
5.2.3. 校驗,組態檔案清單
5.3. 原始套件的結構
5.3.1. 格式
5.3.2. Debian 內的使用
5.4. 以 dpkg 管理套件
5.4.1. 安裝套件
5.4.2. 移除套件
5.4.3. 查詢 dpkg 的資料庫與檢查 .deb 檔案
5.4.4. dpkg 的日誌檔
5.4.5. 多架構支援
5.5. 與其他打包系統共存
6. 維護與更新:APT 工具
6.1. 寫入 sources.list 檔案
6.1.1. 語法
6.1.2. 穩定版 使用者的典藏庫
6.1.3. 供 測試版/不穩定版 使用者的典藏庫
6.1.4. 非官方資源:mentors.debian.net
6.1.5. Debian 套件快取代理
6.2. aptitudeapt-get、與 apt 命令
6.2.1. 初始化
6.2.2. 安裝與移除
6.2.3. 系統升級
6.2.4. 組態選項
6.2.5. 管理套件優先性
6.2.6. 在多個發行版工作
6.2.7. 自動追蹤已安裝的套件
6.3. The apt-cache 命令
6.4. 前置:aptitudesynaptic
6.4.1. aptitude
6.4.2. synaptic
6.5. 檢查套件真偽
6.6. 升級至下個穩定發行版
6.6.1. 建議程序
6.6.2. 處理升級後的問題
6.7. 保持系統在最新狀態
6.8. 自動升級
6.8.1. 組態 dpkg
6.8.2. 組態 APT
6.8.3. 組態 debconf
6.8.4. 處理命令列介面
6.8.5. 神奇的組合
6.9. 搜尋套件
7. 解決問題與找到相關資訊
7.1. 文件來源
7.1.1. 手冊頁面
7.1.2. info 文件
7.1.3. 特定文件
7.1.4. 網站
7.1.5. 教學文件 (HOWTO)
7.2. 通常步驟
7.2.1. 組態程式
7.2.2. 監控後台進程的工作
7.2.3. 通過郵件列表尋求幫助
7.2.4. 以錯誤報告棘手的問題
8. 基本組態:網路、帳號、列印...
8.1. 組態系統供其他語系使用
8.1.1. 設定預設語系
8.1.2. 組態鍵盤
8.1.3. 移殖至 UTF-8
8.2. 組態網路
8.2.1. Ethernet 介面
8.2.2. 經由 PSTN 數據機的 PPP 連結
8.2.3. 以 ADSL 數據連結
8.2.4. 網路自動組態漫遊使用者
8.3. 設定主機名稱與組態名稱服務
8.3.1. 名稱解析
8.4. 使用者與群組資料庫
8.4.1. 使用者清單:/etc/passwd
8.4.2. 隱藏與加密的密碼檔:/etc/shadow
8.4.3. 修改既有的帳號或密碼
8.4.4. 帳號禁用
8.4.5. 群組清單:/etc/group
8.5. 新增帳號
8.6. Shell 環境
8.7. 列表機組態
8.8. 組態 Bootloader
8.8.1. 辨識磁碟
8.8.2. 組態 LILO
8.8.3. GRUB 2 組態
8.8.4. Macintosh 電腦 (PowerPC):組態 Yaboot
8.9. 其他組態:時間同步、記錄、共享近用…
8.9.1. 時區
8.9.2. 時間同步
8.9.3. 輪轉日誌檔
8.9.4. 共享管理員權限
8.9.5. 掛載點清單
8.9.6. locateupdatedb
8.10. 編譯核心
8.10.1. 簡介和先決條件
8.10.2. 取得原始碼
8.10.3. 組態核心
8.10.4. 編譯與建立套件
8.10.5. 編譯外部模組
8.10.6. 使用核心補丁
8.11. 安裝核心
8.11.1. Debian 核心套件的特色
8.11.2. 與 dpkg 整合
9. Unix 服務
9.1. 系統啟動
9.1.1. systemd 啟動系統
9.1.2. System V 初始系統
9.2. 遠端登入
9.2.1. 安全遠程登入:SSH
9.2.2. 使用遠端圖形桌面
9.3. 管理權限
9.4. 管理介面
9.4.1. 管理網頁介面:webmin
9.4.2. 組態套件:debconf
9.5. syslog 系統事件
9.5.1. 原則與機制
9.5.2. 組態檔案
9.6. The inetd 超級伺服器
9.7. 以 cronatd 使用排定的工作
9.7.1. crontab 檔案的格式
9.7.2. 使用 at 命令
9.8. 排定非同步工作:anacron
9.9. 配額
9.10. 備份
9.10.1. 使用 rsync 備份
9.10.2. 供備份恢復系統
9.11. 熱插拔:hotplug
9.11.1. 介绍
9.11.2. 命名問題
9.11.3. udev 的運作
9.11.4. 具體的例子
9.12. 電源管理:進階組態與電源介面 (ACPI)
10. 網路架構
10.1. 閘道器
10.2. 虛擬專用網路
10.2.1. OpenVPN
10.2.2. SSH 下的虛擬專屬網路
10.2.3. 網際網路安全協定
10.2.4. PPTP
10.3. Quality of Service
10.3.1. 原則與機制
10.3.2. Configuring and Implementing
10.4. Dynamic Routing
10.5. IPv6
10.5.1. Tunneling
10.6. Domain Name Servers (DNS)
10.6.1. 原則與機制
10.6.2. 配置
10.7. DHCP
10.7.1. 配置
10.7.2. DHCP and DNS
10.8. Network Diagnosis Tools
10.8.1. Local Diagnosis: netstat
10.8.2. Remote Diagnosis: nmap
10.8.3. Sniffers: tcpdump and wireshark
11. Network Services: Postfix, Apache, NFS, Samba, Squid, LDAP, SIP, XMPP, TURN
11.1. Mail Server
11.1.1. Installing Postfix
11.1.2. Configuring Virtual Domains
11.1.3. Restrictions for Receiving and Sending
11.1.4. Setting Up greylisting
11.1.5. Customizing Filters Based On the Recipient
11.1.6. Integrating an Antivirus
11.1.7. Authenticated SMTP
11.2. Web Server (HTTP)
11.2.1. Installing Apache
11.2.2. Configuring Virtual Hosts
11.2.3. Common Directives
11.2.4. Log Analyzers
11.3. FTP File Server
11.4. NFS File Server
11.4.1. Securing NFS
11.4.2. NFS Server
11.4.3. NFS Client
11.5. Setting Up Windows Shares with Samba
11.5.1. Samba Server
11.5.2. Samba Client
11.6. HTTP/FTP Proxy
11.6.1. 安裝
11.6.2. Configuring a Cache
11.6.3. Configuring a Filter
11.7. LDAP Directory
11.7.1. 安裝
11.7.2. Filling in the Directory
11.7.3. Managing Accounts with LDAP
11.8. Real-Time Communication Services
11.8.1. DNS settings for RTC services
11.8.2. TURN Server
11.8.3. SIP Proxy Server
11.8.4. XMPP Server
11.8.5. Running services on port 443
11.8.6. Adding WebRTC
12. 高級管理
12.1. RAID 和 LVM
12.1.1. 軟 RAID
12.1.2. LVM(邏輯卷管理)
12.1.3. RAID or LVM?
12.2. 虛擬化
12.2.1. Xen
12.2.2. LXC
12.2.3. KVM 虛擬化
12.3. Automated Installation
12.3.1. Fully Automatic Installer (FAI)
12.3.2. 預設值 Debian 安裝
12.3.3. Simple-CDD: The All-In-One Solution
12.4. 監控
12.4.1. 搭建 Munin
12.4.2. 搭建 Nagios
13. Workstation
13.1. Configuring the X11 Server
13.2. Customizing the Graphical Interface
13.2.1. Choosing a Display Manager
13.2.2. Choosing a Window Manager
13.2.3. Menu Management
13.3. Graphical Desktops
13.3.1. GNOME
13.3.2. KDE
13.3.3. Xfce and Others
13.4. Email
13.4.1. Evolution
13.4.2. KMail
13.4.3. Thunderbird and Icedove
13.5. Web Browsers
13.6. Development
13.6.1. Tools for GTK+ on GNOME
13.6.2. Tools for Qt on KDE
13.7. Collaborative Work
13.7.1. Working in Groups: groupware
13.7.2. Collaborative Work With FusionForge
13.8. Office Suites
13.9. Emulating Windows: Wine
13.10. Real-Time Communications software
14. Security
14.1. Defining a Security Policy
14.2. Firewall or Packet Filtering
14.2.1. Netfilter Behavior
14.2.2. Syntax of iptables and ip6tables
14.2.3. Creating Rules
14.2.4. Installing the Rules at Each Boot
14.3. Supervision: Prevention, Detection, Deterrence
14.3.1. Monitoring Logs with logcheck
14.3.2. Monitoring Activity
14.3.3. Detecting Changes
14.3.4. Detecting Intrusion (IDS/NIDS)
14.4. Introduction to AppArmor
14.4.1. Principles
14.4.2. Enabling AppArmor and managing AppArmor profiles
14.4.3. Creating a new profile
14.5. Introduction to SELinux
14.5.1. Principles
14.5.2. Setting Up SELinux
14.5.3. Managing an SELinux System
14.5.4. Adapting the Rules
14.6. Other Security-Related Considerations
14.6.1. Inherent Risks of Web Applications
14.6.2. Knowing What To Expect
14.6.3. Choosing the Software Wisely
14.6.4. Managing a Machine as a Whole
14.6.5. Users Are Players
14.6.6. Physical Security
14.6.7. Legal Liability
14.7. Dealing with a Compromised Machine
14.7.1. Detecting and Seeing the Cracker's Intrusion
14.7.2. Putting the Server Off-Line
14.7.3. Keeping Everything that Could Be Used as Evidence
14.7.4. Re-installing
14.7.5. Forensic Analysis
14.7.6. Reconstituting the Attack Scenario
15. Creating a Debian Package
15.1. Rebuilding a Package from its Sources
15.1.1. 取得原始碼
15.1.2. Making Changes
15.1.3. Starting the Rebuild
15.2. Building your First Package
15.2.1. Meta-Packages or Fake Packages
15.2.2. Simple File Archive
15.3. Creating a Package Repository for APT
15.4. Becoming a Package Maintainer
15.4.1. Learning to Make Packages
15.4.2. Acceptance Process
16. Conclusion: Debian's Future
16.1. Upcoming Developments
16.2. Debian's Future
16.3. Future of this Book
A. Derivative Distributions
A.1. Census and Cooperation
A.2. Ubuntu
A.3. Linux Mint
A.4. Knoppix
A.5. Aptosid and Siduction
A.6. Grml
A.7. Tails
A.8. Kali Linux
A.9. Devuan
A.10. Tanglu
A.11. DoudouLinux
A.12. Raspbian
A.13. And Many More
B. Short Remedial Course
B.1. Shell and Basic Commands
B.1.1. Browsing the Directory Tree and Managing Files
B.1.2. Displaying and Modifying Text Files
B.1.3. Searching for Files and within Files
B.1.4. Managing Processes
B.1.5. System Information: Memory, Disk Space, Identity
B.2. Organization of the Filesystem Hierarchy
B.2.1. The Root Directory
B.2.2. The User's Home Directory
B.3. Inner Workings of a Computer: the Different Layers Involved
B.3.1. The Deepest Layer: the Hardware
B.3.2. The Starter: the BIOS or UEFI
B.3.3. The Kernel
B.3.4. The User Space
B.4. Some Tasks Handled by the Kernel
B.4.1. Driving the Hardware
B.4.2. Filesystems
B.4.3. Shared Functions
B.4.4. Managing Processes
B.4.5. Rights Management
B.5. The User Space
B.5.1. Process
B.5.2. Daemons
B.5.3. Inter-Process Communications
B.5.4. Libraries