centOS6.8 ftp服务 安装配置 基于本地用户和虚拟用户
2016-12-20 17:28
961 查看
一、安装ftp服务
1、检查是否已经安装
# rpm -qa | grep ftp
ftp-0.17-54.el6.x86_64
vsftpd-2.2.2-21.el6.x86_64 //显示已安装
2、若未安装则进行安装
# yum -y install vsftp
# yum -y install ftp
//如果在离线环境下 就先去网上预先下载ftp的rpm包 进行手动安装
3、ftp服务命令
# /etc/init.d/vsftpd start 手动启动ftp服务
或者# service vsftpd start
# chkconfig vsftpd on 设置为开机自启动
# service vsftpd stop
# service vsftpd restart
# ser
4000
vice vsftpd status
二、配置ftp
1、配置vsftpd配置文件
# vi /etc/vsftpd/vsftpd.conf
# 禁止匿名用户anonymous登录
anonymous_enable=NO
# 允许本地用户登录
local_enable=YES
# 让登录的用户有写权限(上传,删除)
write_enable=YES
# 默认umask
local_umask=022
# 把传输记录的日志保存到/var/log/vsftpd.log
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=NO
# 允许ASCII模式上传
ascii_upload_enable=YES
# 允许ASCII模式下载
ascii_download_enable=YES
# 使用20号端口传输数据
connect_from_port_20=YES
# 欢迎标语
ftpd_banner=Welcome to use my test ftp server.
# 接下来的三条配置很重要
# chroot_local_user设置了YES,那么所有的用户默认将被chroot,
# 也就用户目录被限制在了自己的home下,无法向上改变目录。
# chroot_list_enable设置了YES,即让chroot用户列表有效。
# 如果chroot_local_user设置了YES,那么chroot_list_file
# 设置的文件里,是不被chroot的用户(可以向上改变目录)
# 如果chroot_local_user设置了NO,那么chroot_list_file
# 设置的文件里,是被chroot的用户(无法向上改变目录)
chroot_list_enable=YES
# touch /etc/vsftpd/chroot_list 新建
chroot_list_file=/etc/vsftpd/chroot_list
use_localtime=YES
# 以standalone模式在ipv4上运行
listen=YES
# PAM认证服务名,这里默认是vsftpd,在安装vsftpd的时候已经创建了这个pam文件,
# 在/etc/pam.d/vsftpd,根据这个pam文件里的设置,/etc/vsftpd/ftpusers
# 文件里的用户将禁止登录ftp服务器,比如root这样敏感的用户,所以你要禁止别的用户
# 登录的时候,也可以把该用户追加到/etc/vsftpd/ftpusers里。
pam_service_name=vsftpd
*重启vsftpd
# service vsftpd restart
三、创建本地用户
创建用户
# useradd -d /home/ftpuser/zzp -s /sbin/nologin -M zzp123
设置用户到文件夹
# chown -R username /home/ftpuser/zzp
设置权限
# chown -R 777 /home/ftpuser/zzp
添加密码
# passwd zzp -> 密码 -> 确认密码
四、创建虚拟用户
安装基于普通文件的文件型认证数据库的生成工具
# rpm -qa | grep db4-utils
# yum -y install db4-utils
编辑虚拟用户账号和密码文件,奇数行为用户名,偶数行为密码
# vi /etc/vsftpd/vu.txt
test
1234
...
usernameN
passwordN
用于认证的文件型数据库生成
# db_load -T -t hash -f /etc/vsftpd/vu.txt /etc/vsftpd/vu.db
修改权限
# chmod 600 /etc/vsftpd/vu.*
修改VSFTP默认的认证方式,改为基于刚才生成的文件型数据库
# vi /etc/pam.d/vsftpd.vu
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vu #vu文件无后缀
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vu
**注意**:
1.系统默认读取的文件是/etc/pam.d/vsftpd 也可以直接在这里面添加上面的内容
2.64位的系统可能会识别不出pam_userdb.so db的路径,所以要写出完整的路径,否则在登录ftp的时候会报 530 login incorrect 错误
创建映射虚拟用户的系统用户
# useradd -d /home/vsftp/ftp -s /sbin/nologin -M vsftp
创建虚拟用户配置文件目录
# mkdir /etc/vsftpd/conf.vu
修改VSFTP配置文件
# vi /etc/vsftpd/vsftpd.conf
anon_umask=022 #文件644,文件夹755
anonymous_enable=NO #关闭匿名登录
pam_service_name=vsftpd.vu #修改PAM认证模块 (系统默认的是vsftpd)
guest_enable=YES #允许虚拟用户登录
guest_username=vsftp #映射虚拟用户的系统用户
user_config_dir=/etc/vsftpd/conf.vu #虚拟用户配置文件目录
pasv_enable=YES #被动模式
pasv_max_port=20999 #最大端口
pasv_min_port=20000 #最小端口
xferlog_enable=YES
xferlog_std_format=YES
xferlog_file=/var/log/xferlog #日志:记录上传、下载、删除、创建
dual_log_enable=YES
vsftpd_log_file=/var/log/vsftpd.log #日志:服务器传输日志
创建虚拟用户各自的目录及配置文件
# mkdir /home/vsftp/ftp/username
# chmod 700 /home/vsftp/ftp/username
# chown vsftp.vsftp /home/vsftp/ftp/username
# vi /etc/vsftpd/conf.vu/username
wri
9ccf
te_enable=YES #当前虚拟用户写权限
anon_world_readable_only=NO #当前虚拟用户下载权限
anon_upload_enable=YES #当前虚拟用户上传权限
anon_mkdir_write_enable=YES #当前虚拟用户创建目录权限
anon_other_write_enable=YES #当前虚拟用户删除和重命名权限
local_root=/bigdisk/ftp/username1 #当前虚拟用户家目录
# chmod 600 /etc/vsftpd/conf.vu/*
最后重启vsftpd
# service vsftpd restart
1、检查是否已经安装
# rpm -qa | grep ftp
ftp-0.17-54.el6.x86_64
vsftpd-2.2.2-21.el6.x86_64 //显示已安装
2、若未安装则进行安装
# yum -y install vsftp
# yum -y install ftp
//如果在离线环境下 就先去网上预先下载ftp的rpm包 进行手动安装
3、ftp服务命令
# /etc/init.d/vsftpd start 手动启动ftp服务
或者# service vsftpd start
# chkconfig vsftpd on 设置为开机自启动
# service vsftpd stop
# service vsftpd restart
# ser
4000
vice vsftpd status
二、配置ftp
1、配置vsftpd配置文件
# vi /etc/vsftpd/vsftpd.conf
# 禁止匿名用户anonymous登录
anonymous_enable=NO
# 允许本地用户登录
local_enable=YES
# 让登录的用户有写权限(上传,删除)
write_enable=YES
# 默认umask
local_umask=022
# 把传输记录的日志保存到/var/log/vsftpd.log
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=NO
# 允许ASCII模式上传
ascii_upload_enable=YES
# 允许ASCII模式下载
ascii_download_enable=YES
# 使用20号端口传输数据
connect_from_port_20=YES
# 欢迎标语
ftpd_banner=Welcome to use my test ftp server.
# 接下来的三条配置很重要
# chroot_local_user设置了YES,那么所有的用户默认将被chroot,
# 也就用户目录被限制在了自己的home下,无法向上改变目录。
# chroot_list_enable设置了YES,即让chroot用户列表有效。
# 如果chroot_local_user设置了YES,那么chroot_list_file
# 设置的文件里,是不被chroot的用户(可以向上改变目录)
# 如果chroot_local_user设置了NO,那么chroot_list_file
# 设置的文件里,是被chroot的用户(无法向上改变目录)
chroot_list_enable=YES
# touch /etc/vsftpd/chroot_list 新建
chroot_list_file=/etc/vsftpd/chroot_list
use_localtime=YES
# 以standalone模式在ipv4上运行
listen=YES
# PAM认证服务名,这里默认是vsftpd,在安装vsftpd的时候已经创建了这个pam文件,
# 在/etc/pam.d/vsftpd,根据这个pam文件里的设置,/etc/vsftpd/ftpusers
# 文件里的用户将禁止登录ftp服务器,比如root这样敏感的用户,所以你要禁止别的用户
# 登录的时候,也可以把该用户追加到/etc/vsftpd/ftpusers里。
pam_service_name=vsftpd
*重启vsftpd
# service vsftpd restart
三、创建本地用户
创建用户
# useradd -d /home/ftpuser/zzp -s /sbin/nologin -M zzp123
设置用户到文件夹
# chown -R username /home/ftpuser/zzp
设置权限
# chown -R 777 /home/ftpuser/zzp
添加密码
# passwd zzp -> 密码 -> 确认密码
四、创建虚拟用户
安装基于普通文件的文件型认证数据库的生成工具
# rpm -qa | grep db4-utils
# yum -y install db4-utils
编辑虚拟用户账号和密码文件,奇数行为用户名,偶数行为密码
# vi /etc/vsftpd/vu.txt
test
1234
...
usernameN
passwordN
用于认证的文件型数据库生成
# db_load -T -t hash -f /etc/vsftpd/vu.txt /etc/vsftpd/vu.db
修改权限
# chmod 600 /etc/vsftpd/vu.*
修改VSFTP默认的认证方式,改为基于刚才生成的文件型数据库
# vi /etc/pam.d/vsftpd.vu
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vu #vu文件无后缀
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vu
**注意**:
1.系统默认读取的文件是/etc/pam.d/vsftpd 也可以直接在这里面添加上面的内容
2.64位的系统可能会识别不出pam_userdb.so db的路径,所以要写出完整的路径,否则在登录ftp的时候会报 530 login incorrect 错误
创建映射虚拟用户的系统用户
# useradd -d /home/vsftp/ftp -s /sbin/nologin -M vsftp
创建虚拟用户配置文件目录
# mkdir /etc/vsftpd/conf.vu
修改VSFTP配置文件
# vi /etc/vsftpd/vsftpd.conf
anon_umask=022 #文件644,文件夹755
anonymous_enable=NO #关闭匿名登录
pam_service_name=vsftpd.vu #修改PAM认证模块 (系统默认的是vsftpd)
guest_enable=YES #允许虚拟用户登录
guest_username=vsftp #映射虚拟用户的系统用户
user_config_dir=/etc/vsftpd/conf.vu #虚拟用户配置文件目录
pasv_enable=YES #被动模式
pasv_max_port=20999 #最大端口
pasv_min_port=20000 #最小端口
xferlog_enable=YES
xferlog_std_format=YES
xferlog_file=/var/log/xferlog #日志:记录上传、下载、删除、创建
dual_log_enable=YES
vsftpd_log_file=/var/log/vsftpd.log #日志:服务器传输日志
创建虚拟用户各自的目录及配置文件
# mkdir /home/vsftp/ftp/username
# chmod 700 /home/vsftp/ftp/username
# chown vsftp.vsftp /home/vsftp/ftp/username
# vi /etc/vsftpd/conf.vu/username
wri
9ccf
te_enable=YES #当前虚拟用户写权限
anon_world_readable_only=NO #当前虚拟用户下载权限
anon_upload_enable=YES #当前虚拟用户上传权限
anon_mkdir_write_enable=YES #当前虚拟用户创建目录权限
anon_other_write_enable=YES #当前虚拟用户删除和重命名权限
local_root=/bigdisk/ftp/username1 #当前虚拟用户家目录
# chmod 600 /etc/vsftpd/conf.vu/*
最后重启vsftpd
# service vsftpd restart
相关文章推荐
- centos7安装jdk
- <Linux> Ubuntu搭建android driver开发服务器
- Linux下Hadoop伪分布式环境搭建笔记
- Linux 进程间通讯详解七
- linux命令
- 一个非常棒的图片 演示 iptables 与 linux的input或者nat
- linux flock使用示例代码
- C++ 中的共享库和静态库(Linux)
- Linux如何查看进程、杀死进程、启动进程等常用命令
- python3.5-centos安装
- linux 日常命令 lsof
- 基于ARM的嵌入式Linux应用程序开发
- linux 进程同步-- mutex和文件锁
- linux tar (打包.压缩.解压缩)命令说明 | tar如何解压文件到指定的目录?
- 线程同步--信号量
- Linux下配置环境变量
- 《Unix & Linux大学教程》读书笔记
- linux下写脚本时-gt是什么意思
- linux之ls -l|grep "^-"|wc -l命令
- Linux+Qt+Subversion 安装及使用说明