Loading

vsftpd安装

直接上脚本

#!/bin/sh

yum -y install vsftpd && systemctl start vsftpd 

ftpuser='ftp'
ftppasswd='passwd'

echo -e $ftpuser >> /etc/vsftpd/vsftpdusers.txt && echo -e $ftppasswd >> /etc/vsftpd/vsftpdusers.txt && db_load -T -t hash -f /etc/vsftpd/vsftpdusers.txt /etc/vsftpd/vsftpdusers.db && chmod 600 /etc/vsftpd/vsftpdusers.db 2>&1 >/dev/null

cat > /etc/pam.d/vsftpd.users << EOF
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpdusers
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpdusers
EOF

mkdir /home/www && chown -R nobody.nobody /home/www && sed -i '/anonymous_enable/s/YES/NO/g' /etc/vsftpd/vsftpd.conf && sed -i '/anonymous_enable/s/YES/NO/g' /etc/vsftpd/vsftpd.conf && sed -i '/chroot_list_file/s/#//g' /etc/vsftpd/vsftpd.conf && sed -i '/local_enable/ c\local_enable=YES' /etc/vsftpd/vsftpd.conf && sed -i '/chroot_list_enable/ c\chroot_list_enable=YES' /etc/vsftpd/vsftpd.conf && sed -i '/xferlog_file=/ c\xferlog_file=/var/log/vsftpd.log' /etc/vsftpd/vsftpd.conf && sed -i '/ascii_upload_enable/s/#//g' /etc/vsftpd/vsftpd.conf && sed -i '/ascii_download_enable/s/#//g' /etc/vsftpd/vsftpd.conf && sed -i '/pam_service_name/ c\pam_service_name=vsftpd.users' /etc/vsftpd/vsftpd.conf && sed -i 's/listen=NO/listen_port=50030/g' /etc/vsftpd/vsftpd.conf && sed -i 's/listen_ipv6=YES/# listen_ipv6=YES/g' /etc/vsftpd/vsftpd.conf 2>&1 >/dev/null

cat >> /etc/vsftpd/vsftpd.conf << EOF
pasv_enable=YES
pasv_min_port=50000
pasv_max_port=50020
pasv_promiscuous=YES

guest_enable=YES
guest_username=nobody
user_config_dir=/etc/vsftpd/vuser_conf
allow_writeable_chroot=YES
EOF

echo $ftpuser > /etc/vsftpd/chroot_list && mkdir /etc/vsftpd/vuser_conf
cat > /etc/vsftpd/vuser_conf/$ftpuser << EOF
local_root=/home/www
write_enable=YES
anon_umask=022
anon_world_readable_only=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
cmds_allowed=ABOR,CWD,LIST,MDTM,MKD,NLST,PASS,PASV,PORT,PWD,QUIT,RETR,RNFR,RNTO,SIZE,STOR,TYPE,USER,REST,CDUP,HELP,MODE,NOOP,REIN,STAT,STOU,STRU,SYST,FEAT,DELE
EOF

systemctl restart vsftpd
systemctl enable vsftpd
if [ $? -eq 0 ]; then
	echo -e "\033[32m vsftpd setup ok! \033[0m";
else
	echo -e "\033[31m vsftpd setup fail! \033[0m";
	exit 0;
fi

posted @ 2022-07-06 13:35  萝卜青菜~  阅读(39)  评论(0编辑  收藏  举报