一、安装pureftpd

//这个软件比vsftp配置起来更加灵活和安全。

/*官网是 http://www.pureftpd.org/project/pure-ftpd*/
[root@localhost ~]# cd /usr/local/src/
[root@localhost src]# wget http://download.pureftpd.org/pub/pure-ftpd/releases/pure-ftpd-1.0.32.tar.bz2
[root@localhost src]# tar jxf pure-ftpd-1.0.32.tar.bz2
[root@localhost src]# cd pure-ftpd-1.0.32
[root@localhost pure-ftpd-1.0.32]# ./configure \
--prefix=/usr/local/pureftpd \
--without-inetd \
--with-altlog \
--with-puredb \
--with-throttling \
--with-peruserlimits \
--with-tls
[root@localhost pure-ftpd-1.0.32]# make
[root@localhost pure-ftpd-1.0.32]# make install
[root@localhost pure-ftpd-1.0.32]# cd configuration-file
[root@localhost pure-ftpd-1.0.32]# mkdir -p /usr/local/pureftpd/etc/
[root@localhost configuration-file]# cp pure-ftpd.conf /usr/local/pureftpd/etc/pure-ftpd.conf
[root@localhost configuration-file]# cp pure-config.pl /usr/local/pureftpd/sbin/pure-config.pl
[root@localhost configuration-file]# chmod 755 /usr/local/pureftpd/sbin/pure-config.pl
[root@localhost configuration-file]# vim /usr/local/pureftpd/etc/pure-ftpd.conf
//拷贝
ChrootEveryone yes
BrokenClientsCompatibility no
MaxClientsNumber 50
Daemonize yes
MaxClientsPerIP 8
VerboseLog no
DisplayDotFiles yes
AnonymousOnly no
NoAnonymous no
SyslogFacility ftp
DontResolve yes
MaxIdleTime 15
PureDB /usr/local/pureftpd/etc/pureftpd.pdb
LimitRecursion 3136 8
AnonymousCanCreateDirs no
MaxLoad 4
AntiWarez yes
Umask 133:022
MinUID 100
AllowUserFXP no
AllowAnonymousFXP no
ProhibitDotFilesWrite no
ProhibitDotFilesRead no
AutoRename no
AnonymousCantUpload no
PIDFile /usr/local/pureftpd/var/run/pure-ftpd.pid
MaxDiskUsage 99
CustomerProof yes //启动pureftpd
[root@localhost ~]# /usr/local/pureftpd/sbin/pure-config.pl /usr/local/pureftpd/etc/pure-ftpd.conf //启动成功,会显示一行长长的以Running开头的信息 //建立系统用户及它所属的目录
[root@localhost ~]# mkdir /data/www/
[root@localhost ~]# useradd www
[root@localhost ~]# chown -R www:www /data/www/ //建立虚拟用户,使其与系统用户关联起来 ****因为如果用系统用户身份登录ftp服务器,则需要知道用户的用户名和密码,这样不安全。
所以创建一个虚拟用户,映射到系统用户,进入ftp服务器。但并不具有系统用户的权限,只可以进入系统用户对应的目录*******
[root@localhost ~]# /usr/local/pureftpd/bin/pure-pw useradd ftp_user1 -uwww -d /data/www/ //这里可将pure-pw这个命令做个别名
Password:
Enter it again:
[root@localhost ~]# /usr/local/pureftpd/bin/pure-pw mkdb //创建用户信息数据库文件 //再添加一个虚拟用户
[root@localhost ~]# /usr/local/pureftpd/bin/pure-pw useradd ftp_user2 -uwww -d /tmp
[root@localhost ~]# /usr/local/pureftpd/bin/pure-pw mkdb //创建一个虚拟用户就要创建一个用户信息数据库文件
//列出当前的账号
[root@localhost ~]# /usr/local/pureftpd/bin/pure-pw list //删除账号
[root@localhost ~]# /usr/local/pureftpd/bin/pure-pw userdel ftp_user2

编译时出现的错误!!!

1.configure: error: OpenSSL headers not found.
解决方法: --》 pkg install -y openssl-devel

二、测试pureftpd

//测试需要工具
[root@localhost ~]# pkg install -y lftp //测试
[root@localhost ~]# touch /data/www/123.txt
[root@localhost ~]# lftp ftp_user1@127.0.0.1
口令:
lftp ftp_user1@127.0.0.1:~> ls
drwxr-xr-x 2 514 www 4096 Jun 12 11:14 .
drwxr-xr-x 2 514 www 4096 Jun 12 11:14 ..
-rw-r--r-- 1 514 www 0 Jun 12 11:14 123.txt //登陆后,使用 ls 命令可以列出当前目录都有什么文件。

