1.对于12.04的vsftpd 有一些bug,推荐安装版本vsftpd_2.3.5-1ubuntu2ppa1_amd64.deb
apt-get install python-software-properties
add-apt-repository ppa:thefrontiergroup/vsftpd
apt-get update
apt-get install vsftpd

2.配置虚拟用户,安装db5.1-util(对应系统版本即可)
apt-get -y install db5.1-util

3.开始具体配置
cd /etc/
/bin/cp -rf vsftpd.conf vsftpd.conf.backup
配置文件如下:
#常规配置
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
dirmessage_enable=YES
chown_uploads=NO
ascii_upload_enable=YES
ascii_download_enable=YES
chroot_list_enable=NO
ls_recurse_enable=YES
listen_port=21
listen_ipv6=NO
pam_service_name=vsftpd
chroot_local_user=YES
guest_enable=YES
guest_username=vsftpd
virtual_use_local_privs=NO
#存放用户配置文件目录,不存在请创建
user_config_dir=/etc/vsftpd/vconfig/
pam_service_name=vsftpd.pam

chroot_local_user=YES
allow_writeable_chroot=YES
#被动模式
pasv_enable=YES
pasv_min_port=61100
pasv_max_port=61200
#加密配置
ssl_enable=YES
allow_anon_ssl=YES
force_local_data_ssl=YES
force_local_logins_ssl=YES
force_anon_data_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
require_ssl_reuse=NO
rsa_cert_file=/etc/vsftpd/vconfig/vsftpd.pem
rsa_private_key_file=/etc/vsftpd/vconfig/vsftpd.key
#日志输出
syslog_enable=NO
log_ftp_protocol=NO
xferlog_enable=YES
vsftpd_log_file=/var/log/vsftpd.log
xferlog_std_format=NO
xferlog_file=/var/log/xferlog
dual_log_enable=YES

对于里面的配置选项,请自行搜索具体含义

4.配置虚拟用户
cd /etc/vsftpd
touch user.txt,文件内容如下:
abc------(用户)
abcdxxx ------(密码)
如果继续添加用户,往后添加即可.2行作为一个用户输出
运行如下命令,产生用户数据db文件
/usr/bin/db5.1_load -T -t hash -f /etc/vsftpd/user.txt /etc/vsftpd/user.db
user.txt文件和user.db文件请放在一起.生成user.db文件后,改变权限
chmod 600 user.db
对于配置新加的用户,也需要在 /etc/vsftpd/vconfig/ 文件夹下产生同名用户文件.要不然产生的用户不生效.
需要重新运行一下
/usr/bin/db5.1_load -T -t hash -f /etc/vsftpd/user.txt /etc/vsftpd/user.db
然后重启vsftpd 服务

5.配置虚拟用户目录
mkdir -p /etc/vsftpd/vconfig/
touch abc
local_root=/data/abc/ -------abc ftp用户目录
anon_umask=022 -------文件权限为644
anonymous_enable=no -------不允许匿名登录
#后面的配置选项主要对ftp上传,下载,建立目录,浏览文件,删除,移动等权限,值为yes/no.请参考下面的具体内容.通过灵活调整下面选项,即可完成对用户只上传,下载,移动/删除等权限.对于具体的含义,请自己搜索
download_enable=yes -------允许下载
anon_upload_enable=yes --------允许上传
anon_mkdir_write_enable=yes -------允许建立文件夹
anon_world_readable_only=no --------允许浏览文件
anon_other_write_enable=yes --------移动,删除,改名等权限

6.修改vsftp的pam验证配置
创建一个vsftpd.pam文件,此文件对应配置文件里面的pam_service_name选项
对于64位系统,vsftpd.pam内容如下(tab分割)
auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd/login
account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd/login

7,配置vsftpd ssl加密
运行openssl 命令即可,产生的文件对应配置里面的rsa_cert_file,rsa_private_key_file选项
openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/vsftpd/vconfig/vsftpd.key -out /etc/vsftpd/vconfig/vsftpd.pem

8.配置日志文件
产生vsftpd.log和xferlog文件
touch /var/log/vsftpd.log
touch /var/log/xferlog

同时修改文件权限,让vsftpd用户可写

9.启动vsftpd服务
service vsftpd start

10.通过flashfxp 客户端连接
采用tls进行加密.连接类型请选择FTP 使用公开SSL(验证TLS)即可.
其他客户端请自行搜索使用

