ftp安装和虚拟用户创建
安装
1.安装
sudo apt-get install vsftpd
2 查看安装结果
安装完毕,检查vsftpd进程是否已启动,可以查看进程或者查看监听端口
ps -eaf|grep vsftpd
tony@T:~$ ps -eaf | grep vsftpd
root 2244 1 0 21:08 ? 00:00:00 /usr/sbin/vsftpd
tony 2408 2104 0 21:11 pts/0 00:00:00 grep --color=auto vsftpd
netstat -tnl | grep :21
tony@T:~$ netstat -tnl | grep :21
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN
端口21正在被监听
3. 尝试匿名用户登录
安装完后不用做任何配置既可用匿名方式进行访问,默认的ftp文件夹为/srv/ftp。
登录可以在浏览器中,文件夹输入框中以及类型windows/Linux终端中进行测试。
建议使用windows/Linux终端测试,失败了会有错误输出,可以根据错误进行调试。
更改配置文件vsftpd.conf
anonymous_enable=YES
匿名登录,用户名称ftp,密码不输入,直接回车
C:\Users\Tony>ftp 192.168.1.108
连接到 192.168.1.108。
220 (vsFTPd 2.2.2)
用户(192.168.1.108:(none)): ftp
331 Please specify the password.
密码:
230 Login successful.
登录到的目录就是/srv/ftp目录,在里面的文件就能够查看到
4. 使用ubuntu的账户登录
此时就访问ftp账户,默认是linux的账户,使用cmd中登录。
需要注意的是,ftp服务器端文件路径是用户的家目录
C:\Users\Tony>ftp 192.168.1.108
连接到 192.168.1.108。
220 (vsFTPd 2.2.2)
用户(192.168.1.108:(none)): tony
331 Please specify the password.
密码:
230 Login successful.
5. 在ubuntu中,vsftpd的主要配置文件分布如下:
/etc/vsftpd.conf vsftpd服务器的配置文件
/usr/sbin/vsftpd vsftpd服务器的进程文件
/etc/pam.d/vsftpd vsftpd服务器的PAM接口配置文件
/var/ftp vsftpd服务器匿名用户的工作目录
6. vsftpd的开始、关闭和重启
sudo /etc/init.d/vsftpd start #开始
sudo /etc/init.d/vsftpd stop #关闭
sudo /etc/init.d/vsftpd restart #重启
创建虚拟账户
1.安装生成虚拟帐号数据库工具db
sudo apt-get install db4.8-util
2. 更改vsftp.conf的配置
修改配置之前,先备份当前配置
sudo cp /etc/vsftp.conf /etc/vsftp.conf.old
配置的服务器中 vsftpd.conf的参数使用如下:
listen=YES
#listen_ipv6=YES
anonymous_enable=NO //允许匿名用户访问,若禁止使用NO
local_enable=YES //允许本地用户访问,若禁止则使用NO
write_enable=YES //表示是否允许本地用户有上传权限的,YES表示可以,NO表示禁止,也取决于客户端连接时使用的客户端工具
#local_umask=022 //设置本地用户上传建立文件时的权限掩码
#anon_upload_enable=YES //匿名用户上传文件使能
#anon_mkdir_write_enable=YES //匿名用户可以创建目录
dirmessage_enable=YES //用户切换进入目录时显示.message(如果存在)文件的内容
message_file=Welcome
xferlog_enable=YES //是否开启传输日志的
connect_from_port_20=YES ////连接控制端口为20
chown_uploads=YES
chown_username=ftp
chroot_local_user=YES //所有的本地用户都被锁定在家目录下
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
idle_session_timeout=600
data_connection_timeout=120 //#数据连接的超时时间
#nopriv_user=ftpsecure
#async_abor_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome to blah FTP service. //login欢迎信息
#deny_email_enable=YES
max_clients=10
max_per_ip=5
local_max_rate=256000
#hide_ids=YES
idle_session_timeout=3000
guest_enable=YES
guest_username=ftp
user_config_dir=/etc/vsftpd/vsftpd_user_conf
pam_service_name=vsftpd.vu
3. 建立各账户的home目录
在/home目录建立ftp的账户ftpdir目录
cd /home/ftp/
sudo mkdir ftpdir
然后在ftpdir目录下创建admin, tony目录
cd ftpdir
sudo mkdir admin tony
4.为虚拟用户创建本地系统用户
虚拟用户家目录为/home/ftpdir, 用户登录终端设为/bin/false(即使之不能登录系统)
sudo useradd ftp -d /home/ftpdir -s /bin/false
sudo chown -R ftp:ftp /home/ftpdir
5. 创建虚拟用户数据库
新建loguser.txt文件,
sudo vi /home/loguser.txt
里面输入虚拟用户名和密码,格式如下
admin
admin
tony
tony
注意不要多空格和空行,其中奇数行为用户名,偶数行为密码。
最后一行需要回车(否则建立数据库文件时无法识别最后一行,导致报奇数行错误)。
新建一个文件夹/etc/vsftpd,放置配置文件
sudo mkdir /etc/vsftpd
然后执行
sudo db4.8_load -T -t hash -f /home/loguser.txt /etc/vsftpd/vsftpd_login.db
最后设置一下数据库文件的访问权限
sudo chmod 600 /etc/vsftpd/vsftpd_login.db
6. 配置PAM文件
新建/etc/pam.d/vsftpd.vu,并编辑,
sudo touch /etc/pam.d/vsftpd.vu
sudo vi /etc/pam.d/vsftpd.vu
输入内容如下:
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
7.新建etc/vsftpd /vsftpd_user_conf文件夹
sudo mkdir /etc/vsftpd/vsftpd_user_conf
现在,我们要把各个用户的配置文件放到目录/etc/vsftpd/vsftpd_user_conf中
cd /etc/vsftpd/vsftpd_user_conf
sudo touch admin tony
8. 配置admin虚拟用户
权限:上传,下载删除,重命名.
sudo vi /etc/vsftpd/vsftpd_user_conf/admin
里面添加
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_root=/home/ftpdir
9. 配置tony虚拟用户
权限:上传,下载
sudo vi /etc/vsftpd/vsftpd_user_conf/tony
里面添加
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
local_root=/home/ftpdir/tony
10. 新建/etc/vsftpd/vsftpd.chroot_list
sudo touch /etc/vsftpd/vsftpd.chroot_list
sudo vi /etc/vsftpd/vsftpd.chroot_list
里面添加
admin
Author
Tony Liu
2016-8-2, Shenzhen
ftp安装和虚拟用户创建的更多相关文章
- ftp安装和虚拟用户创建(终于搞清楚了)
安装 一.安装 sudo apt-get install vsftpd 二.查看安装结果 安装完毕,检查vsftpd进程是否已启动,可以查看进程或者查看监听端口 ps -eaf|grep vsftpd ...
- FTP原理和虚拟用户映射登录-2019.2.8
FTP主动模式和被动模式 FTP(File Transfer Protocol)是文件传输协议的简称.正如其名所示:FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序 ...
- Ubuntu14 vsftp 的安装和虚拟用户配置
一.介绍 FTP 是 File Transfer Protocol (文件传输协议)的缩写 ,在 Unix/Linux 系统中常用的免费 FTP 服务器软件主要是 VSFTP,vsftp的官方地址:h ...
- vsftpd虚拟用户创建实例(转载)
vsftpd虚拟用户创建实例 发布:theboy 来源:net [大 中 小] vsftpd虚拟用户创建实例,有需要的朋友可以参考下. vsftpd虚拟用户创建实例,有需要的朋友可以参考 ...
- Centos下安装FTP并进行虚拟用户访问方式配置
1. 安装认证所需包 [root@localhost]#yum install pam* [root@localhost]#yum install db4* 首先安装PAM(用于用户认证)和DB4(用 ...
- vsftpd安装及虚拟用户配置
服务器环境:CentOS6.9 Linux 2.6.32-696.10.1.el6.x86_64 安装vsftpd.db4.db4-utils # yum -y install vsftpd db4 ...
- vsftpd服务安装与虚拟用户配置
vsftpd的全名是“Very secure FTP Daemon” 一.安装vsftpd安装db4-util用于生成认证文件 yum -y install db4-utils 安装vsftpd yu ...
- vsftpd安装配置虚拟用户
原文发表于cu:2016-03-11 参考文档: FTP原理:http://vbird.dic.ksu.edu.tw/linux_server/0410vsftpd_1.php FTP配置:http: ...
- CentOS 6.8 ftp服务安装配置 基于本地用户和虚拟用户
CentOS 6.8 ftp服务安装配置 基于本地用户和虚拟用户 一.安装ftp服务 1.检查是否已经安装 # rpm -qa | grep ftp ftp-0.17-54.el6.x86_64 vs ...
随机推荐
- 链表的游标(cursor)实现
诸如BASIC和FORTRAN等许多语言都不支持指针.如果需要链表而又不能使用指针,这时我们可以使用游标(cursor)实现法来实现链表. 在链表的实现中有两个重要的特点: 数据存储在一组结构体中.每 ...
- 弹出式菜单css
#v_box { width: 700px; height: 610px; background: #fff; position: fixed; top: 50%; left: 50%; z-inde ...
- hadoop 异常及处理总结-02(小马哥精品)
一直以来,对hdfs的警告信息不报以理睬,今天突然关注了一下.每当我操作hdfs的时候就会出现这样一个警告: WARN util.NativeCodeLoader: Unable to load na ...
- [转发]jQuery Validation范例
验证操作类formValidatorClass.js参照文件有: http://www.cnblogs.com/easyinsc/archive/2009/02/27/1407826.html htt ...
- EL函数库
一.EL函数库介绍 由于在JSP页面中显示数据时,经常需要对显示的字符串进行处理,SUN公司针对于一些常见处理定义了一套EL函数库供开发者使用. 这些EL函数在JSTL开发包中进行描述,因此在JSP页 ...
- 图片压缩兼修改md5
概述 一个桌面程序,能修改图片的尺寸和质量,并且通过加水印的方式修改图片的md5等值. 详细 代码下载:http://www.demodashi.com/demo/13498.html 一.程序截图 ...
- PHP-Yii执行流程分析(源码)
转自:http://www.cnblogs.com/zhanghaoyong/articles/2659846.html 一 目录文件 |-framework 框架核心库 |--base ...
- unity, GUIStyle and Skin
例1: using UnityEngine; using System.Collections; using UnityEditor; using System.Collections.Generic ...
- unity, 导出对象到另一个项目
----更新(2015-6-26): 今天又试了一下,有时候prefabs不用导出直接拷贝过去也能用,但有时候不行.还不太清楚原因. ----旧帖: 一,正确做法: 一个对象包括资源和Hierarch ...
- Murano环境搭建、使用介绍和思考
murano是OpenStack的Application Catalog服务.推崇AaaS(Anything-as-a-Service)的概念.通过统一的框架和API实现应用程序高速部署和应用程序 ...