====================我是分割线。================

 
 一、vsftpd

1.安装源码包
[root@localhost ~]# pkg install -y vsftpd db4-utils
2.建立系统用户
[root@localhost ~]# useradd -s /sbin/nologin virftp //建立虚拟账号相关联的系统账号
3.建立虚拟用户信息文件
[root@localhost ~]# vim /etc/vsftpd/vsftpd_login //建立虚拟账户相关的文件
//加入
/*此文件单行为用户名,
双行为密码*/
test1
123456
test2
abcdef
4.修改文件权限
[root@localhost ~]# chmod 600 /etc/vsftpd/vsftpd_login
5.生成库文件
[root@localhost ~]# db_load -T -t hash -f /etc/vsftpd/vsftpd_login /etc/vsftpd/vsftpd_login.db //生成对应的库文件
6.建立装虚拟用户配置文件的文件夹
[root@localhost ~]# mkdir /etc/vsftpd/vsftpd_user_conf //建立虚拟账号相关的目录以及配置文件
[root@localhost ~]# vim /etc/vsftpd/vsftpd_user_conf/test1 //创建用户test1对应的配置文件
//加入
local_root=/home/virftp/test1
anonymous_enable=NO
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
idle_session_timeout=600
data_connection_timeout=120
max_clients=10
max_per_ip=5
local_max_rate=50000 7.建立虚拟用户的ftp文件夹
[root@localhost ~]# mkdir -p /home/virftp/test1 //用户名test1的ftp文件夹
[root@localhost ~]# chown -R virftp:virftp /home/virftp

8.将虚拟用户的文件配置到pam上
[root@localhost ~]# vim /etc/pam.d/vsftpd
//在开头添加两行,在这里配置存放账号密码的文件
/*如果Linux系统是64位的,改为/lib64/security/pam_userdb.so*/
auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login 9.修改vsftpd的配置文件
[root@localhost ~]# vim /etc/vsftpd/vsftpd.conf
//按要求修改
...
...
anonymous_enable=YES改为anonymous_enable=NO
#anon_upload_enable=YES 改为 anon_upload_enable=NO
#anon_mkdir_write_enable=YES 改为 anon_mkdir_write_enable=NO
#chroot_local_user=YES 将注释去掉
...
...
#文件最尾部加入
guest_enable=YES
guest_username=virftp
virtual_use_local_privs=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf

10.启动服务
[root@localhost ~]# /etc/init.d/vsftpd start ****启动失败****
如果同时有两个ftp在服务器上,检查是否21端口被占用 **************

二、测试vsftpd

[root@localhost ~]# pkg install -y lftp
[root@localhost ~]# cat /etc/vsftpd/vsftpd_login
test1
123456
test2
abcdef
[root@localhost ~]# lftp test1@127.0.0.1
口令:
lftp test1@127.0.0.1:~> ls
lftp test1@127.0.0.1:~> quit
[root@localhost ~]# cd /home/virftp/test1
[root@localhost ~]# touch 2.txt
[root@localhost ~]# mkdir 123
[root@localhost ~]# lftp test1@127.0.0.1
口令:
lftp test1@127.0.0.1:~> ls
drwxr-xr-x 2 0 0 4096 Apr 16 13:39 123
-rw-r--r-- 1 0 0 0 Apr 16 13:39 2.txt

配置vsftpd遇到的错误:

lftp test1@127.0.0.1:~> ls
ls: 登录失败: 500 OOPS: bad bool value in config file for: anon_upload_enable --> 因为你的那个YES/NO 布尔值(bool value)后边加了一个空格,即:
anon_upload_enable=NO空格 查看/etc/vsftpd/vsftpd.conf 和 /etc/vsftpd/vsftpd_user_conf/test1 中
anon_upload_enable=NO后有无空格 正确的格式应该是:
anon_world_readable_only=NO(无空格)!!!!!!
注意,NO后边的空格,要用退格键将其删除。

