ProFTPd
CentOS系统
[root@chenghy ~]# vim /usr/local/proftpd/etc/proftpd.confServerName "chenghy's FTP Server" ServerType standalone # 以独立进程方式运行 DefaultServer on Port 21 # FTP端口
Umask 002 # 权限,建议设置为002 UseReverseDNS off # 禁止DNS反查 IdentLookups off # 禁止DNS反查 ServerIdent off # 隐藏软件版本信息 AllowRetrieveRestart on # 下载断点续传 AllowStoreRestart on # 上传断点续传
## 虚拟用户认证信息 AuthOrder mod_auth_file.c # 只允许虚拟用户登陆 AuthUserFile /usr/local/proftpd/etc/ftp.users AuthGroupFile /usr/local/proftpd/etc/ftp.group DefaultRoot ~ # 将用户限定在根目录下
PassivePorts 2 # 被动模式端口段 SystemLog /var/log/proftpd/proftpd.log # 软件日志 TransferLog /var/log/proftpd/proftpd.xfer.log LogFormat default "%h %u %t %D \"%r\" %s %b" # 日志格式 ExtendedLog /var/log/proftpd/access.log WRITE,READ default # 访问日志 MaxInstances 250 # 允许最大连接 MaxClients 20 # 最大用户数 MaxLoginAttempts 3 # 最大尝试连接次数 TimeoutLogin 30 # 身份验证超时 TimeoutIdle 120 # 发呆超时 TimeoutNoTransfer 300 # 无数据传输超时 User nobody # 定义ftp以哪个用户身份运行 Group nobody # 定义ftp以哪个用户组身份运行
[root@centos ~]# /usr/local/proftpd/bin/ftpasswd --passwd --name=bsmp --home=/home/omd/file/ --uid=2001 --gid=2000 --shell=/sbin/nologin --file=/usr/local/proftpd/etc/ftp.users
[root@centos ~]# /usr/local/proftpd/bin/ftpasswd --passwd --name=omd --home=/home/omd/ --uid=2002 --gid=2000 --shell=/sbin/nologin --file=/usr/local/proftpd/etc/ftp.users
[root@centos ~]# /usr/local/proftpd/bin/ftpasswd --group --name=myftp --gid=2000 --member=bsmp --member=omd --file=/usr/local/proftpd/etc/ftp.group
[root@centos ~]# chown -R 2002:2000 /home/omd/
####下面两行用来删除用户和组###########[root@centos ~]# /usr/local/proftpd/bin/ftpasswd --passwd --name=bsmp --delete-user --file=/usr/local/proftpd/etc/ftp.users [root@centos ~]# /usr/local/proftpd/bin/ftpasswd --group --name=myftp --delete-group --file=/usr/local/proftpd/etc/ftp.group
按照网上的资料修改/etc/rc.d/init.d/proftpd文件后发现配置不成功,后来自己修改了一下此文件完成了配置
[root@centos ~]# vim /etc/rc.d/init.d/proftpd #!/bin/sh # Source function library. . /etc/rc.d/init.d/functions RETVAL=0 start() { echo -n $"Starting proftpd : " daemon /usr/local/proftpd/sbin/proftpd -c /usr/local/proftpd/etc/proftpd.conf 2>/dev/null # daemon命令是/etc/rc.d/init.d/functions中自带的 RETVAL=$? echo [ $RETVAL -eq 0 ] && touch /var/lock/subsys/proftpd } stop() { echo -n $"Shutting down proftpd : " killproc proftpd # killproc命令是/etc/rc.d/init.d/functions中自带的 RETVAL=$? echo [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/proftpd } # See how we were called. case "$1" in start) start ;; stop) stop ;; restart) stop start ;; *) echo "Usage: proftpd { start | stop | restart }" esac
[root@centos ~]# chmod 755 /etc/rc.d/init.d/proftpd [root@centos ~]# chkconfig add proftpd [root@centos ~]# chkconfig --level 35 proftpd on [root@centos ~]# service proftpd start
只允许主动模式访问添加下面的第①、②条,只允许被动模式访问添加下面的②、③条,两种模式都允许添加下面①、②、③条。
[root@centos ~]# iptables -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 20 -j ACCEPT [root@centos ~]# iptables -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 21 -j ACCEPT [root@centos ~]# iptables -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 20000:30000 -j ACCEPT
您的帮助是我们莫大的动力!感谢有您一路相随,记得点击页面右上角的“大拇指”或者“两角箭头”,谢谢了。