ProFTP 教學

                                                                           
ProFTPD server架設

這一章我們介紹如何架設自己的ftp伺服器.
在Mandrake 中 ,長期以來都是以proftpd為主要的ftp伺服器
所以首先也是相同 的我們簡單介紹一下如何架設自己的ftp伺服器.

首先 我們必須要把我們所需的元件安裝上!
一樣的使用urpmi來進行安裝:

                  


#urpmi proftpd


ProFtpd本身和 apache有很多的相似點.
在設定及一些特色上都非常的相近,也就是說,可以學一多用
這個我們以後再來談!

如果您有使用X的話請使用 drakxservices
或ntsysv來設定讓他在開機 時啟動

我們直接對他進行驅動先
                  


#service proftpd restart
Shutting down proftpd: [ OK ]
Starting proftpd: [ OK ]



這樣您的ftp就裝好了也可以使用了.很神奇吧.
您可以直接用您的ftp程式連結您的ftpserver
密碼為您系統使用者 的密碼!

接下來我們針對ProFtpd的設定來進行一些簡單的說明.
讓使用者只可以在自己的家目錄中進行上傳及下載
為了安全上的考量,不希望使用者讀取自己家目錄之外的檔案.
我們必須要限制使用者的活動範圍:
首先我們開啟 /etc/proftpd.conf
找到這一行
                  


# DefaultRoot /home/foo foo


他的意思為"預設的根目錄為何"
如果您要指定一個使用者的根目錄
設定說明:
DefaultRoot [預設根目錄路徑] 使用者帳號

例:
                  


DefaultRoot /home/jacch jacch


這樣設定就是讓jacch這一個使用者只可以在 /home/jacch這一個目錄中運作
當然如果要一個一個的設定真的太累了.
所以我們用簡單的方式:
                  


DefaultRoot ~


這個毛毛蟲是指自己的家目錄.
註:
在unix系統中 "~" 是指家目錄,
相當於$HOME
例如: 回到家目錄我們可以這樣執行
#cd ~
或者
#cd $HOME

這樣想就會比較簡單一些了.

架設公開型的匿名ftp伺服器
我們在 /etc/proftpd.conf中 加入這一些
                  


<Anonymous ~ftp>
User ftp
Group ftp
# 設定匿名者的權限
UserAlias anonymous ftp

#限制連線人數50人
MaxClients 50
#不需shell
RequireValidShell off
#不需密碼
AnonRequirePassword off

#歡迎訊息檔
DisplayLogin welcome.msg
#目錄說明檔
DisplayFirstChdir .message

#限制匿名者無法寫入
<Limit WRITE>
DenyAll
</Limit>

</Anonymous>


再重起您的ftp伺服器就可以允許匿名者進入了!
就像很多的大學檔案系下載系統一樣!


apache和proftpd都可以交由 xinetd來管理.
不過在運行上您必須做一定的考量.
如果您 的站台會經常有人在使用這樣的功能 的話.
建議您可以讓他獨立運行,如果您只是單純的要讓自己或少數家人或朋友使用的話,
建議您可以使用xinetd,因為他會比較節約系統資源.
改天再來討論一下二者 的不同!^ ^


 
proftpd.conf 簡易設定

相關連結 範例或相關連結 || 作者: || 時間:2003-07-17 21:06 || 最後更新:2003-07-17 21:06
# This is a basic ProFTPD configuration file (rename it to
# 'proftpd.conf' for actual use. It establishes a single server

# and a single anonymous login. It assumes that you have a user/group

# "nobody" and "ftp" for normal operation and anon.

ServerName "---SEXJACK'S FTP SERVER---" #伺服器在登入時所顯示的伺服器名稱


ServerType standalone #設定伺服器是否常駐於記憶体內;standalone為是;inetd為FTP不常駐於記憶內


DefaultServer on #這部分,若是為單單只架FTP server的話,沒有這一行的。因為,一個IP同時架了多個的伺服器,而這行在為架設一個標準隨虛擬FTP伺服器

ServerIdent off #於登入時,是否顯示所使用的伺服器是何種軟体架設的,off的話是不顯示,反過來當然是on


# Allow FTP resuming.


# Remember to set to off if you have an incoming ftp for upload.

AllowStoreRestart on #這部份為設定是否可關閉重新啟動

#ServerAdmin sexjack@yahoo.com.tw #此行為設定伺服器管理者的E-mail,若sever有問題,則會寄信給管理者


#DefaultRoot ~ #此行為設定FTP的使用者只能在自已的家裡活動


# Port 21 is the standard FTP port.

Port 21 #設定於登入時,主機是Listening那一個port,若為inetd,則自行設定會無效


# Umask 022 is a good standard umask to prevent new dirs and files

# from being group and world writable.

Umask 022 #設定檔案權限遮罩,022則為755,不用我解釋了吧??



# To prevent DoS attacks, set the maximum number of child processes

# to 30. If you need to allow more than 30 concurrent connections

# at once, simply increase this value. Note that this ONLY works

# in standalone mode, in inetd mode you should use an inetd server

# that allows you to limit maximum number of processes per service

# (such as xinetd)

MaxInstances 30 #設定伺服器於同一時間內可以處理的程序有幾筆,若severtyep設為standalone的話,可設低一點,以避免駭客的DoS攻擊



# Set the user and group that the server normally runs at.

#這空行為在設定可存取此伺服器的隨使用者和群組

# Normally, we want files to be overwriteable.


<Directory /var/ftp> #為登入時想進入的目錄位置

AllowOverwrite on
#是否刪除錯誤的存檔

DeleteAbortedStores off
</Directory>



# Needed for NIS.


