ubuntu7.04上配置proftpd

proftpd是什么,看名字就知道它應該和ftp服務有關,具體內容可以到這里查看http://www.proftpd.org/

首先看看自己的及其上有沒有proftpd。在終端里輸入proftpd,如果沒有ubuntu告訴你現在系統里沒有proftpd,你需要用apt-get來安裝。那好吧,就按他說的做。

sudo apt-get install proftpd

proftpd很小,幾乎是瞬間裝完。我用的cn99的源,速度非???。

然后查看文檔得知proftpd有兩種運行模式:Standalone 和 inetd

standalone比較耗資源適合大訪問量,inetd會為每一個請求啟動一個進程,平時不用的時候不耗資源,我就是自己用用,所以選擇inetd模式。

cat /etc/inetd.conf

結果什么都沒有。

進一步查看文檔得知,現在的linux基本上用xinetd取代inetd了。但是我在系統里找不到xinetd。恩~,明白了:

sudo apt-get install xinetd

又是瞬間完成。

進入/etc/xined.d目錄,看見了幾個配置好的項目。我們在加一個ftp吧。

sudo vim ftp

service ftp
{
??????? flags = REUSE
??????? socket_type = stream
??????? instances = 50
??????? wait = no
??????? user = root
??????? server = /usr/sbin/proftpd
??????? log_on_success = HOST PID
??????? log_on_failure = HOST ATTEMPT
}

具體是什么意思? 其實我也是半懂不懂的,想去xinetd的主頁上看看,結果找不到頁面。

然后就是配置proftpd本身了。

proftpd的配置文件在/etc/proftpd/proftpd.conf

不愧“pro”這個名字,看上去非常“專業”。很復雜,官方主頁上文檔也非常復雜。

我現把匿名用戶登錄那部分打開了。

<Anonymous ~ftp>
....
....
....
</Anonymous>
這段應該在proftpd.conf的最后面。

對于這個配置文件,如果你用過apache httpd,應該看上去很眼熟。

然后重啟一下xinetd

sudo service xinetd restart

結果告訴我沒有service這個命令。

同樣:

sudo apt-get debian-helper-scripts

重啟完服務器后,看看ftp已經可以登錄了。如果不能登錄,你可以試試一下方法看看問題出在哪里。

到/etc/init.d目錄下直接調用xinetd start看看有什么信息出來,如果沒有什么有用信息。

修改一下xinetd在

?? start)
??????? checkportmap
??????? echo -n "Starting internet superserver: xinetd"
??????? start-stop-daemon --start --quiet --background --exec /usr/sbin/xinetd -- -pidfile /var/run/xinetd.pid -filelog /var/log/xinetd.log -f /etc/xinetd.conf $XINETD_OPTS

這樣再次啟動xinetd,你就可以在/var/log目錄下找到xinetd.log文件??纯磫觴inetd過程中出現了什么問題。

接下來就是研究proftpd本身的配置了,幾個經典命題需要考慮:

  • 虛擬目錄
  • 用戶權限
  • 流量限制
[待續]