FreeBSD 内建有 FTP 服务器的功能,如果要使用内建的 ftpd,不需要进行安装,只要做好设定即可。
启动 FTP 服务器我们有二种方式启动 ftpd,一种是使用 standalone daemon,另一种是使用 inetd。inetd 是 UNIX 系统中一个强大的「超级服务器」,我们可以使用它来管理许多系统服务,例如 telnet、ssh、ftp 等。大部份的系统服务都是使用 inetd 来启动,使用它的好处在于可以统一管理各种服务,并经由它来设定服务规则,例如是否要阻挡某些 IP 来源等。不过,使用 inetd 的方式缺点是每次有联机要求时,inetd 的 daemon 必须依联机的种类去执行相对映的指令,所以速度比较慢。
另一种启动 FTP 的方式是使用 standalone daemon,也就是直接执行 FTP daemon,当它接收到新的联机时,就 fork() 出来处理,这种方式联机建立的速度较快,比较适合专门的 FTP 服务器。
使用 inetd我们先来介绍如何使用 inetd 的方式启动 FTP 服务器。首先,请编辑 /etc/inetd.conf,将 ftp 设定开头的 # 移除:
ftp stream tcp nowait root /usr/libexec/ftpd ftpd -l<br>
ftp stream tcp6 nowait root /usr/libexec/ftpd ftpd -l
接下来,我们必须使用下列指令重跑 inetd:
# kill -1 `cat /var/run/inetd.pid`
# kill -1 `cat /var/run/inetd.pid`
(该命令基于已经运行了inetd)如果没有运行ftp服务器,则Alt+F2里输入: inetd 现在您就可以开始使用 FreeBSD 的 FTP 服务。
<br>!/bin/sh<br>
ftpd_program="/usr/libexec/ftpd"<br>
ftpd_flags="-D -l"<br>
case $1 in<br>
start)<br>
echo "Starting FTPD"<br>
$ftpd_program $ftpd_flags<br>
;;<br>
stop)<br>
echo "Stopping FTPD"<br>
killall ftpd<br>
;;<br>
restart)<br>
$0 stop<br>
sleep 1<br>
$0 start<br>
;;
esac
编辑完后,我们必须将该档案变成可执行:
<br># chmod 755 /usr/local/etc/rc.d/ftpd<br>
接下来,您就可以使用下列指令启动 FTPD 了:
<br># /usr/local/etc/rc.d/ftpd start 或
# service ftpd start
如果您要停止 FTPD 服务,则使用下列指令: # /usr/local/etc/rc.d/ftpd stop
编辑欢迎讯息
当我们联机到一个 FTP 站台时,我们可以看到二个欢迎讯息,一个是登入前的讯息,另一个是登入后的讯息。以下列讯息为例:<br>
<br>ftp localhost Trying ::1...<br>
Connected to localhost.alexwang.com.<br>
220- Welcome to My FTP Server.<br>
220-<br>
220- This is a welcome message<br>
220-<br>
220- Nice to see you.<br>
220 vmware.alexwang.com FTP server (Version 6.00LS) ready.<br>
Name (localhost:alex):<br>
331 Password required for alex.<br>
Password:<br>
230- This is the message of the day.<br>
230-<br>
230- It will be shown after user login.<br>
230 User alex logged in.<br>
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
开头为 220- 的就是登入前的讯息,我们称它为欢迎讯息。以 230- 为开头的是登入后的讯息,我们称它为本日讯息 (Message of the day)。这二种讯息我们都可以自行设定。 如果您要设定的是登入前的讯息,请新增一个档案
/etc/ftpwelcome,并将您的讯息写入该文件中。以下为上述范例中的讯息内容:<br>
<br> Welcome to My FTP Server.
This is a welcome message
Nice to see you.
您不需要写 220- 等数据,FTP 服务器会自动帮您加上这种代码。而登入后的讯息是存放在
以上是FreeBSD 配置FTP服务的详细内容。更多信息请关注PHP中文网其他相关文章!