啟用vsftpd,出現500 OOPS錯誤


原本想以阻擋ftp來練習iptables,但是pre-built Oracle VM VirtualBox並沒有安裝vsftpd

# rpm -qa |grep vsftpd

那就自行下載vsftpd,並解壓縮到 ~/vsftpd-3.0.0

# tar -zxvf vsftpd-3.0.0.tar.gz

安裝vsftpd:
# cd /vsftpd-3.0.0
# make
# make install
# cp vsftpd.conf /etc

執行vsfptd:
[root@localhost share]# cd /usr/local/sbin/
[root@localhost sbin]# ./vsftpd &
500 OOPS: could not bind listening IPv4 socket

出現錯誤,無法啟動。查了錯誤訊息,好像是Port的問題。

# netstat -tulp |grep ftp
tcp   0  0 *:ftp   *:*  LISTEN    2780/tnslsnr

原來Port已經被Oracle tnslsnr佔走了,那只好改更vsftpd的port了。

在 /etc/vsftpd.conf 內加入下列:
listen_port=100

再次啟動,成功了。
[root@localhost sbin]# ./vsftpd &
[1] 21820

登入測試
# ftp 127.0.0.1 100
Connected to 127.0.0.1.
220 (vsFTPd 3.0.0)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (127.0.0.1:root):