ubuntu 12.04 配置vsftpd 服务,添加虚拟用户,ssl加密的更多相关文章

  1. ubuntu 12.04 配置-1

    今天对ubuntu 12.04 系统进行了相关的配置,配置的主要内容有: 1)php + mysql + apache2 web开发环境的搭建: 2)vim的简单保存退出指令: 3)文件和文件夹权限的 ...

  2. Ubuntu 14.04 配置vsftpd实现FTP服务器 - 通过FTP连接AWS

    测试主机:亚马逊AWS EC2 系统:Ubuntu 14.04 想用AWS来做服务器玩,结果发现其不能像简单使用阿里云服务器那样用ftp连接,反正也不熟悉ftp服务器搭建,那就乘这个机会学习一下如何利 ...

  3. Ubuntu 12.04 安装 vsftpd

    本篇文章由:http://xinpure.com/ubuntu-12-04-install-vsftpd/ 安装背景 wordpress 在线升级需要配置 ftp 帐号,之前用的是虚拟主机,都是带有 ...

  4. ubuntu 12.04 配置iscsi共享及挂载iscsi共享

    一.配置ubuntu 下iscsi下的target 1.配置iscsi-target: sudo apt-get install iscsi* 2.配置一个简单的iscsi target: iscsi ...

  5. 阿里云 Server (Ubuntu 12.04) 配置 FTP

    来自 http://blog.csdn.net/zgrjkflmkyc/article/details/45510345 这个是阿里云的官方用户手册  http://bbs.aliyun.com/re ...

  6. 局域网内主机ssh访问服务器宿主下VMWare 虚拟机(Ubuntu 12.04.1)并且实现虚拟机能上网的那点事

    (1)首先虚拟机已安装ssh服务 1) 自动安装 ssh 服务 apt-get install openssh-server 安装完成后,将自动开启 ssh 服务. 2) 查看 ssh 服务是否已开启 ...

  7. Ubuntu 14.04 配置VNC服务 配置Xfce4桌面

    一.安装配置VNC 1.首先安装VNC apt-get install vnc4server 2.为VNC设置密码 vncpasswd 输入密码,然后再确认一遍,就OK了. 3.启动VNC vncse ...

  8. ubuntu 12.04配置mac的Lion主题的风格

    1.下载mac壁纸 http://drive.noobslab.com/data/wallpapers/Mac-os-x-Wallpapers%28NoobsLab.com%29.zip 根据自己喜好 ...

  9. Ubuntu 12.04 LTS为例演示vsftpd虚拟用户 的配置

    vsftpd虚拟用户   2012-05-19 15:46:59|  分类: GNU/Linux |  标签:ubuntu  vsftpd  ftp  虚拟用户  |举报|字号 订阅 我们登录FTP有 ...

随机推荐

  1. pc和手机点击复制到剪贴板

    https://www.cnblogs.com/kevinCoder/p/6144376.html

  2. SQLite3约束介绍

    SQLite 约束 约束是在表的数据列上强制执行的规则.这些是用来限制可以插入到表中的数据类型.这确保了数据库中数据的准确性和可靠性. 约束可以是列级或表级.列级约束仅适用于列,表级约束被应用到整个表 ...

  3. 批量导出存储在msdb库的SSIS包

    http://blog.51cto.com/ultrasql/1924464 use msdb go IF OBJECT_ID('msdb.dbo.usp_ExportSSISPkgs') IS NO ...

  4. Linux 笔记:目录

    目录 Linux的文件系统目录树庞大而复杂.如果你非常熟悉它的话,会极大地提高你应用Linux的技巧. 简单地说,典型的Linux包含五大文件系统目录. 根据你自己系统的需要和大小,这些文件系统目录能 ...

  5. Bugku-CTF加密篇之散乱的密文(lf5{ag024c483549d7fd@@1} 一张纸条上凌乱的写着2 1 6 5 3 4)

    散乱的密文 lf5{ag024c483549d7fd@@1} 一张纸条上凌乱的写着2 1 6 5 3 4  

  6. Spring Boot Security 使用教程

    虽然,我在实际项目中使用的是 shiro 进行权限管理,但 spring boot security 早已大名鼎鼎,虽然他的入门要相对复杂一点,但是设计视乎更加吸引人. 本章节就是以一篇快速入门 sp ...

  7. linux的端口学习(一)

    1.端口是什么? 1.1 是英文port的意译,可认为是设备与外界通讯交流的出口. 1.2 端口可分为虚拟端口和物理端口. 1.2.1 虚拟端口:指计算机内部或交换机路由器内的端口,不可见.例如计算机 ...

  8. Spring学习(九)

    JdbcTemplate需要的jar包 1.Spring核心必须依赖的库:commons-logging-1.1.1.jar2.Spring IoC部分核心库: spring-beans-4.3.9. ...

  9. WLC-Right to Use Licensing

    1.RTU的介绍 RTU licensing是没有和UDI(unique device identifier)或SN绑定的一种模型.在你接受了最终用户许可协议(EULA)后,使用RTU license ...

  10. Laravel Vuejs 实战:开发知乎 (1)项目环境配置和用户表设计

    1.使用laragon新建laravel项目 zhihu 2.配置env文件的database设置 DB_DATABASE=zhihu 3.分析users表需要的字段 4.修改数据库迁移文件: cla ...