欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

linux proftpd-1.3.4c安装配置实例

程序员文章站 2022-04-06 21:03:18
1.软件下载安装 [root@chenghy ~]# cd /root [root@chenghy ~]# wget ftp://ftp.proftpd.org...

1.软件下载安装

[root@chenghy ~]# cd /root
[root@chenghy ~]# wget ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.4c.tar.gz
[root@chenghy ~]# tar zxvf proftpd-1.3.4c.tar.gz
[root@chenghy ~]# cd proftpd-1.3.4c
[root@chenghy ~]# ./configure --prefix=/usr/local/proftpd
[root@chenghy ~]# make
[root@chenghy ~]# make install

 2.修改配置文件

[root@chenghy ~]# vim /usr/local/proftpd/etc/proftpd.conf
servername           "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          20000  30000        # 被动模式端口段
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以哪个用户组身份运行
<directory ~/>
allowoverwrite         on      # 允许写入覆盖
    <limit login cwd retr read dirs>   # 设置虚拟用户读权限
        allowall
    </limit>
    <limit all>             # 设置omd用户所有权限
        order allow,deny
        allowuser omd
        denyall
    </limit>
</directory>

3.添加虚拟用户和组

[root@chenghy ~]# /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@chenghy ~]# /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@chenghy ~]# /usr/local/proftpd/bin/ftpasswd --group --name=myftp --gid=2000 --member=bsmp --member=omd --file=/usr/local/proftpd/etc/ftp.group

4.将用户目录设置权限

[root@chenghy ~]# chown -r 2002:2000 /home/omd/

####下面两行用来删除用户和组########### 

[root@chenghy ~]# /usr/local/proftpd/bin/ftpasswd --passwd --name=bsmp --delete-user --file=/usr/local/proftpd/etc/ftp.users[root@chenghy ~]# /usr/local/proftpd/bin/ftpasswd --group --name=myftp --delete-group --file=/usr/local/proftpd/etc/ftp.group

5.将proftpd添加到系统服务

  按照网上的资料修改/etc/rc.d/init.d/proftpd文件后发现配置不成功,后来自己修改了一下此文件完成了配置

[root@chenghy ~]# 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@chenghy ~]# chmod 755 /etc/rc.d/init.d/proftpd
[root@chenghy ~]# chkconfig add proftpd
[root@chenghy ~]# chkconfig --level 35 proftpd on
[root@chenghy ~]# service proftpd start

6.防火墙设置

  只允许主动模式访问添加下面的第①、②条,只允许被动模式访问添加下面的②、③条,两种模式都允许添加下面①、②、③条。

[root@chenghy ~]# iptables -a rh-firewall-1-input -p tcp -m tcp --dport 20 -j accept
[root@chenghy ~]# iptables -a rh-firewall-1-input -p tcp -m tcp --dport 21 -j accept
[root@chenghy ~]# iptables -a rh-firewall-1-input -p tcp -m tcp --dport 20000:30000 -j accept

相关标签: linux proftpd