PersistentPasswd on #是否需要密碼驗証?若為非開放的FTP,最好是為on



# Default root can be used to put users in a chroot environment.

# As an example if you have a user foo and you want to put foo in /home/foo

# chroot environment you would do this:
# DefaultRoot /home/foo foo




<Global> #標隼的FTP SERVER的設定值

DefaultRoot /var/www/html root #這裡我因為我WBB SERVER在編製,因此特將root指定至/var/www/html的目錄下

DefaultRoot /var/ftp users #這裡設定為user群組所登入的FTP目錄位置

AllowStoreRestart on #這部份為設定是否可關閉重新啟動
MaxClients 4 "IT IS MAX" #此為設定取多可同時在FTP上的人數;後面的那句"IT IS MAX"為後面第五人無法登入時所看到的訊息

RootLogin on #設定權限管理者是否能以root帳號登入,平常不建議開啟

MaxClientsPerHost 4 #....不會翻了....也不大了解

</Global>


UseReverseDNS on #是否開啟DNS


TimeoutNoTransfer 600 #多久的時間沒反應就停止連線,以秒為計算單位

#允許root可登入
RootLogin on

#允許上傳續傳
AllowStoreRestart on

#同個 IP 最多能登入幾個 Session 同一個 IP 只能登入一次
MaxClientsPerHost 1

#下面兩種選一種設定
#設定 FTP 預設路徑在/home/ftp下;所有的帳號進入時都會到這個目錄下
DefaultRoot /home/ftp !david =>除了david之外

#根目錄是自己的home目錄 =>所有的帳號都會到家目錄
DefaultRoot ~ !david =>除了david之外

#流量控管 (25KB/Sec)
RateReadBPS 25600
RateReadFreeBytes 5120
RateReadHardBPS on

#只允許192.168.1的網段連上ftp
<Limit LOGIN /*>
Order allow,deny
Allow from 192.168.1.
Deny from all
</Limit>

#限制一個目錄下的權限
<Directory /home/ftp/upload/*>

<Limit READ> #可讀取
AllowAll
</Limit>

<Limit WRITE> #可寫入
AllowAll
</Limit>

<Limit DELE> #不可刪除
DenyAll
</Limit>

<Limit RNFR> #不可更名
DenyAll
</Limit>

<Limit MKD> #不可創造資料夾
DenyAll
</Limit>

<Directory>
標籤: Linux
評論: 0 | 引用: 0 | 閱讀: 7377 | 轉發
顯示Tag關聯文章
InfoBOX-2500 終身保固機種 (2009-10-15 09:39)
[ InfoBOX 伺服器使用密技] FTP 無法修改檔案權限怎麼辦? (2009-08-17 17:03)
[ InfoBOX 伺服器使用密技] 如何申請IP反解設定 (2009-08-17 11:47)
[ InfoBOX 伺服器使用密技] 如何安裝 phpBB 討論區 (2009-08-14 17:05)
[ InfoBOX 伺服器使用密技] ISP 說我的伺服器被當成跳板在亂發信 怎麼查 ? (2009-08-14 15:40)
[ InfoBOX 伺服器使用密技] 郵件伺服器 / 進階設定->防止帳號盜用機制 (2009-08-14 15:27)
[ InfoBOX 伺服器使用密技] InfoBOX 如何更新韌體? (2009-08-14 15:19)
[ InfoBOX 伺服器使用密技] 伺服器硬碟不夠用,Linux 如何換新的硬碟 (2009-08-14 14:19)
[ InfoBOX 伺服器使用密技] 伺服器故障的災難復原機制 (2009-08-14 11:41)
zimbra mail server 免費的多網域郵件伺服器 (2009-04-20 21:01)
OnlyYou人脈管理軟體應用技巧(2) 與圖片簽名檔的整合 (2009-02-11 17:22)
Damon免費網頁空間更換新主機囉! (2009-01-10 00:18)
虛擬主機 Apache 2.2.6+php5.2.3+MySQL5.0.23~自己來當戰國策 (2009-01-07 01:45)
ePowerBOX2009 上市~嵌入式Embedded Linux 網站、NAS、FTP、郵件伺服器 (2008-12-26 15:17)
[ InfoBOX 伺服器使用密技] 垃圾郵件剋星=灰名單排程功能 (2008-09-24 13:30)
Unix Like 的檔案與目錄權限說明 (2008-02-11 20:20)
rpm -qil postfix 找出套件的安裝位置 (2007-12-06 11:32)
EMOS 整理 (2007-08-31 16:33)
新增 yum 套件 4000多套 (2007-08-31 00:33)
/etc/passwd 檔超過1萬個 email 帳號無力~ (2007-08-30 00:24)
找RPM的網址 (2007-08-29 23:57)
硬碟空間 90% 發信通知 root (2007-08-29 23:53)
Linux 可讀寫 ntfs 的方式 (2007-08-29 23:51)
透通式防火牆設定 (2007-08-29 23:47)
更換 ssh 服務程式的 Port (2007-08-10 23:45)
將寄到yahoo的信由hinet去轉寄設定 (2007-08-10 23:42)
postfix 文件 (2007-08-01 18:17)
SAMBA ACL (2007-07-30 14:22)
Embedded Linux資源好站 (2007-07-30 00:49)
DOM 的製作 FOR LINUX (2007-07-28 19:06)
postfix 對照表 (2007-07-16 01:25)
Rsync 控制頻寬 (2007-07-06 17:38)
AD 整合 samba 認證帳號功能 - 檢查要有 winbind (2007-07-05 11:11)
ROR on mongrel 取代 apache (2007-07-05 00:01)
CentOS5 自動安裝光碟製作 (2007-06-03 13:17)