I have to upgrade my vsftpd so ill just post what i do here so you can follow me :)
(17:54:14) omes@Glove:~/packages$ wget
ftp://vsftpd.beasts.org/users/cevans/vsftpd1.2.1.tar.gz
(17:54:37) omes@Glove:~/packages$ tar zxvf vsftpd-1.2.1.tar.gz
(17:54:53) omes@Glove:~/packages$ cd vsftpd-1.2.1
(17:55:32) omes@Glove:~/packages/vsftpd-1.2.1$ make
(17:57:02) omes@Glove:~$ su -
Password:
(17:57:04) ROOT@Glove:~# mkdir /usr/share/empty/
* ( With Slackware you got all the next stuff in INSTALL already done, so ill just jump to make install ) *
(17:59:49) ROOT@Glove:/home/omes/packages/vsftpd-1.2.1# cp vsftpd.conf /etc/
(17:59:59) ROOT@Glove:/home/omes/packages/vsftpd-1.2.1# pico /etc/vsftpd.conf
Code:
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chown_uploads=YES
chown_username=nobody
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
idle_session_timeout=600
data_connection_timeout=120
nopriv_user=ftpsecure
async_abor_enable=NO
ascii_upload_enable=NO
ascii_download_enable=NO
ftpd_banner=Glove vsFTPd server
deny_email_enable=YES
banned_email_file=/etc/vsftpd.ban
ls_recurse_enable=YES
listen=YES
(18:03:04) ROOT@Glove:/home/omes/packages/vsftpd-1.2.1# useradd -g users -s /bin/false ftpsecure
(18:05:40) ROOT@Glove:~# pico /etc/inetd.conf
Code:
# File Transfer Protocol (FTP) server:
#ftp stream tcp nowait root /usr/sbin/tcpd proftpd
(18:06:50) ROOT@Glove:~# killall -HUP inetd
(18:07:34) ROOT@Glove:/home/omes/packages/vsftpd-1.2.1# touch /etc/vsftpd.ban
(18:08:59) ROOT@Glove:~# /usr/local/sbin/vsftpd &
[1] 3627
(18:09:12) ROOT@Glove:~# ftp localhost
Connected to localhost.
220 Glove vsFTPd server
Name (localhost:omes):
* ( So now we know the server works without inetd.. lets try to get it working with inetd :) ) *
(18:11:56) ROOT@Glove:~# pico /etc/inetd.conf
Code:
# File Transfer Protocol (FTP) server:
ftp stream tcp nowait root /usr/sbin/tcpd /usr/local/sbin/vsftpd
(18:12:01) ROOT@Glove:~# killall -HUP inetd
(18:12:05) ROOT@Glove:~# killall -9 vsftpd
(18:12:09) ROOT@Glove:~# pico /etc/vsftpd.conf
Code:
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=NO
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chown_uploads=YES
chown_username=nobody
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
idle_session_timeout=600
data_connection_timeout=120
nopriv_user=ftpsecure
async_abor_enable=NO
ascii_upload_enable=NO
ascii_download_enable=NO
ftpd_banner=Glove vsFTPd server
deny_email_enable=YES
banned_email_file=/etc/vsftpd.ban
ls_recurse_enable=YES
* ( Simply remove the listen=YES line ) *
(18:13:36) ROOT@Glove:~# vsftpd
500 OOPS: vsftpd: does not run standalone, must be started from inetd
* ( Cool lets try logging in through ftp then.. ) *
(18:13:51) ROOT@Glove:~# ftp localhost
Connected to localhost.
220 Glove vsFTPd server
Name (localhost:omes):
* ( Lets get anonymous to work ) *
(18:42:54) ROOT@Glove:/home/ftp# chmod 755 /home/ftp/incomming/
(18:43:18) ROOT@Glove:/home/ftp# chown nobody:ftp /home/ftp/incomming/
Now you should be able to log in through anonymous as well, and store files under /home/ftp/incomming
We've just installed our own ftp server, and its using inetd :) Hope you like this..
- ^OmeS^
Ps.: i forgot to get the anon stuff working.. its fixed now i guess :p