Proftpd如何建立特殊交流账号

74次阅读
没有评论

共计 2934 个字符,预计需要花费 8 分钟才能阅读完成。

这篇文章主要介绍 Proftpd 如何建立特殊交流账号,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

Proftpd 建立特殊交流帳號 (建立一個 ftpguest 群組! 將所有的 guset 設定在這個群組內!

我想,很多朋友都有使用 FTP 網站與其他網站交流的經驗了! 您可以給予某些站長一些上傳與下載的權限,並且這些權限是可以保留或者是累積的,真的是很棒啊! 在 Windows 系統上面有 Server-U 這個好用的傢伙,那麼我們的 Linux 上頭的 FTP 可以達到這樣的功能嗎?! 呵呵! proftpd 就可以! 而且設定還真的是很簡單喔! 假設我們要達成這樣的功能好了:

主機環境、實體用戶、anonymous 的環境都與前兩節的內容相同;

建立一個群組名為 ftpguest,如果使用者屬於該群組,則該使用者登入主機之後他的根目錄會在 /var/ftp2 這個目錄下;

有三個使用者,名為 ftpuser1, ftpuser2, ftpuser3,都屬於 ftpguest 群組,他們沒有家目錄,不能使用 ssh,但是他們在 /var/ftp2/upload 有寫入的權限,但不可讀取資料;

在 /var/ftp2 內的所有相關下載中,*** 流量為 50 Kbytes/second;

ftpuser1 的上傳 / 下載比例為 1:2,且具有 100 MB 的預設下載量; ftpuser2 與 ftpuser3 的上傳 / 下載比例則為 1:1,僅具有 30MB 的預設下載量;

當使用者進入 /var/ftp2 時,會顯示該使用者的上傳 / 下載比例,以及剩下的下載容量,還有其他的相關訊息;

與使用者有關的上傳 / 下載比例以及剩下的可下載容量,都記錄在 /var/ftp2/work/ratio.dat, /var/ftp2/work/ratio.tmp 當中,所以使用者在這個目錄都無法讀、寫!

在這個案例當中,最重要的就是那個『紀錄使用者上傳 / 下載的 ratio 以及可用空間的記錄檔』了,在我的案例當中,使用的就是 /var/ftp2/work/ratio.dat 這個檔案,請注意,這個檔案必須要能被 ftpuser1, ftpuser2, ftpuser3 所讀取與寫入才行! 相當的重要喔! 所以,我應該要這樣設計我的設定檔:

1. 建立所需要的群組與使用者:

# 我要建立一個群組為 ftpguest,此外,所有相關的使用者都是這個群組!

[root@test root]# groupadd ftpguest

[root@test root]# useradd -M -g ftpguest -s /bin/false ftpuser1

[root@test root]# useradd -M -g ftpguest -s /bin/false ftpuser2

[root@test root]# useradd -M -g ftpguest -s /bin/false ftpuser3

[root@test root]# passwd ftpuser1

# 請依序建立 ftpuser1 ftpuser2 ftpuser3 的密碼!

2. 建立所需要的 FTP 相關路徑:

# 我要的路徑在 /var/ftp2 當中,而且 ftpguest 必須要能夠寫入!

[root@test root]# mkdir -p /var/ftp2

[root@test root]# mkdir -p /var/ftp2/upload

[root@test root]# mkdir -p /var/ftp2/work

[root@test root]# chmod -R 775 /var/ftp2

[root@test root]# touch /var/ftp2/work/ratio.dat #底下兩個檔案用在 ratio

[root@test root]# touch /var/ftp2/work/ratio.tmp

[root@test root]# chown -R ftpuser1:ftpguest /var/ftp2

[root@test root]# chmod 666 /var/ftp2/work/*

3. 建立基本的設定檔案:

[root@test root]# vi /usr/local/proftpd/etc/proftpd.conf

# 關於主機, 實體用戶,anonymous 的設定如同前兩小節所示,所以我這裡就略過了!

…(沿用上兩小節的設定,這裡略過)…..

# 底下則是 /var/ftp2 的設定喔! 就是與 ftpguest 有關的設定喔!

DefaultRoot /var/ftp2 ftpguest

DisplayLogin welcome.msg

# 開始設定上傳 / 下載比例

Ratios on

SaveRatios on

RatioFile /work/ratio.dat

RatioTempFile /work/ratio.tmp

# 上面這兩個檔案需要比較注意! 他的路徑與 DefaultRoot 有關係!

# 因為我們的 DefaultRoot 在 /var/ftp2,因此,這個檔案在

#『根目錄為 /var/ftp2 時,路徑為 /work/』也就是說,/work/ratio.dat

# 其實就是 /var/ftp2/work/ratio.dat (因為 / 是 /var/ftp2 喔)

# 這個地方是最容易搞錯的! 請再次的看清楚喔! ^_^

# 至於底下的設定就是要讓 /var/ftp2/work 這個目錄下的檔案都無法被使用!

Denyall

# 這裡就是在設定使用者的上傳 / 下載比例啦! 語法為:

# UserRatio 使用者帳號 fileratio filequota byteratio bytequota

# 使用者帳號:就是登入 proftpd 的帳號啊!

# fileratio:這個是以檔案為基準的『比例』,通常不限制,故為 0

# filequota:預設能夠下載多少檔案,不限制時為 0

# byteratio:就是上傳 / 下載的比例,這個數字代表『1: 下載』之意!

# bytequota:預設能夠下載多少 KBytes 的檔案! 注意單位喔!

UserRatio ftpuser1 0 0 2 100000 # 上 / 下比例為 1:2

UserRatio ftpuser2 0 0 1 30000

UserRatio ftpuser3 0 0 1 30000

# UserRatio ftpuser3 0 0 -2 30000

# 上面這行有意思! 當下載比例為負值時,表示上 / 下 比例為 2:1 的意思!

Umask 002

# 這裡就是在進行『下載速度的限制』囉!

TransferRate RETR 50 group ftpguest

Denyall

Allowall

4. 建立歡迎畫面:

# 特別留意,因為我的 ftpguest 群組的根目錄在 /var/ftp2,因此,我的

# welcome.msg 就必須放置在 /var/ftp2/welcome.msg 了!

[root@test root]# vi /var/ftp2/welcome.msg

歡迎光臨! 這個是鳥哥的測試 FTP 站台喔!

我的主機:%L

目前時間:%T

*** 連線:%M

目前連線:%N

您的主機:%R

您的帳號:%U

目前目錄:%C

5. 重新啟動!

[root@test root]# /etc/rc.d/init.d/xinetd restart

以上是“Proftpd 如何建立特殊交流账号”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注丸趣 TV 行业资讯频道!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-25发表,共计2934字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)