FreeBSD FTP 的架設 - 编程吧

上一篇 | 下一篇

FreeBSD FTP 的架設

发布: 2008-3-01 11:29 | 作者: 佚名 | 来源: 转载 | 查看: 8次

當你的 FreeBSD 安裝好後就內建 FTP ,只是預設不啟動它而已, 有人覺得 FreeBSD 內建的 ftpd 太陽春,會另外用別的 ftpd 來取代, 常見的替代方案有:proftpd , pureftp ......等,不過要隨時注意更新,因為 FTP 程式常常被找到有安全漏洞。

1 以 FreeBSD 內建的 ftpd 提供服務

一般說來,當你安裝好 FreeBSD ,FTP 的服務程式 /usr/libexec/ftpd 就有了
只要修改一下 /etc/inetd.conf , FTP 服務就已經可以提供給有本機帳號的人使用

1-1 打開 FTP 服務

FreeBSD 系統的預設 ftpd 提供 daemon 模式(stand alone)和由 inetd 啟動 ftpd 兩種方式
兩種方式比較起來,daemon 的方式適合對同一時間連線使用多,負載較大的主機

1-1-1 方法一:daemon 模式 (stand alone)

1-1-1-1 立即啟動 ftpd daemon

如果只是要馬上啟動服務只要執行:

/usr/libexec/ftpd -D -l -l

參數說明:

  • -D :讓 ftpd 以 daemon 的方式啟動。
  • -l :叫 syslogd 記錄每次的連線,用兩次 -l 則可以連使用的動作都記錄
      -l 要留下連線記錄還需要配合修改 /etc/syslog.conf 才會啟動記錄

ftpd 還有很多的參數,可以 man ftpd 查看。

1-1-1-2 如何讓 FreeBSD 開機時自動啟動 ftpd

如果只用前面的方法啟動 ftpd daemon,下次系統重新開機後就沒了,為了讓它能自動啟動,我們可以把啟動指令放入 /etc/rc.local 中或是仿 /usr/local/etc/rc.d 的檔案,自己寫個 ftpd.sh 。

例一:

ee /etc/rc.local

在裡面放一行:

/usr/libexec/ftpd -D -l -l

例二:

仿 /usr/local/etc/rc.d 中的檔案,新增一個叫 ftpd.sh 的 script :

ee /usr/local/etc/rc.d/ftpd.sh

裡面放入下面的內容:


#!/bin/sh

ftpd_flag="-l -l -S"
ftpd="/usr/libexec/ftpd"

case "$1" in
start)
[ -x ${ftpd} ] && ${ftpd} -D ${ftpd_flag} > /dev/null && echo -n ' ftpd
;;
stop)
/usr/bin/killall ftpd > /dev/null && echo -n ' ftpd'
;;
*)
echo "Usage: `basename $0` {start|stop}" >&2
;;
esac

exit 0

存好檔後再更改一下檔案的權限,讓它可以執行:

chmod 554 /usr/local/etc/rc.d/ftpd.sh

這樣,當 FreeBSD 開機時就會自動啟動 ftpd ,也可以利用 /usr/local/etc/rc.d/ftpd stop 來停止服務,執行時要加什麼參數就修改 ftpd_flag 那行。

1-1-2 方法二:由 inetd 來啟動 ftpd

這種方式,想當然 枺褪且薷

20080301111631716.gif

20080301111631716.gif

20080301111632716.gif

20080301111632716.gif

20080301111632685.gif

20080301111632685.gif

20080301111633399.gif

20080301111633399.gif

20080301111634766.gif

20080301111634766.gif

TAG: FreeBSD 操作系统

字号: | 推荐给好友

 

评分:0

我来说两句

seccode