ubuntuftp目錄
1、首先,連接相應linux主機,進入到linux命令行狀態下,等待輸入shell指令。
⑵ 為什麼ubuntu的ftp能正常讀取目錄列表但無法上傳文件
登錄的用戶對目錄沒有寫許可權
⑶ 深入解析Ubuntu操作系統的目錄
第Ⅰ部分 安裝與配置
第1章 Ubuntu概述
1.1 什麼是Ubuntu
1.1.1 Ubuntu內部
1.1.2 Ubuntu的安裝特點
1.1.3 Ubuntu文件系統的特點
1.2 Ubuntu的商業應用
1.3 Ubuntu的個人應用
1.4 64位Ubuntu
1.5 基於PPC平台的Ubuntu
1.6 基於雙核處理器的Ubuntu
1.7 充分利用Ubuntu與Linux的文檔
1.8 Ubuntu開發者與文檔
1.9 閱讀參考
第2章 安裝Ubuntu前的准備
2.1 計劃Ubuntu的部署方案
2.1.1 商業部署需要考慮的因素
2.1.2 系統部署需要考慮的因素
2.1.3 用戶因素
2.1.4 預部署計劃的核對表
2.1.5 安裝計劃
2.2 硬體需求
2.2.1 安裝Ubuntu的最低硬體配置
2.2.2 在遺留的設備上安裝Ubuntu
2.2.3 為Ubuntu安裝分配硬碟空間
2.2.4 檢查硬體的兼容性
2.2.5 為潛在的硬體問題做准備
2.2.6 准備並使用硬體列表
2.3 安裝過程的准備
2.4 安裝前與安裝過程中的硬碟分區操作
2.4.1 選擇分區方案
2.4.2 將Linux文件系統安排到各個分區上
2.5 使用Ubuntu的kickstart安裝方式
2.6 閱讀參考
第3章 安裝Ubuntu
3.1 開始安裝前的准備
3.1.1 檢查硬體規格
3.1.2 安裝選項
3.1.3 計劃分區策略
3.1.4 引導程序
3.1.5 本地光碟安裝
3.2 逐步安裝
3.2.1 開始安裝
3.2.2 首次更新
3.3 關機
3.4 閱讀參考
第4章 安裝後的配置
4.1 安裝後配置問題的故障診斷
4.2 sudo命令
4.3 首次更新
4.4 配置軟體源
4.5 安裝顯卡驅動
4.6 更改Ubuntu的桌面風格
4.6.1 更改桌面背景
4.6.2 更改顏色
4.6.3 更改系統字體
4.7 首選行為
4.7.1 首選應用程序
4.7.2 Removable Drives and Media
4.8 輸入設備
4.8.1 鍵盤快捷鍵
4.8.2 鍵盤布局
4.8.3 滑鼠
4.9 檢測與配置數據機
4.9.1 配置串口數據機
4.9.2 為筆記本電腦配置WinModem
4.10 配置Ubuntu中的電源管理
4.11 重設日期和時間
4.11.1 使用date命令
4.11.2 使用hwclock命令
4.11.3 更改時間和日期
4.12 管理PCMCIA
4.12.1 使用PCMCIA
4.12.2 控制PCMCIA服務
4.13 配置與使用CD. DVD和CD-RW光碟機
4.14 配置無線網路
4.15 配置Firestarter
4.16 閱讀參考
第5章 Ubuntu初步
5.1 使用Linux文件系統
5.1.1 查看Linux文件系統
5.1.2 使用/bin和/sbin目錄下的基本命令
5.1.3 在/boot目錄和/dev目錄中存儲引導的內核和查看存儲設備
5.1.4 使用和編輯/etc目錄下的文件
5.1.5 保護用戶目錄/home中的內容
5.1.6 使用/proc目錄的內容與內核進行交互
5.1.7 使用/usr目錄下的共享數據
5.1.8 在/tmp目錄下存儲臨時文件
5.1.9 訪問/var目錄下的可變數據文件
5.2 登錄與使用Linux
5.2.1 基於文本的控制台登錄
5.2.2 使用虛擬控制台
5.2.3 在Linux控制台會話中使用簡單的鍵盤和滑鼠技巧
5.2.4 退出
5.2.5 從遠程計算機登錄與退出
5.3 修改用戶信息
5.4 閱讀文檔
5.4.1 使用手冊頁
5.4.2 查找和閱讀軟體包文檔
5.5 使用shell
5.5.1 使用環境變數
5.5.2 使用shell導航和搜索
5.5.3 使用shell管理文件
5.5.4 通過shell壓縮和解壓的文件
5.6 使用文本編輯器
5.6.1 使用vi
5.6.2 使用emacs
5.7 使用許可權
5.7.1 指派許可權
5.7.2 目錄許可權
5.7.3 理解設置用戶ID和設置組ID許可權
5.8 以root用戶身份工作
5.8.1 創建用戶
5.8.2 刪除用戶
5.8.3 關閉系統
5.8.4 重啟系統
5.9 閱讀參考
第6章 X Window系統
6.1 X的基本概念
6.2 使用X11R7
6.2.1 xorg.conf文件的元素
6.2.2 配置X
6.3 啟動X
6.3.1 使用顯示管理器
6.3.2 通過使用startx從控制台啟動X
6.4 選擇和使用窗口管理器
6.5 GNOME和KDE桌面環境
6.5.1 GNU網路對象模型環境GNOME)
6.5.2 K桌面環境(KD)
6.5.3 Xfce:備選的輕量級桌面環境
6.6 閱讀參考
第7章 管理軟體
7.1 使用Add/Remove Applications管理軟體
7.2 使用Synaptic管理軟體
7.3 保持最新
7.4 使用命令行
7.4.1 日常使用
7.4.2 查找軟體
7.5 從源代碼編譯軟體
7.6 閱讀參考
第8章 Internet應用:Web沖浪. 寫郵件. 讀新聞
8.1 選擇Web瀏覽器
8.1.1 Mozilla Firefox
8.1.2 Mozilla Suite
8.1.3 Epiphany
8.1.4 Konqueror
8.2 選擇電子郵件客戶端
8.2.1 Evolution
8.2.2 Mozilla Thunderbird
8.2.3 Balsa
8.2.4 KMail
8.2.5 Mozilla Mail
8.2.6 mail應用程序
8.2.7 mutt
8.2.8 其他郵件客戶端
8.3 網路新聞概述
8.4 選擇新聞閱讀器
8.4.1 slrn新聞客戶端
8.4.2 Pan新聞客戶端
8.4.3 Mozilla新聞客戶端
8.4.4 Thunderbird新聞客戶端
8.5 Internet Relay Chat
8.6 GAIM IM
8.7 使用Ekiga進行視頻會議
8.8 閱讀參考
第9章 生產應用程序
9.1 Ubuntu中的辦公套件
9.1.1 使用OpenOffice.org
9.1.2 使用OpenOffice.org Writer
9.1.3 使用OpenOffice.org Calc
9.1.4 使用GNOME Office
9.1.5 使用KOffice
9.2 為Microsoft Windows編寫的生產應用程序
9.3 閱讀參考
第10章 多媒體應用
10.1 在Ubuntu中燒錄CD和DVD
10.1.1 從命令行創建CD
10.1.2 從命令行創建DVD
10.1.3 使用Ubuntu的圖形界面客戶端創建CD和DVD
10.2 聲音和音樂
10.2.1 音效卡
10.2.2 錄音
10.2.3 聲音格式
10.2.4 翻錄音樂
10.2.5 音樂播放器
10.2.6 流式音頻
10.3 觀看電視和視頻
10.3.1 電視和視頻硬體
10.3.2 視頻格式
10.3.3 在Linux中觀看視頻
10.3.4 使用Linux觀看電視
10.3.5 個人錄像機
10.3.6 DVD和視頻播放器
10.4 閱讀參考
第11章 圖形處理
11.1 在Ubuntu中使用數碼相機
11.1.1 網路攝像頭
11.1.2 手持式數碼相機
11.1.3 使用F-Spot
11.2 在Ubuntu中使用掃描儀
11.2.1 使用圖形格式
11.2.2 捕獲屏幕圖像
11.3 閱讀參考
第12章 Ubuntu列印
12.1 Ubuntu列印概述
12.2 配置和管理列印服務
12.2.1 快速完成基於GUI的列印機配置
12.2.2 管理列印服務
12.3 創建和配置本地列印機
12.3.1 創建列印隊列
12.3.2 編輯列印機設置
12.4 閱讀參考
第13章 游戲
13.1 Linux游戲
13.1.1 安裝專有顯卡驅動程序
13.1.2 安裝DOOM 3
13.1.3 安裝Unreal Tournament 2004
13.1.4 安裝Quake 4
13.1.5 安裝Wolfenstein: Enemy Territory
13.1.6 安裝Battle for Wesnoth
13.1.7 使用Cedega玩Windows游戲
13.2 閱讀參考
第Ⅱ部分 系統管理
第14章 管理用戶
14.1 用戶賬戶
14.1.1 用戶ID和組ID
14.1.2 文件訪問許可權
14.2 用戶組管理
14.3 用戶管理
14.3.1 用戶管理工具
14.3.2 添加新用戶
14.3.3 監視用戶在系統上的行為
14.4 口令管理
14.4.1 系統口令策略
14.4.2 口令文件
14.4.3 shadow口令
14.4.4 管理用戶口令的安全性
14.4.5 用戶口令的批量更改
14.5 許可權提升
14.5.1 用su命令臨時改變用戶身份
14.5.2 適時地用sudo命令獲取root許可權
14.5.3 用受限shell控制用戶許可權
14.6 用戶登錄過程
14.7 磁碟配額
14.7.1 使用磁碟配額
14.7.2 手動配置磁碟配額
14.8 閱讀參考
第15章 自動執行任務
15.1 自啟動服務
15.1.1 開始啟動載入過程
15.1.2 載入Linux內核
15.1.3 系統服務和運行級別
15.1.4 運行級別的定義
15.1.5 啟動到默認運行級別
15.1.6 用GRUB啟動到非默認的運行級別
15.1.7 理解init腳本以及初始化的最後步驟
15.1.8 用管理工具控制自啟動服務
15.1.9 改變運行級別
15.1.10 利用運行級別排除故障
15.2 手動啟動和停止服務
15.3 計劃任務
15.3.1 使用at和batch命令制定計劃任務
15.3.2 使用cron命令重復執行任務
15.4 shell控制基礎
15.4.1 shell命令行
15.4.2 在shell中進行模式匹配
15.4.3 輸入輸出的重定向
15.4.4 管道數據
15.4.5 後台處理
15.5 編寫和執行shell腳本
15.5.1 運行shell腳本程序
15.5.2 系統啟動時自動載入shell腳本
15.5.3 使用指定的命令行解釋器運行shell腳本
15.5.4 在腳本中使用變數
15.5.5 給變數賦值
15.5.6 獲取變數的值
15.5.7 位置參數
15.5.8 位置參數實例
15.5.9 使用位置參數從命令行獲取變數
15.5.10 使用簡單的腳本自動執行任務
15.5.11 內置變數
15.5.12 特殊字元
15.5.13 用雙引號處理字元串中含有空格的變數
15.5.14 用單引號保留未被擴展的變數
15.5.15 使用反斜杠作為逃逸符號
15.5.16 使用backtick符號
15.5.17 pdksh和bash中的表達式比較
15.5.18 tcsh中的表達式比較
15.5.19 for語句
15.5.20 while語句
15.5.21 until語句
15.5.22 repeat語句(tcsh)
15.5.23 select語句(pdksh)
15.5.24 shift語句
15.5.25 if語句
15.5.26 case語句
15.5.27 break和exit語句
15.5.28 在shell腳本中使用函數
15.6 閱讀參考
第16章 系統資源
16.1 系統監視工具
16.1.1 控制台環境下的系統監視
16.1.2 使用kill命令控制進程
16.1.3 進程優先順序調度與控制
16.1.4 使用free命令顯示內存使用情況
16.1.5 磁碟配額
16.1.6 圖形界面的進程和系統管理工具
16.1.7 KDE桌面環境的進程和系統監視工具
16.2 閱讀參考
第17章 備份. 還原和恢復
17.1 選擇合適的備份策略
17.1.1 為什麼會丟失數據
17.1.2 備份需求與所需資源的評估
17.1.3 如何評價備份策略的好壞
17.1.4 做出選擇
17.2 選擇備份硬體和介質
17.2.1 可移動存儲介質
17.2.2 網路存儲
17.2.3 磁帶驅動器備份
17.3 使用備份軟體
17.3.1 tar:最基本的備份工具
17.3.2 GNOME中的File Roller軟體
17.3.3 KDE中的歸檔工具(KDE ark和kdat)
17.3.4 使用dd命令歸檔
17.3.5 使用Amanda備份程序
17.3.6 可供選擇的其他備份軟體
17.4 復制文件
17.4.1 用tar命令復制文件
17.4.2 壓縮. 加密和發送tar數據流
17.4.3 用cp命令復制文件
17.4.4 用mc命令復制文件
17.4.5 用scp命令復制文件
17.4.6 用rsync命令復制文件
17.5 恢復被刪除的文件
17.5.1 在遇到未知的文件系統錯誤時使用-S選項重新格式化
17.5.2 用mc命令恢復被刪除的文件
17.6 系統修復
17.6.1 Ubuntu系統修復盤
17.6.2 備份和恢復主引導記錄
17.6.3 從普通的可引導軟盤啟動系統
17.6.4 使用GRUB可引導軟盤
17.6.5 使用系統恢復功能
17.7 閱讀參考
第18章 網路連接
18.1 基礎:localhost介面
18.1.1 檢查loopback介面是否可用
18.1.2 手動配置loopback介面
18.2 TCP/IP網路
18.2.1 TCP/IP地址
18.2.2 在Ubuntu中使用IP偽裝技術
18.2.3 埠
18.3 網路結構
18.3.1 子網劃分
18.3.2 子網掩碼
18.3.3 廣播. 單播和多播地址
18.4 網路硬體設備
18.4.1 網卡
18.4.2 網線
18.4.3 集線器和交換機
18.4.4 路由器和網橋
18.4.5 初始化新的網路硬體
18.5 使用網路配置工具
18.5.1 在命令行中配置網路介面
18.5.2 網路配置文件
18.5.3 使用圖形界面配置工具
18.6 動態主機配置協議
18.6.1 DHCP工作原理
18.6.2 在安裝和啟動時激活DHCP
18.6.3 DHCP軟體的安裝和配置
18.6.4 使用DHCP配置網路主機
18.6.5 DHCP的其他用途
18.7 無線網路
18.7.1 Ubuntu對無線網路的支持..
18.7.2 無線網路的優勢
18.7.3 從現有的無線網路協議中選擇合適的協議
18.8 連接Internet
18.9 通用的配置信息
18.10 配置數字用戶線路訪問Internet
18.10.1 理解乙太網上的點對點協議
18.10.2 手動配置PPPoE連接
18.11 配置撥號Internet訪問
18.12 排除連接故障
18.13 閱讀參考
18.13.1 通用
18.13.2 DHCP
18.13.3 無線網路
18.13.4 書籍
第19章 使用ssh和telnet進行遠程訪問
19.1 架設Telnet伺服器
19.2 Telnet與SSH的對比
19.3 架設SSH伺服器
19.4 SSH工具
19.4.1 使用scp在計算機之間復制單個文件
19.4.2 使用sftp在計算機之間復制多個文件
19.4.3 使用ssh-keygen啟動Key-based登錄方式
19.5 遠程X圖形環境
19.5.1 XDMCP
19.5.2 VNC
19.6 閱讀參考
第Ⅲ部分 伺服器應用
第20章 Apache Web伺服器管理
20.1 Apache Web伺服器簡介
20.2 安裝Apache伺服器
20.2.1 使用APT安裝
20.2.2 親自從源代碼構建
20.3 啟動與停止Apache
20.3.1 手動啟動Apache伺服器
20.3.2 使用/etc/init.d/apache2
20.4 設置運行時伺服器配置
20.4.1 運行時配置指令
20.4.2 編輯httpd.conf
20.4.3 Apache多處理模塊
20.4.4 使用.htaccess配置文件
20.5 文件系統認證與訪問控制
20.5.1 使用allow和deny限制訪問
20.5.2 認證
20.5.3 關於訪問控制的結束語
20.6 Apache模塊
20.6.1 mod_access
20.6.2 mod_alias
20.6.3 mod_asis
20.6.4 mod_auth
20.6.5 mod_auth_anon
20.6.6 mod_auth_dbm
20.6.7 mod_auth_digest
20.6.8 mod_autoindex
20.6.9 mod_cgi
20.6.10 mod_dir和mod_env
20.6.11 mod_expires
20.6.12 mod_headers
20.6.13 mod_include
20.6.14 mod_info和mod_log_config
20.6.15 mod_mime和mod_mime_magic
20.6.16 mod_negotiation
20.6.17 mod_proxy
20.6.18 mod_rewrite
20.6.19 mod_setenvif
20.6.20 mod_speling
20.6.21 mod_status
20.6.22 mod_ssl
20.6.23 mod_unique_id
20.6.24 mod_userdir
20.6.25 mod_usertrack
20.6.26 mod_vhost_alias
20.7 虛擬主機
20.7.1 基於地址的虛擬主機
20.7.2 基於名字的虛擬主機
20.8 日誌
20.9 動態內容
20.9.1 CGI
20.9.2 SSI
20.9.3 基本的SSI指令
20.9.4 流程式控制制
20.10 可在Ubuntu中使用的其他Web伺服器
20.10.1 Sun ONE Web伺服器
20.10.2 Zope
20.10.3 Zeus Web伺服器
20.11 閱讀參考
第21章 管理資料庫服務
21.1 簡要回顧資料庫的基本概念
21.1.1 關系資料庫的工作方式
21.1.2 了解SQL的基礎知識
21.1.3 創建表
21.1.4 向表中插入數據
21.1.5 從資料庫中檢索數據
21.2 選擇資料庫:MySQL和PostgreSQL
21.2.1 速度
21.2.2 數據鎖定
21.2.3 在事務處理中用來保護數據完整性的ACID兼容性
21.2.4 SQL子查詢
21.2.5 過程語言與觸發器
21.3 配置MySQL
21.3.1 為MySQL root用戶設置口令
21.3.2 在MySQL中創建資料庫
21.3.3 在MySQL中授予與撤銷特權
21.4 配置PostgreSQL
21.4.1 在PostgreSQL中初始化數據目錄
21.4.2 在PostgreSQL中創建資料庫
21.4.3 在PostgreSQL中創建資料庫用戶
21.4.4 在PostgreSQL中刪除資料庫用戶
21.4.5 在PostgreSQL中授予和撤銷特權
21.5 資料庫客戶端
21.5.1 通過SSH訪問資料庫
21.5.2 通過本地GUI客戶端訪問資料庫
21.5.3 通過Web訪問資料庫
21.5.4 MySQL命令行客戶端
21.5.5 PostgreSQL命令行客戶端
21.5.6 圖形界面的客戶端
21.6 閱讀參考
第22章 文件和列印
22.1 使用網路文件系統
22.1.1 安裝和啟動/停止NFS
22.1.2 NFS伺服器配置
22.1.3 NFS客戶端配置
22.2 讓Samba工作
22.2.1 用/etc/samba/smb.conf手動配置Samba
22.2.2 使用testparm命令測試Samba
22.2.3 啟動smbd守護進程
22.2.4 掛載Samba共享
22.2.5 使用SWAT配置Samba
22.3 使用Ubuntu進行網路和遠程列印
22.3.1 創建網路列印機
22.3.2 在區域網上進行網路列印
22.3.3 任務消息塊列印
22.4 使用通用UNIX列印系統GUI
22.5 避免列印機支持問題
22.5.1 多功能一體機(列印/傳真/掃描)設備
22.5.2 使用USB和老式列印機
22.6 閱讀參考
第23章 FTP遠程文件服務
23.1 使用FTP客戶端
23.1.1 FTP客戶端界面
23.1.2 使用基於文本的FTP客戶端界面
23.1.3 使用圖形界面FTP客戶端
23.2 FTP伺服器
23.2.1 選擇認證的或匿名伺服器
23.2.2 Ubuntu的FTP伺服器包
23.2.3 其他FTP伺服器
23.3 安裝FTP軟體
23.4 FTP用戶
23.5 為wu-ftpd配置inetd
23.6 配置VSFTP伺服器
23.6.1 控制匿名訪問
23.6.2 其他的vsftpd伺服器配置文件
23.6.3 默認的vsftpd行為
23.7 配置Wu-FTPd伺服器
23.8 使用ftpaccess文件中的命令對wu-ftpd進行配置
23.8.1 配置訪問控制
23.8.2 配置用戶信息
23.8.3 配置系統日誌
23.8.4 配置許可權控制
23.8.5 配置定向到cdpath的命令
23.8.6 shutdown文件的結構
23.9 配置FTP伺服器的文件轉換操作
23.9.1 剝離前綴
23.9.2 剝離後綴
23.9.3 添加前綴
23.9.4 添加後綴
23.9.5 外部命令
23.9.6 類型
23.9.7 選項
23.9.8 描述
23.9.9 一個轉換操作的例子
23.10 使用ftphosts文件中的命令允許或禁止FTP 伺服器連接
23.11 伺服器管理
23.11.1 顯示關於連接用戶的信息
23.11.2 計算連接的數目
23.11.3 使用/usr/sbin/ftpshut安排FTP伺服器停機時間
23.11.4 使用/var/log/xferlog查看伺服器事務的日誌
23.12 閱讀參考
第24章 處理電子郵件
24.1 電子郵件是如何發送和接收的
24.1.1 郵件傳輸代理
24.1.2 選擇一個MTA
24.1.3 郵件分發代理
24.1.4 郵件用戶代理
24.2 基本的Postfix配置和操作
24.2.1 配置偽裝
24.2.2 使用智能主機
24.2.3 設置消息傳遞時間間隔
24.2.4 郵件中繼
24.2.5 轉發帶別名的電子郵件
24.3 使用Fetchmail獲取郵件
24.3.1 安裝Fetchmail
24.3.2 配置Fetchmail
24.4 選擇郵件分發代理
24.4.1 Procmail
24.4.2 Spamassassin
24.4.3 Squirrelmail
24.4.4 病毒掃描器
24.5 郵件守護程序
24.6 Microsoft Exchange Server的替代者
24.6.1 Microsoft Exchange Server/Outlook客戶端
24.6.2 CommuniGate Pro
24.6.3 Oracle協作套件
24.6.4 Bynari
24.6.5 Open-Xchange
24.6.6 phpgroupware
24.6.7 PHProjekt
24.6.8 Horde
24.7 閱讀參考
24.7.1 Web資源
24.7.2 參考書目
第25章 代理與反向代理
25.1 什麼是代理伺服器
25.2 安裝Squid
25.3 配置客戶端
25.4 訪問控制列表
25.5 指定客戶端IP地址
25.6 配置示例
25.7 閱讀參考
第26章 LDAP
26.1 配置LDAP伺服器
26.2 配置客戶端
26.2.1 Evolution
26.2.2 Thunderbird
26.3 管理
26.4 閱讀參考
第Ⅳ部分 Linux編程
第27章 使用Perl
27.1 在Linux中使用Perl
27.1.1 Perl的版本
27.1.2 一個簡單的Perl程序
27.2 Perl中的變數和數據結構
27.2.1 Perl的變數類型
27.2.2 特殊變數
27.3 操作符
27.3.1 比較操作符
27.3.2 復合操作符
27.3.3 算術操作符
27.3.4 其他操作符
27.3.5 特殊字元串常量
27.4 條件語句:if/else和unless
27.4.1 if
27.4.2 unless
27.5 循環
27.5.1 for
27.5.2 foreach
27.5.3 while
27.5.4 until
27.5.5 last和next
27.5.6 do…while和do…until
27.6 正則表達式
27.7 訪問shell
27.8 模塊和CPAN
27.9 代碼示例
27.9.1 發送電子郵件
27.9.2 清理日誌
27.9.3 往新聞組發信
27.9.4 單行小程序
27.9.5 命令行處理
27.10 閱讀參考
27.10.1 書目
27.10.2 新聞組
27.10.3 萬維網
27.10.4 其他資源
第28章 使用Python
28.1 Linux中的Python
28.2 Python基礎
28.2.1 數字
28.2.2 進一步討論字元串
28.2.3 列表
28.2.4 字典
28.2.5 條件和循環
28.3 函數
28.4 面向對象
28.4.1 類和對象變數
28.4.2 構造函數和析構函數
28.4.3 類繼承
28.4.4 多重繼承
28.5 標准庫和Vaults of Parnassus
28.6 閱讀參考
第29章 編寫PHP腳本
29.1 PHP入門
29.1.1 進入和退出PHP模式
29.1.2 變數
29.1.3 數組
29.1.4 常量
29.1.5 引用
29.1.6 注釋
29.1.7 轉義序列
29.1.8 變數替換
29.1.9 操作符
29.1.10 條件語句
29.1.11 特殊操作符
29.1.12 switch語句
29.1.13 循環
29.1.14 包含其他文件
29.2 基本函數
29.2.1 字元串
29.2.2 數組
29.2.3 文件
29.2.4 其他函數
29.3 處理HTML表格
29.4 資料庫
29.5 閱讀參考
第30章 Ubuntu中的C/C++ 編程工具
30.1 Linux中的C編程
30.1.1 C++編程
30.1.2 Linux C/C++編程入門
30.1.3 編程的步驟
30.2 C/C++語言的基本元素
30.3 Ubuntu中的C語言編程項目管理工具
30.3.1 使用make構建程序
30.3.2 使用autoconf工具配置代碼
30.3.3 使用RCS和CVS管理軟體項目
30.3.4 調試工具
30.4 使用GNU C編譯器
30.5 一個簡單的C程序
30.6 圖形界面開發工具
30.6.1 使用KDevelop客戶端
30.6.2 Trolltech的Qt Designer
30.6.3 GNOME中的開發工具Glade客戶端
30.7 閱讀參考
第Ⅴ部分 Ubuntu日常維護
第31章 保護您的機器
31.1 了解計算機攻擊
31.2 評估機器的弱點
31.3 保護您的機器
31.3.1 保護無線網路
31.3.2 口令和物理安全
31.3.3 配置和使用Tripwire
31.3.4 設備
31.4 病毒
31.5 配置防火牆
31.6 構建一個災難恢復計劃
31.7 在Linux安全問題上要保持最新
31.8 閱讀參考
第32章 性能調整
32.1 硬碟
32.1.1 使用BIOS和內核來調整磁碟驅動器
32.1.2 hdparm命令
32.1.3 文件系統調整
32.1.4 tune2fs命令
32.1.5 e2fsck命令
32.1.6 badblocks命令
32.1.7 禁止文件訪問時間
32.2 內核
32.3 Apache
32.4 MySQL
32.4.1 衡量關鍵字緩沖區的使用
32.4.2 使用查詢緩存
32.4.3 其他調整
32.4.4 查詢優化
32.5 閱讀參考
第33章 命令行高級班
33.1 為什麼使用Shell
33.2 基本命令
33.2.1 使用cat輸出文件的內容
33.2.2 使用cd改變目錄
33.2.3 使用chmod修改文件訪問許可權
33.2.4 使用cp復制文件
33.2.5 使用輸出磁碟使用情況
33.2.6 通過使用find查找文件
33.2.7 使用grep在輸入中查找字元串
33.2.8 使用less為輸出翻頁
33.2.9 使用ln在文件間創建鏈接
33.2.10 使用locate通過索引查找文件
33.2.11 使用ls命令列出當前目錄下的文件
33.2.12 使用man閱讀用戶手冊頁
33.2.13 使用mkdir創建目錄
33.2.14 使用mv移動文件
33.2.15 使用ps列出進程
33.2.16 使用rm刪除文件和目錄
33.2.17 使用tail輸出文件的最後一行
33.2.18 使用top輸出資源利用率
33.2.19 使用which輸出命令的位置
33.3 將命令組合使用
33.4 多終端
33.5 閱讀參考
第34章 高級APT
34.1 使用Aptitude
34.2 dpkg後端
34.3 配置APT
34.4 閱讀參考
第35章 內核和模塊管理
35.1 Linux內核
35.1.1 Linux源代碼樹
35.1.2 內核的類型
35.2 管理模塊
35.3 何時進行重新編譯
35.4 內核版本
35.5 獲得內核源代碼
35.6 為內核打補丁
35.7 編譯內核
35.7.1 使用xconfig配置內核
35.7.2 創建一個初始的RAM磁碟映像
35.8 當發生故障時
35.8.1 編譯時的錯誤
35.8.2 運行時錯誤. 啟動載入器問題和內核oops
35.9 閱讀參考
第Ⅵ部分 附錄
附錄A Ubuntu和Linux的Internet資源
A.1 Web站點和搜索引擎
A.2 Usenet新聞組
A.3 郵件列表
A.4 Internet Relay Chat
⑷ 如何在ubuntu中安裝設置ftp伺服器
首先,更新軟體源,保證源是最新的,這樣有利於下面在線通過apt-get install命令安裝ftp。
使用sudo apt-get install vsftp命令安裝vsftp,安裝軟體需要root許可權,我們使用sudo來暫時獲取。
安裝好ftp後默認是會自動創建ftp用戶的,然後我們設置ftp用戶的密碼,輸入
sudo passwd ftp,然後輸入密碼,再確認密碼。
創建ftp用戶的家目錄,使用sudo mkdir /home/ftp命令
設置ftp家目錄的許可權,我這里為方便直接使用sudo chmod 777 /home/ftp命令將許可權設置為777,當然你可以根據自己需求進行設置。
對/etc/vsftpd.conf配置文件進行一定的修改。使用 sudo gedit /etc/vsftpd.conf打開配置文件,如果你喜歡vi或vim編輯器也可以使用它們打開。
將配置文件中」anonymous_enable=YES 「改為 「anonymous_enable=NO」(是否允許匿名ftp,若不允許選NO)
取消如下配置前的注釋符號:
local_enable=YES(是否允許本地用戶登錄)
write_enable=YES(是否允許本地用戶寫的許可權)
chroot_local_user=YES(是否將所有用戶限制在主目錄)
chroot_list_enable=YES(是否啟動限制用戶的名單)
chroot_list_file=/etc/vsftpd.chroot_list(可在文件中設置多個賬號)
然後重啟ftp服務,使用命令sudo service vsftpd restart重啟ftp服務。
測試ftp,復制一些文件到/home/ftp目錄下
方法一:在瀏覽器中輸入ftp://localhost,網頁登錄。
方法二:在終端中輸入ftp localhost,然後輸入用戶名與密碼實現登錄。
10
如果登錄ftp總是出現密碼錯誤,可以將/etc/vsftpd.conf配置文件的pam_service_name=vsftpd改為pam_service_name=ftp,即可解決。
⑸ ubuntu下如何配置FTP
一.vsftpd說明:
LINUX下實現FTP服務的軟體很多,最常見的有vsftpd,Wu-ftpd和Proftp等.Red Hat Enterprise Linux中默認安裝的是vsftpd.
訪問FTP伺服器時需要經過驗證,只有經過了FTP伺服器的相關驗證,用戶才能訪問和傳輸文件.vsftpd提供了3種ftp登錄形式:
(1)anonymous(匿名帳號)
使用anonymous是應用廣泛的一種FTP伺服器.如果用戶在FTP伺服器上沒有帳號,那麼用戶可以以anonymous為用戶名,以自己的電子郵件地址為密碼進行登錄.當匿名用戶登錄FTP伺服器後,其登錄目錄為匿名FTP伺服器的根目錄/var/ftp.為了減輕FTP伺服器的負載,一般情況下,應關閉匿名帳號的上傳功能.
(2)real(真實帳號)
real也稱為本地帳號,就是以真實的用戶名和密碼進行登錄,但前提條件是用戶在FTP伺服器上擁有自己的帳號.用真實帳號登錄後,其登錄的目錄為用戶自己的目錄,該目錄在系統建立帳號時系統就自動創建.
(3)guest(虛擬帳號)
如果用戶在FTP伺服器上擁有帳號,但此帳號只能用於文件傳輸服務,那麼該帳號就是guest,guest是真實帳號的一種形式,它們的不同之處在於,geust登錄FTP伺服器後,不能訪問除宿主目錄以外的內容.
二.FTP相關配置文件說明
其相關配置文件有/etc/vsftpd/vsftpd.conf, /etc/vsftpd.ftpusers, /etc/vsftpd.user_list,在配置FTP伺服器時,主要是修改這些文件中的相關語句.
1.vsftpd.conf文件說明
# Example config file /etc/vsftpd/vsftpd.conf
#
# The default compiled in settings are fairly paranoid. This sample file
# loosens things up a bit, to make the ftp daemon more usable.
# Please see vsftpd.conf.5 for all compiled in defaults.
#
# READ THIS: This example file is NOT an exhaustive list of vsftpd options.
# Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's
# capabilities.
#
# Allow anonymous FTP? (Beware - allowed by default if you comment this out).
anonymous_enable=YES //是否允許anonymous登錄FTP伺服器,默認是允許的.
#
# Uncomment this to allow local users to log in.
local_enable=YES //是否允許本地用戶登錄FTP伺服器,默認是允許
#
# Uncomment this to enable any form of FTP write command.
write_enable=YES //是否允許用戶具有在FTP伺服器文件中執行寫的許可權,默認是允許
#
# Default umask for local users is 077. You may wish to change this to 022,
# if your users expect that (022 is used by most other ftpd's)
local_umask=022 //設置本地用戶的文件生成掩碼為022,默認是077
#
# Uncomment this to allow the anonymous FTP user to upload files. This only
# has an effect if the above global write enable is activated. Also, you will
# obviously need to create a directory writable by the FTP user.
#anon_upload_enable=YES
#
# Uncomment this if you want the anonymous FTP user to be able to create
# new directories.
#anon_mkdir_write_enable=YES //是否允許匿名賬戶在FTP伺服器中創建目錄
#
# Activate directory messages - messages given to remote users when they
# go into a certain directory.
dirmessage_enable=YES //激活目錄信息,當遠程用戶更改目錄時,將出現提示信息
#
# Activate logging of uploads/downloads.
xferlog_enable=YES //啟用上傳和下載日誌功能
#
# Make sure PORT transfer connections originate from port 20 (ftp-data).
connect_from_port_20=YES //啟用FTP數據埠的連接請求
#
# If you want, you can arrange for uploaded anonymous files to be owned by
# a different user. Note! Using "root" for uploaded files is not
# recommended!
#chown_uploads=YES
#chown_username=whoever
#
# You may override where the log file goes if you like. The default is shown
# below.
#xferlog_file=/var/log/vsftpd.log //設置日誌文件的文件名和存儲路徑,這是默認的
#
# If you want, you can have your log file in standard ftpd xferlog format
xferlog_std_format=YES//是否使用標準的ftpd xferlog日誌文件格式
#
# You may change the default value for timing out an idle session.
#idle_session_timeout=600 //設置空閑的用戶會話中斷時間,默認是10分鍾
#
# You may change the default value for timing out a data connection.
#data_connection_timeout=120//設置數據連接超時時間,默認是120秒.
#
# It is recommended that you define on your system a unique user which the
# ftp server can use as a totally isolated and unprivileged user.
#nopriv_user=ftpsecure
#
# Enable this and the server will recognise asynchronous ABOR requests. Not
# recommended for security (the code is non-trivial). Not enabling it,
# however, may confuse older FTP clients.
#async_abor_enable=YES
#
# By default the server will pretend to allow ASCII mode but in fact ignore
# the request. Turn on the below options to have the server actually do ASCII
# mangling on files when in ASCII mode.
# Beware that turning on ascii_download_enable enables malicious remote parties
# to consume your I/O resources, by issuing the command "SIZE /big/file" in
# ASCII mode.
# These ASCII options are split into upload and download because you may wish
# to enable ASCII uploads (to prevent uploaded scripts etc. from breaking),
# without the DoS risk of SIZE and ASCII downloads. ASCII mangling should be
# on the client anyway..
#ascii_upload_enable=YES
#ascii_download_enable=YES //是否允許使用ASCII格式來上傳和下載文件
#
# You may fully customise the login banner string:
#ftpd_banner=Welcome to blah FTP service.//在FTP伺服器中設置歡迎登錄的信息.
#
# You may specify a file of disallowed anonymous e-mail addresses. Apparently
# useful for combatting certain DoS attacks.
#deny_email_enable=YES
# (default follows)
#banned_email_file=/etc/vsftpd.banned_emails
#
# You may specify an explicit list of local users to chroot() to their home
# directory. If chroot_local_user is YES, then this list becomes a list of
# users to NOT chroot().
#chroot_list_enable=YES //如果希望用戶登錄後不能切換到自己目錄以外的其它目錄,需要設置該項,如果設置chroot_list_enable=YES,那麼只允許/etc/vsftpd.chroot_list中列出的用戶具有該功能.如果希望所有的本地用戶都執行者chroot,可以增加一行:chroot_local_user=YES
# (default follows)
#chroot_list_file=/etc/vsftpd.chroot_list
#
# You may activate the "-R" option to the builtin ls. This is disabled by
# default to avoid remote users being able to cause excessive I/O on large
# sites. However, some broken FTP clients such as "ncftp" and "mirror" assume
# the presence of the "-R" option, so there is a strong case for enabling it.
#ls_recurse_enable=YES
pam_service_name=vsftpd //設置PAM認證服務的配置文件名稱,該文件存放在/etc/pam.d/目錄下.
userlist_enable=YES //用戶列表中的用戶是否允許登錄FTP伺服器,默認是不允許
#enable for standalone mode
listen=YES //使vsftpd 處於獨立啟動模式
tcp_wrappers=YES //使用tcp_wrqppers作為主機訪問控制方式
2.vsftpd.ftpusers文件說明
這個文件是用來記錄"不允許"登錄到FTP伺服器的用戶,通常是一些系統默認的用戶.
下面是該文件中默認的不允許登錄的名單:
# Users that are not allowed to login via ftp
root //默認情況下,root和它以下的用戶是不允許登錄FTP伺服器的.可以將不允許登錄的用戶添加到這里來.但切記每個用戶都要單獨佔用一行.
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody
3.vsftpd.user_list文件說明
其實它的內容跟上面那個文件內容一樣,只是在系統對文件vsftpd.conf 進行檢測時,會檢測到"userlist_deny=YES",因此這個文件必須存在.下面是這個文件的內容.
# vsftpd userlist
# If userlist_deny=NO, only allow users in this file
# If userlist_deny=YES (default), never allow users in this file, and
# do not even prompt for a password.
# Note that the default vsftpd pam config also checks /etc/vsftpd.ftpusers
# for users that are denied.
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody
⑹ 如何在ubuntu中安裝設置ftp伺服器
首先我們考慮搭建FTP服務需要關注的都有哪些方面?比如我們最經常關注的有:
1、如何添加FTP用戶?
2、如何臨時凍結某FTP用戶?
3、FTP用戶登入後的默認目錄?是否可以改變?
4、如何鎖定FTP用戶可訪問的目錄范圍?
5、FTP用戶可以有哪些訪問許可權?可否上傳文件?
我們將帶著這些問題來探討如何配置VSFTP以達到預定目標。
一、主要配置選項
VSFTP的主配置文件是/etc/vsftpd.conf 。由於可配置的選項實在太多,無法一一詳談,只能截取比較常用的功能配置選項來加以說明。完整說明可參考man vsftpd.conf。
這里需要注意的是,每個配置選項都是由「配置項目名稱=配置值「所定義。在每個配置變數後,要緊跟等號,再緊跟設置的變數值。中間不允許出現空格之類的分隔符,否則導致配置錯誤,無法生效!
另外,如果需要開通上傳功能,則應注意用來登錄FTP的本地系統用戶對要操作的目錄需要具備寫許可權,否則無法上傳文件!
版本vsftpd: version 2.0.6
啟動VSFTPD:sudo /etc/init.d/vsftpd start
停止VSFTPD:sudo /etc/init.d/vsftpd stop
重啟VSFTPD:sudo /etc/init.d/vsftpd restart
以下為常用的配置選項:
1、listen=YES
若設置為YES,開啟監聽網路。
2、anonymous_enable
若設置為YES,則允許匿名用戶訪問;若設置為NO則拒絕匿名用戶訪問。
如果開啟的話,則可以通過用戶名ftp或者anonymous來訪問,密碼隨便。
3、local_enable
若設置為YES,則允許通過本地用戶帳號訪問;若設置為NO,則拒絕本地用戶帳號訪問。如果你拒絕了陌生人訪問,那麼這個必須設置為YES吧,否則誰能訪問你的FTP呢?
4、write_enable
若設置為YES,則開啟FTP全局的寫許可權;若設置為NO,則不開。
若為NO則所有FTP用戶都無法寫入,包括無法新建、修改、刪除文件、目錄等操作,也就是說用戶都沒辦法上傳文件!!
5、anon_upload_enable
若設置為YES,開啟匿名用戶的上傳許可權。前提是write_enable有開啟,並且用戶具有對當前目錄的可寫許可權。 若設置為NO,則關閉匿名用戶的上傳許可權。
6、anon_mkdir_write_enable
若設置為YES,開啟匿名用戶新建目錄的許可權。前提是write_enable有開啟,並且用戶具有對當前目錄的可寫許可權。 若設置為NO,則關閉匿名用戶新建目錄的許可權。
7、dirmessage_enable
若設置為YES,則可開啟目錄信息推送,也就是用戶登錄FTP後可以列出當前目錄底下的文件、目錄。 這個應該要開啟吧!
8、xferlog_enable
若設置為YES,則開啟登錄、上傳、下載等事件的日誌功能。應開啟!
9、xferlog_file=/var/log/vsftpd.log
指定默認的日誌文件,可指定為其他文件。
10、xferlog_std_format
若設置為YES,則啟用標準的ftpd日誌格式。可以不啟用。
11、connect_from_port_20
若設置為YES,則伺服器的埠設為20。
如果不想用埠20,可以另外通過ftp_data_port來指定埠號。
12、chown_uploads
若設置為YES,則匿名用戶上傳文件後系統將自動修改文件的所有者。
若要開啟,則chown_username=whoever也需指定具體的某個用戶,用來作為匿名用戶上傳文件後的所有者。
13、idle_session_timeout=600
不活動用戶的超時時間,超過這個時間則中斷連接。
14、data_connection_timeout=120
數據連接超時時間 。
15、ftpd_banner=Welcome to blah FTP service.
FTP用戶登入時顯示的信息 。
16、local_root=/home/ftp
指定一個目錄,用做在每個本地系統用戶登錄後的默認目錄。
17、anon_root=/home/ftp
指定一個目錄,用做匿名用戶登錄後的默認目錄。
18、chroot_local_user、 chroot_list_enable、chroot_list_file
這個組合用於指示用戶可否切換到默認目錄以外的目錄。
其中,chroot_list_file默認是/etc/vsftpd.chroot_list,該文件定義一個用戶列表。
若chroot_local_user 設置為NO,chroot_list_enable設置為NO,則所有用戶都是可以切換到默認目錄以外的。
若chroot_local_user 設置為YES,chroot_list_enable設置為NO,則鎖定FTP登錄用戶只能在其默認目錄活動,不允許切換到默認目錄以外。
若chroot_local_user 設置為YES,chroot_list_enable設置為YES,則chroot_list_file所指定的文件裡面的用戶列表都可以訪問默認目錄以外的目錄,而列表以外的用戶則被限定在各自的默認目錄活動。
若chroot_local_user設置為NO,chroot_list_enable設置為YES,則chroot_list_file所指定的文件裡面的用戶列表都被限定在各自的默認目錄活動,而列表以外的用戶則可以訪問默認目錄以外的目錄。
建議設置:chroot_local_user與chroot_list_enable都設置為YES。這樣就只有chroot_list_file所指定的文件裡面的用戶列表可以訪問默認目錄以外的目錄,而列表以外的用戶則被限定在各自的默認目錄活動!
好處:所有人都被限制在特定的目錄裡面。如果某些特定用戶需要訪問其他目錄的許可權,只需將其用戶名寫入chroot_list_file文件就可以賦予其訪問其他目錄的許可權!
⑺ 如何在ubuntu中安裝設置ftp伺服器
FTP伺服器是平時應用最為廣泛的服務之一。VSFTP是Very Secure
FTP的縮寫,意指非常安全的FTP服務。VSFTP功能強大,通過結合本地系統的用戶認證模塊及其多功能的配置項目,可以快速有效的搭建強大的多用戶FTP服務。
首先我們考慮搭建FTP服務需要關注的都有哪些方面?比如我們最經常關注的有:
1、如何添加FTP用戶?
2、如何臨時凍結某FTP用戶?
3、FTP用戶登入後的默認目錄?是否可以改變?
4、如何鎖定FTP用戶可訪問的目錄范圍?
5、FTP用戶可以有哪些訪問許可權?可否上傳文件?
我們將帶著這些問題來探討如何配置VSFTP以達到預定目標。
一、主要配置選項
VSFTP的主配置文件是/etc/vsftpd.conf
。由於可配置的選項實在太多,無法一一詳談,只能截取比較常用的功能配置選項來加以說明。完整說明可參考man
vsftpd.conf。
這里需要注意的是,每個配置選項都是由「配置項目名稱=配置值「所定義。在每個配置變數後,要緊跟等號,再緊跟設置的變數值。中間不允許出現空格之類的分隔符,否則導致配置錯誤,無法生效!
另外,如果需要開通上傳功能,則應注意用來登錄FTP的本地系統用戶對要操作的目錄需要具備寫許可權,否則無法上傳文件!
版本vsftpd: version 2.0.6
啟動VSFTPD:sudo /etc/init.d/vsftpd start
停止VSFTPD:sudo /etc/init.d/vsftpd stop
重啟VSFTPD:sudo /etc/init.d/vsftpd restart
以下為常用的配置選項:
1、listen=YES
若設置為YES,開啟監聽網路。
2、anonymous_enable
若設置為YES,則允許匿名用戶訪問;若設置為NO則拒絕匿名用戶訪問。
如果開啟的話,則可以通過用戶名ftp或者anonymous來訪問,密碼隨便。
3、local_enable
若設置為YES,則允許通過本地用戶帳號訪問;若設置為NO,則拒絕本地用戶帳號訪問。如果你拒絕了陌生人訪問,那麼這個必須設置為YES吧,否則誰能訪問你的FTP呢?
4、write_enable
若設置為YES,則開啟FTP全局的寫許可權;若設置為NO,則不開。
若為NO則所有FTP用戶都無法寫入,包括無法新建、修改、刪除文件、目錄等操作,也就是說用戶都沒辦法上傳文件!!
5、anon_upload_enable
若設置為YES,開啟匿名用戶的上傳許可權。前提是write_enable有開啟,並且用戶具有對當前目錄的可寫許可權。
若設置為NO,則關閉匿名用戶的上傳許可權。
6、anon_mkdir_write_enable
若設置為YES,開啟匿名用戶新建目錄的許可權。前提是write_enable有開啟,並且用戶具有對當前目錄的可寫許可權。
若設置為NO,則關閉匿名用戶新建目錄的許可權。
7、dirmessage_enable
若設置為YES,則可開啟目錄信息推送,也就是用戶登錄FTP後可以列出當前目錄底下的文件、目錄。 這個應該要開啟吧!
8、xferlog_enable
若設置為YES,則開啟登錄、上傳、下載等事件的日誌功能。應開啟!
9、xferlog_file=/var/log/vsftpd.log
指定默認的日誌文件,可指定為其他文件。
10、xferlog_std_format
若設置為YES,則啟用標準的ftpd日誌格式。可以不啟用。
11、connect_from_port_20
若設置為YES,則伺服器的埠設為20。
如果不想用埠20,可以另外通過ftp_data_port來指定埠號。
12、chown_uploads
若設置為YES,則匿名用戶上傳文件後系統將自動修改文件的所有者。
若要開啟,則chown_username=whoever也需指定具體的某個用戶,用來作為匿名用戶上傳文件後的所有者。
13、idle_session_timeout=600
不活動用戶的超時時間,超過這個時間則中斷連接。
14、data_connection_timeout=120
數據連接超時時間 。
15、ftpd_banner=Welcome to blah FTP
service.
FTP用戶登入時顯示的信息 。
16、local_root=/home/ftp
指定一個目錄,用做在每個本地系統用戶登錄後的默認目錄。
17、anon_root=/home/ftp
指定一個目錄,用做匿名用戶登錄後的默認目錄。
18、chroot_local_user、 chroot_list_enable、chroot_list_file
這個組合用於指示用戶可否切換到默認目錄以外的目錄。
其中,chroot_list_file默認是/etc/vsftpd.chroot_list,該文件定義一個用戶列表。
若chroot_local_user
設置為NO,chroot_list_enable設置為NO,則所有用戶都是可以切換到默認目錄以外的。
若chroot_local_user
設置為YES,chroot_list_enable設置為NO,則鎖定FTP登錄用戶只能在其默認目錄活動,不允許切換到默認目錄以外。
若chroot_local_user
設置為YES,chroot_list_enable設置為YES,則chroot_list_file所指定的文件裡面的用戶列表都可以訪問默認目錄以外的目錄,而列表以外的用戶則被限定在各自的默認目錄活動。
若chroot_local_user設置為NO,chroot_list_enable設置為YES,則chroot_list_file所指定的文件裡面的用戶列表都被限定在各自的默認目錄活動,而列表以外的用戶則可以訪問默認目錄以外的目錄。
建議設置:chroot_local_user與chroot_list_enable都設置為YES。這樣就只有chroot_list_file所指定的文件裡面的用戶列表可以訪問默認目錄以外的目錄,而列表以外的用戶則被限定在各自的默認目錄活動!
好處:所有人都被限制在特定的目錄裡面。如果某些特定用戶需要訪問其他目錄的許可權,只需將其用戶名寫入chroot_list_file文件就可以賦予其訪問其他目錄的許可權!
19、userlist_file、userlist_enable、userlist_deny
這個組合用於指示用戶可否訪問FTP服務。
其中,userlist_file默認是/etc/vsftpd.user_list,該文件定義一個用戶列表。
若userlist_enable設置為YES,userlist_deny設置為NO,則只有userlist_file所指定的文件裡面的用戶列表裡面的用戶可以訪問FTP。
若userlist_enable設置為YES,userlist_deny設置為YES,則userlist_file所指定的文件裡面的用戶列表裡面的用戶都被拒絕訪問FTP。
若userlist_enable設置為NO,userlist_deny設置為YES,則這個列表沒有實際用處,起不到限制的作用!因為所有用戶都可訪問FTP。
建議設置:userlist_enable與userlist_deny都設置為YES。這樣則userlist_file所指定的文件裡面的用戶列表裡面的用戶都被拒絕訪問FTP。
好處:只需將某用戶帳號加入到userlist_file所指定文件裡面的用戶列表,就可以起到暫時凍結該用戶的功能!
20、user_config_dir
指定一個目錄用於存放針對每個用戶各自的配置文件,比如用戶kkk登錄後,會以該用戶名建立一個對應的配置文件。
比如指定user_config_dir=/etc/vsftpd_user_conf,
則kkk登錄後會產生一個/etc/vsftpd_user_conf/kkk的文件,這個文件保存的配置都是針對kkk這個用戶的。可以修改這個文件而
不用擔心影響到其他用戶的配置。
二、我的VSFTP的配置方案
#首先要安裝VSFTP。源碼編譯或軟體包安裝都可以。
#以下方案實現以下功能:
#1、鎖定用戶在/home/ftp默認目錄活動,
#
並保留/etc/vsftpd.chroot_list文件裡面的用戶列表可訪問其他目錄。
#2、具備暫時凍結FTP用戶的功能,將需暫停的用戶名加入到/etc/vsftpd.usr_list即可。
#
#設置配置文件:
#復制以下文件並保存為/etc/vsftpd.conf
#新建兩文件:touch /etc/vsftpd.chroot_list
#
touch /etc/vsftpd.user_list
#新建目錄:mkdir /home/ftp
#新建群組:addgroup ftp
#修改/home/ftp屬性:chown ftp:ftp /home/ftp
#新增FTP用戶: adser --shell /bin/false --home /home/ftp
your_usr_name
#把需要開通FTP的用戶名加入到ftp群組:usermod -aG ftp your_usr_name
#注意:
#如果你的/etc/shells裡面沒有包含/bin/false,則你用上述的方法建立的用戶將法訪問#FTP,解決方法:編輯/etc/shells,加入/bin/false這行。
#
# Example config file /etc/vsftpd.conf
listen=YES
#listen_ipv6=YES
anonymous_enable=YES
local_enable=YES
write_enable=YES
#anon_upload_enable=YES
#anon_mkdir_write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
#chown_uploads=YES
#chown_username=whoever
#xferlog_file=/var/log/vsftpd.log
#xferlog_std_format=YES
#idle_session_timeout=600
#data_connection_timeout=120
#nopriv_user=ftpsecure
#async_abor_enable=YES
#ascii_upload_enable=YES
#ascii_download_enable=YES
#ftpd_banner=Welcome to blah FTP
service.
#deny_email_enable=YES
#banned_email_file=/etc/vsftpd.banned_emails
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
#ls_recurse_enable=YES
secure_chroot_dir=/var/run/vsftpd
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
anon_root=/home/ftp
local_root=/home/ftp
userlist_file=/etc/vsftpd.user_list
userlist_enable=YES
userlist_deny=YES
三、回答前面提到的問題
1、如何添加FTP用戶?
設置local_enable為YES可以開放系統用戶訪問FTP。
在系統裡面添加用戶,將shell設置為/bin/false,並將其家目錄若設置為/home/ftp或者其他目錄。這樣就可以建立只訪問FTP而無法登錄shell環境的用戶。
注意:可以新建一個ftp組,把/home/ftp的所有者設為ftp,群組也設為ftp。然後所有新添加的FTP用戶只需加入到FTP群組就可以具有對/home/ftp的訪問許可權了。這樣也方便管理用戶量比較大的FTP系統。如:
sudo addgroup ftp #如果有了就不用添加
sudo chown ftp:ftp /home/ftp #如果改過了就不用再改
sudo adser --shell /bin/false --home /home/ftp user1
#添加用戶user1
sudo usermod -aG ftp
user1 #把用戶user1加入到ftp組
這樣便可以通過用戶名user1來訪問FTP服務了。
2、如何臨時凍結某FTP用戶?
將userlist_enable與userlist_deny都設置為YES。這樣userlist_file所指定的文件裡面的用戶列表裡面的用戶都
被拒絕訪問FTP。只需將某用戶帳號加入到userlist_file所指定文件裡面的用戶列表,就可以起到暫時凍結該用戶的功能!如需重新開通使用權
限,則只需從該文件中去掉相應的用戶名。
3、FTP用戶登入後的默認目錄?是否可以改變?
可以通過local_root、anon_root來指定相應的默認目錄。
4、如何鎖定FTP用戶可訪問的目錄范圍?
將chroot_local_user與chroot_list_enable都設置為YES。這樣就只有chroot_list_file所指定的文件
裡面的用戶列表可以訪問默認目錄以外的目錄,而列表以外的用戶則被限定在各自的默認目錄活動!如果某些特定用戶需要訪問其他目錄的許可權,只需將其用戶名寫
入chroot_list_file文件就可以賦予其訪問其他目錄的許可權!
5、FTP用戶可以有哪些訪問許可權?可否上傳文件?
設置write_enable可以開啟全局的寫許可權。這樣FTP用戶就可以在本地帳號管理系統允許的范圍內進行寫操作了
⑻ linux里ftp伺服器怎麼配置根目錄
1、deepin linux默認沒有安裝命令行的ftp客戶端,在終端執行ftp命令會提示未找到命令。