vsftp or pureftpd的更多相关文章

  1. Centos 安装pureftpd工具

    之前由于vsftp上传文件会导致权限变更,因此一直不太想用ftp工具,一直sftp了,这样就导致权限过大,用户对家目录下所有文件都有权限,很容易误删其他文件.最近听同事说pure-ftp工具不错,试了 ...

  2. centos pure-ftpd配置及错误解决

    使用yum安装pure-ftpd Pure-FTPd是Linux上的一个开源的FTP服务程序,在易用性.配置性上比vsftp较方便,下面我们使用centos6演示安装和配置pure-ftpd. 安装e ...

  3. ftp--vsftp\pureftpd

    FTP是File Transfer Protocol(文件传输协议),用于Internet上的控制文件的双向传输. 现今常用在一个局域网内,如学校.公司等一个指定范围的区域.(因为太过于简单和不安全) ...

  4. FTP vsftp 安装、管理

    FTP简介 FTP是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为文传协议,用户Internet上的控制文件的双向传输. FTP的主要作用,就是让用户链接上一个远 ...

  5. vsftp服务器搭建

    1.FTP的主动模式和被动模式的区别: 最大的区别是数据端口并不总是20, 主动模式和被动模式的优缺点: 主动FTP对FTP服务器的管理和安全很有利,但对客户端的管理不利.因为FTP服务器企图与客户端 ...

  6. xshell使用xftp传输文件、使用pure-ftpd搭建ftp服务

    6月25日任务 15.4 xshell使用xftp传输文件15.5 使用pure-ftpd搭建ftp服务扩展vsftp使用mysql存放虚拟用户并验证 http://www.aminglinux.co ...

  7. centos 7 搭建vsftp

    一.FTP简介 1.ftp 概述                                                FTP:(file  transfer  protocol文件传输协议) ...

  8. Linux centosVMware xshell使用xftp传输文件、使用pure-ftpd搭建ftp服务

    一.xshell使用xftp传输文件 Ctrl+Alt+F 弹出 下载进入 填写任意名字,自己邮箱 进入邮箱点击网址就自动下载了 然后安装 二.使用pure-ftpd搭建ftp服务 yum insta ...

  9. Centos6.5中安装和配置vsftp详细总结

    一.vsftp安装篇 #查看是否安装:rpm -qa|grep vsftpd#卸载vsftpdrpm -e vsftpd-2.2.2-11.el6_3.1x86_64 --nodeps# 安装vsft ...

随机推荐

  1. iOS中Storyboard使用要点记录

    摘要: Storyboard的使用与原本单个xib文件的使用还是有些不同的,于习惯上会有些出入.在这里记下遇到的要点. 1.将第一个ViewController用设置成NavigationContro ...

  2. Mysql使用大全 从基础到存储过程

    平常习惯了phpmyadmin等其他工具的的朋友有的根本就不会命令,如果让你笔试去面试我看你怎么办,所以,学习一下还是非常有用的,也可以知道你通过GUI工具的时候工具到底做了什么.Mysql用处很广, ...

  3. Selenium - 设置元素等待

    一.sleep () 休眠方法   --time 固定等待 在开发自动化框架过程中,最忌讳使用Python自带模块的time的sleep方法进行等待,虽然可以自定义等待时间,但当网络条件良好时, 依旧 ...

  4. WebService或HTTP服务端接收请求转发消息到另一个服务端-实现思路

    1.需求结构(WebService) A客户端<->B服务端<->C服务端 说明: a.在B服务端上面添加配置项(1.是否转发消息到C服务端:2.C服务端IP和端口): b.A ...

  5. HDU 2110 Crisis of HDU

    Crisis of HDU Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) To ...

  6. Java之旅hibernate(8)——基本关系映射

    何为关系,何为映射,关系这个词想必大家都不陌生.比方你和老师之间是师生关系,你和父母之间是父子或者父女(母子或者母女关系). 关系是存在某种联系物体之间产生的.什么都是可能的.比方你和工具,你仅仅能使 ...

  7. 回车替换Tab 并不会 提交表单 IE Chrome 通过

    网上一堆可以回车替换tab的代码,可是基本都忽略谷歌浏览器的兼容性,找了3个小时 试了无数遍,终于总结出这一段代码,希望能帮到需要的同学,也给自己留个备忘        document.onkeyd ...

  8. 日期-date.js

    Date.prototype.format = function(format) { var o = { "M+" : this.getMonth() + 1, // 月 &quo ...

  9. Class中isAssignableFrom() 方法

    看Spring源码的时候看到这个方法: protected WebApplicationContext createWebApplicationContext(ServletContext sc) { ...

  10. thymeleaf教程

    本教程涵盖了常见的前端操作,比如,判断,循环,引入模板,常用函数(日期格式化,字符串操作)下拉,js和css中使用,基本可以应对一般场景. 怎么使用? 前端html页面标签中引入如下: <htm ...