8.2、關於新增本地使用者及開啟讀寫許可權示例;
ftp 使用者一般是不能登入系統的,這也是為了安全。在系統中,沒有許可權登入系統的使用者一般也被稱之為虛擬使用者;虛擬使用者也是要寫進/etc /passwd 中;這只是一種虛擬使用者的方法,但說實在的並不是真正的虛擬使用者,只是把他登入 shell 的許可權去掉了,所以他沒有能力登入系統;
如果我們想把 beinan 這個使用者目錄定位在/opt/beinan 這個目錄中,並且不能登入系統;我們應該如下操作
[root@localhost ~]# adduser -d /opt/beinan -g ftp -s /sbin/nologin beinan
[root@localhost ~]# passwd beinan
changing password for user beinan.
new password:
retype new password:
passwd: all authentication tokens updated successfully.
[root@localhost ~]#
其實這還是不夠的,還要改一下配置檔案 vsftpd.conf ,以確保本地虛擬使用者能有讀寫許可權;
local_enable=yes
write_enable=yes
local_umask=022
8.4、如何實現虛擬路徑?
比如:/home/a 對映為 ftp://localhost/a
/home/b/c 則為 ftp://localhost/c
其實這個不能說是 vsftpd 的內容,其實我們早就接觸過了,可能我們沒有注意,我們可以通過如下的方法來實現。
[root@localhost ~]# mount --bind [原有的目錄] [新目錄]
比如我的 ftp 的預設目錄是/var/ftp,我想把/mnt/ling/winsoft 資料夾,對映到/var/ftp 目錄中,我就如下操作我們要先在/var/ftp 目錄中建乙個目錄
[root@localhost ~]# mkdir /var/ftp/winsoft
然後執行 mount 命令
[root@localhost ~]# mount --bind /mnt/ling/winsoft /var/ftp/winsoft
這樣就 ok 了。
8.5、開啟 vsftp 伺服器的日誌功能;
把下面 xferlog_file 前面的#號對掉,也就是把 vsftp 的 log 功能開啟,這樣我們就能在/var/log目錄下檢視 vsftpd.log。這是 vsftp 的日誌功能,這對於我們來說是極為重要的。
xferlog_file=/var/log/vsftpd.log
8.6、如何定製歡迎資訊;
如何定製歡迎資訊,也就是我們登入有些 ftp 之後,會出現類似:歡迎您來到 linuxsir ftp,在這裡,您會得到最真誠的幫助,如果有什麼問題和建議,請來信,多謝。實現這個並不難,我們可以檢視 vsftpd.conf 檔案中,是否有這行。
dirmessage_enable=yes
message_file=.message
如果沒有就加上,如果 dirmessage_enable=yes 前面有#號,就把#號去掉。其實 ftp 資訊預設的就是.message,所以可以不加 message_file= 來指定。自己指定也行,無所謂的事;然後我們制定乙個.message 檔案,寫上您想要寫的東西,比如是.message 的內容是如下的:--歡迎您來到 linuxsir ftp!
--在這裡,您會得到最真誠的幫助;
--如果有什麼問題和建議,請來信,多謝。
我們可以用編輯器來寫這個.message,我想這個過程就不用說了吧。然後我們把.message 這個檔案複製到各個使用者的家目錄中。比如我的 ftp 的乙個使用者是beinan,這個使用者所在的家目錄是/opt/beinan我們就要把.message 放在/opt/beinan 這個目錄下。如果系統使用者 ftp,他的目錄就是/var/ftp這個目錄,這個是預設的,當匿名用 戶登入時就訪問的是/var/ftp 這個目錄。我們要讓匿名使用者能看到歡迎資訊。就要把.message 放在/var/ftp 目錄中。其它的使用者,也無非 就是類似的操作。
8.7、硬碟空間有限,如何把帳號 ftp 預設的家目錄更改到別處?
我的硬碟空間有限,如何把帳號 ftp 預設的路徑/var/ftp 更改到別處?或者是,我的 linux 所有的目錄都放在/根分割槽,因為空間緊張,我能否把 ftp 這個使用者的預設路徑放到別的分割槽??
對於 ftp 這個使用者的管理,我們應該檢視/etc/passwd ,然後修改 ftp 使用者那行;
ftp:x:14:50:ftp user:/var/ftp:/sbin/nologin
比如我們想把 ftp 使用者的家目錄改為/opt/ftp,則要把類似上一行改為
ftp:x:14:50:ftp user:/opt/ftp:/sbin/nologin
然後我們要建立 ftp 使用者的新的家目錄;
[root@localhost ~]# mkdir /opt/ftp
[root@localhost ~]# chmod 755 /opt/ftp
[root@localhost ~]# chown root:root /opt/ftp
如果預設的 ftp 磁碟空間緊張,我們其實也可以用虛擬路徑對映的方法來解決;
也就是 mount
--bind 的辦法;看情況吧,哪個適合就是最好的方法;
8.8、如何讓 vsftp 伺服器限制鏈結數,以及每個 ip 最大的鏈結數?
應該改 vsftpd 伺服器的配製檔案 vsftpd.conf,加入下面的兩行:
max_clients=數字
max_per_ip=數字
舉例:我想讓我的 vsftp 最大支援鏈結數為 100 個,每個 ip,最多能支援 5 個鏈結,所以我應該在 vsftpd.conf 中加上如下的兩行:
max_clients=100
max_per_ip=5
改好了配製檔案,不要忘記啟動 vsftp 伺服器。
8.9、如何限制傳輸速度?8.10、如何有選擇的把使用者限制在家目錄中呢?
我們要自己建乙個檔案,在/etc 目錄中或/etc/vsftpd 目錄中(假如您的 vsftpd 配置檔案都是放在這個目錄的話);
#touch /etc/vsftpd.chroot_list
以 beinan 和 nanbei 這兩個使用者限制在他們所在的家目錄中,而其它的 ftp 使用者不做此限制。在 vsftpd.chroot_list 這個檔案中,把 beinan 和 nanbei 添上去就行,注意,每個使用者佔一行。
beinan
nanbei
然後改/etc/vsftpd/vsftpd.conf 檔案,找如下的兩行
chroot_list_enable=yes
chroot_list_file=/etc/vsftpd.chroot_list
如果沒有這樣的兩行,就可以自己新增上去也是一樣的。設定好後,重新 vsftpd 伺服器。補充一之補充:如何把系統內所有的 ftp 使用者都限制在家目錄中呢??經 juliaugong 兄的提示,我查詢了 vsftpd 的洋文說明,證明這個選項是一刀切的解決所有的使用者都能限制在家目錄中
我們可以通過更改 vsftpd.conf 檔案,加入如下的一行
chroot_local_user=yes
改完配製檔案,不要忘記重啟 vsftpd 伺服器;
8.11、如何讓繫結 ip 到 vsftpd?
如何讓繫結 ip 到 vsftpd?也就是說,如何讓使用者只能通過某個 ip 來訪問 ftp。其實這個功能很有意思。
如果繫結的是內網的 ip,
外部是沒有辦法訪問的。
如果繫結的是對外服務的 ip,
內網也只能通過對外服務的 ip 來訪問 ftp
在 vsftpd.conf 中加一行,以我的區域網為例,請看第一帖中的操作環境,這樣外網就不能訪
問我的 ftp 了,內網也可能通過 192.168.0.2 來訪問 ftp;
listen_address=192.168.0.2
【本文摘自
SAP常用功能
1 sap外觀 幫助圖示右側的按鈕是customizing of local layout 定製本地布局 按鈕,可以用它來變更sap gui顯示介面的風格。2 sap導航 1 在sap print list視窗裡,如果不想在保持期內儲存系統假離線請求,在print screen list 列印頁面列...
IOS 常用功能
對xib檔案的處理 xib的載入可以通過 nsbundle maibundle loadnibnamed nsstring str owner nsstring temp dic nsdictionary dic 載入 xib的fileowner檔案。然後通過下標得到sub 如果要獲取xib中固定的...
PHP常用功能
1 字串 主要方法有 strops substr str split explode 等,更多方法檢視php官方手冊 字串的方法 strpos substr print r explode str sun of beach 獲取子字串在當前字串的索引位置 echo strpos str,ea 字串的...