FTP服务器搭建及自动下载文件脚本
一、FTP服务器搭建
在虚拟机192.168.109.135上搭建FTP服务器
1、安装vsftpd:yum install vsftpd,安装成功后如下:
2、添加test用户,不能登录系统(-s /sbin/nologin),FTP文件夹在(-d /home/ftp):
adduser -d /home/ftp -s /sbin/nologin test
设置test用户密码为test:passwd test
3、设置不允许匿名访问:
/etc/vsftpd/vsftpd.conf修改anonymous_enable=NO
4、配置被动模式端口范围及允许端口访问:
/etc/vsftpd/vsftpd.conf增加
pasv_enable=YES
pasv_min_port=10000
pasv_max_port=10110
5、配置文件/etc/vsftpd/vsftpd.conf修改完后重启服务:service vsftpd restart
查看服务状态:service vsftpd status
6、防火墙允许如下端口访问:
(1)21为默认的FTP服务器的默认监听端口,用于传输FTP命令
/sbin/iptables -I INPUT -p tcp --dport 21 -j ACCEPT
(2)10000~10110为被动模式下,FTP服务器分配的数据端口范围,用于传输FTP数据
/sbin/iptables -I INPUT -p tcp --dport 10000:10110 -j ACCEPT
查看防火墙状态:/sbin/iptables -L -n -v
二、浏览器与命令行测试
1、浏览器测试:ftp://192.168.109.135/
2、命令行测试:
三、自动下载文件脚本
在虚拟机192.168.109.134上执行自动下载文件脚本
autoDownLoad.sh
#!/bin/sh
BASEPATH="/home/download/log/"
CURRENTDAY=`date +%Y%m%d`
#YESTERDAY=`date -d "-1 day" +%Y%m%d`
SRCDIR="/home/ftp/"${CURRENTDAY}
#SRCDIR="/data3/OMCDATA/GD/GPON_GD-L-UNM2000-1-P/"${YESTERDAY}
DSTDIR="/home/download/"
LOGFILE=${BASEPATH}"autoDownLoad.log"
HOST="192.168.109.135"
USER="test"
PASS="test"
echo `date +"%Y-%m-%d %H:%M:%S begin downLoad............................................"`>>${LOGFILE}
ftp -n <<EOF
open ${HOST}
user ${USER} ${PASS}
binary
cd ${SRCDIR}
lcd ${DSTDIR}
prompt off
mget test*.txt
bye
EOF
echo `date +"%Y-%m-%d %H:%M:%S end"`>>${LOGFILE}
执行后结果如下: