您的位置:首页 > 编程语言 > PHP开发

pure-ftpd服务器安装配置

2016-07-07 14:15 549 查看
一:实验环境

1. 操作系统:centos 6.7 x86_64

2. pure-ftpd:  pure-ftpd-1.0.42.tar.bz2

二:安装

1.安装所需软件包

[root@localhost ~]# yum -y install gcc gcc-c++ libstdc++-devel make man

2.在安装pure-ftpd之前首先查看系统内是否有ftp(该用户是匿名用户对应的系统用户)用户

[root@localhost ~]# grep ftp /etc/passwd

ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

由以上可知,系统默认已有该用户,并且该用户的家目录为/var/ftp,检查/var/ftp目录是否存在,不存在就创建

[root@localhost ~]# mkdir -p /var/ftp

3.安装pure-ftpd

[root@localhost ~]# tar xf pure-ftpd-1.0.42.tar.bz2 

[root@localhost ~]# cd pure-ftpd-1.0.42

[root@localhost pure-ftpd-1.0.42]#  ./configure --prefix=/opt/pure-ftpd --sysconfdir=/etc/pure-ftpd --with-sysquotas --with-puredb --with-throttling --with-ratios --with-ftpwho --with-diraliases --with-peruserlimits --with-language=english --with-rfc2640

[root@localhost pure-ftpd-1.0.42]# make

[root@localhost pure-ftpd-1.0.42]# make install

三:配置pure-ftpd

◆.创建配置文件所在目录

[root@localhost pure-ftpd-1.0.42]# mkdir /etc/pure-ftpd

◆.复制相关配置文件

[root@localhost pure-ftpd-1.0.42]# cp configuration-file/pure-config.py /opt/pure-ftpd/sbin/

[root@localhost pure-ftpd-1.0.42]# cp configuration-file/pure-ftpd.conf /etc/pure-ftpd/

[root@localhost pure-ftpd-1.0.42]# cp contrib/redhat.init /etc/init.d/pure-ftpd

◆.更改权限

[root@localhost pure-ftpd-1.0.42]# chmod 755 /opt/pure-ftpd/sbin/pure-config.py

[root@localhost pure-ftpd-1.0.42]# chmod 755 /etc/init.d/pure-ftpd && chkconfig --add pure-ftpd

◆.创建命令软连接

[root@localhost pure-ftpd-1.0.42]# ln -s /opt/pure-ftpd/sbin/* /usr/local/sbin/

[root@localhost pure-ftpd-1.0.42]# ln -s /opt/pure-ftpd/bin/* /usr/local/bin/

◆.修改启动脚本,这里只列出修改处(红色字体)

[root@localhost ~]# cat /etc/init.d/pure-ftpd 

以上略

# Path to the pure-ftp binaries.

prog=pure-ftpd
config=pure-config.py

fullpath=/usr/local/sbin/$config

pureftpwho=/usr/local/sbin/pure-ftpwho

start() {

        echo -n $"Starting $prog: "

        daemon "$fullpath /etc/pure-ftpd/pure-ftpd.conf > /dev/null"

        RETVAL=$?

        [ $RETVAL = 0 ] && touch /var/lock/subsys/$prog

        echo

}

stop() {

        echo -n $"Stopping $prog: "

        killproc $prog

        RETVAL=$?

        [ $RETVAL = 0 ] && rm -f /var/lock/subsys/$prog

        echo

}

以下略

◆.根据实际情况修改主配置文件

[root@localhost ~]# egrep -v "^#|^$" /etc/pure-ftpd/pure-ftpd.conf 

ChrootEveryone              yes
BrokenClientsCompatibility  no
MaxClientsNumber            50
Daemonize                   yes
MaxClientsPerIP             8
VerboseLog                  no
DisplayDotFiles             no
AnonymousOnly               no
NoAnonymous                 no
SyslogFacility              ftp
DontResolve                 yes
MaxIdleTime                 15
PureDB                      /etc/pure-ftpd/pureftpd.pdb              //用户数据库名称和位置
LimitRecursion              2000 8
AnonymousCanCreateDirs      no
MaxLoad                     4
AntiWarez                   yes
AnonymousBandwidth          50
Umask                       133:022
MinUID                      100
AllowUserFXP                no
AllowAnonymousFXP           no
ProhibitDotFilesWrite       yes
ProhibitDotFilesRead        no
AutoRename                  yes
AnonymousCantUpload         yes
NoChmod                     yes
CreateHomeDir               yes                                      //当家目录不存在时,自动创建家目录
MaxDiskUsage                99
NoRename                    yes
CustomerProof               yes
IPV4Only                    yes

◆. 启动pure-ftpd服务
[root@localhost~]# /etc/init.d/pure-ftpd start

Starting pure-ftpd:                                      [  OK  ]
◆. 创建虚拟用户对应的系统用户账户ftpuser
[root@localhostpure-ftpd-1.0.42]# groupadd ftpgroup

[root@localhost pure-ftpd-1.0.42]# useradd -g ftpgroup -d /dev/null -s /etc ftpuser
◆. 创建测试用户user1,密码为123456
[root@localhostpure-ftpd-1.0.42]# pure-pw useradd user1 -u ftpuser -d /home/user1 -m

Password:                                      //输入123456

Enter it again:                                //再次输入123456
 
四:验证配置
1.用user1登录后,就可以上传和下载文件了
[root@localhost~]# ftp 127.0.0.1

Connected to 127.0.0.1 (127.0.0.1).

220---------- Welcome to Pure-FTPd [privsep] ----------

220-You are user number 1 of 50 allowed.

220-Local time is now 14:12. Server port: 21.

220 You will be disconnected after 15 minutes of inactivity.

Name (127.0.0.1:root): user1

331 User user1 OK. Password required

Password:

230 OK. Current directory is /

Remote system type is UNIX.

Using binary mode to transfer files.

ftp> ls

227 Entering Passive Mode (127,0,0,1,191,156)

150 Accepted data connection

226-Options: -l 

226 0 matches total

ftp> mkdir test

257 "test" : The directory was successfully created

ftp> ls 

227 Entering Passive Mode (127,0,0,1,205,7)

150 Accepted data connection

drwxr-xr-x    2 500        ftpgroup        4096 Jul  7 14:13 test

226-Options: -l 

226 1 matches total

ftp> bye

221-Goodbye. You uploaded 0 and downloaded 0 kbytes.

221 Logout.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  pure-ftpd ftp服务器