centOS 7.1.1503 搭建vsftpd环境-使用虚拟用户登录
2015-08-07 10:50
786 查看
简要:centOS搭建vsftpd环境,使用虚拟用户登录,在服务器上传下载文件。
一,vsftpd配置
1,安装vsftpd(sudo yum install vsftpd),查看(rpm -qa |grep vsftpd)。
2,修改配置文件(vi /etc/vsftpd/vsftpd_conf),anonymous_enable=NO/local_enable=YES(使用账号登录,不允许匿名登录),
ascii_*=YES(支持ascii),
chroot_*=YES(chroot到用户目录),chroot_list_file=/etc/vsftpd/chroot_list(chroot目录列表),
使用pam插入认证(pam_service_name=vsftpd),
guest_enable启用虚拟用户,
user_config_dir=/etc/vsftpd/vuser_conf虚拟用户列表,
映射虚拟用户为本地用户ftp,
pasv_*使用被动模式。
查看配置。
3创建chroot_list_file,使用本地用户ftp。
4创建虚拟用户,奇数行账号,偶数行密码。
5创建虚拟用户pam认证。
6配置pam认证(/etc/pam.d/vsftpd)。
7创建虚拟用户配置文件(/etc/vsftpd/vuser_conf/ftp1),用户名即为配置文件,local_root用户自定义(mkdir /var/ftp/ftp1)。
8设置selinux权限。
二,防火墙配置
1,防火墙放行端口。
2,重新获取配置
BTW:1注意chroot目录权限。2防火墙端口放行。3启用ftp被动模式。
一,vsftpd配置
1,安装vsftpd(sudo yum install vsftpd),查看(rpm -qa |grep vsftpd)。
$ rpm -qa |grep vsftpd vsftpd-3.0.2-9.el7.x86_64
2,修改配置文件(vi /etc/vsftpd/vsftpd_conf),anonymous_enable=NO/local_enable=YES(使用账号登录,不允许匿名登录),
ascii_*=YES(支持ascii),
chroot_*=YES(chroot到用户目录),chroot_list_file=/etc/vsftpd/chroot_list(chroot目录列表),
使用pam插入认证(pam_service_name=vsftpd),
guest_enable启用虚拟用户,
user_config_dir=/etc/vsftpd/vuser_conf虚拟用户列表,
映射虚拟用户为本地用户ftp,
pasv_*使用被动模式。
查看配置。
$ sudo grep '^[^#]' /etc/vsftpd/vsftpd.conf anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 anon_upload_enable=YES connect_from_port_20=YES ascii_upload_enable=YES ascii_download_enable=YES chroot_local_user=YES chroot_list_enable=YES chroot_list_file=/etc/vsftpd/chroot_list pam_service_name=vsftpd userlist_enable=YES pasv_enable=yes pasv_min_port=6000 pasv_max_port=7000 guest_enable=YES guest_username=ftp #虚拟化用户登录 user_config_dir=/etc/vsftpd/vuser_conf
3创建chroot_list_file,使用本地用户ftp。
$ cat /etc/vsftpd/chroot_list ftp
4创建虚拟用户,奇数行账号,偶数行密码。
$ cat /etc/vsftpd/vuser_pwd.txt ftp1 ftp1 ftp2 ftp2 public public
5创建虚拟用户pam认证。
$ sudo db_load -T -t hash -f /etc/vsftpd/vuser_pwd.txt /etc/vsftpd/vuser_pwd.db
6配置pam认证(/etc/pam.d/vsftpd)。
$ sudo grep '^[^#]' /etc/pam.d/vsftpd auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_pwd #LONG_BIT=64 account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vuser_pwd #LONG_BIT=64
7创建虚拟用户配置文件(/etc/vsftpd/vuser_conf/ftp1),用户名即为配置文件,local_root用户自定义(mkdir /var/ftp/ftp1)。
$ cat /etc/vsftpd/vuser_conf/ftp1 local_root=/var/ftp/ftp1 write_enable=YES anon_world_readable_only=NO anon_mkdir_write_enable=YES $ sudo mkdir /var/ftp/ftp1/upload $ sudo chmod -R 555 /var/ftp/ftp1 $ sudo chmod -R 777 /var/ftp/ftp1/upload
8设置selinux权限。
$ setsebool -P allow_ftpd_full_access=1
二,防火墙配置
1,防火墙放行端口。
$ sudo firewall-cmd --permanent --zone=public --add-port=21/tcp $ sudo firewall-cmd --permanent --zone=public --add-port=20/tcp $ sudo firewall-cmd --permanent --zone=public --add-port=6000-7000/tcp
2,重新获取配置
$ sudo firewall-cmd --reload $ sudo systemctl restart vsftpd #重启ftp服务 $ sudo systemctl enable vsftpd #开机启动ftp服务
BTW:1注意chroot目录权限。2防火墙端口放行。3启用ftp被动模式。
相关文章推荐
- Centos6 编译安装Python
- 硬盘安装CentOS 6.2以及添加GRUB启动菜单
- 详解vsftpd搭建ftp和ftps
- CentOS 6.2实战部署Nginx+MySQL+PHP
- Vsftpd 虚拟用户实现公司各部门文件的上传下载
- CentOS 7系统配置上的变化解析
- CentOS下DB2数据库安装过程详解
- CentOS 6.3下编译安装Ruby 2.0笔记
- vsftpd 虚拟用户配置步骤
- 在Centos 5.5 上编译安装mysql 5.5.9
- CentOS 6.5源码安装Erlang教程
- centos 5.6 升级php到5.3的方法
- CentOS mysql安装系统方法
- centos下安装mysql服务器的方法
- CentOS 5.1 4.6最新官方下载地址列表
- Centos搭建GTK+Codeblock完整版
- VSFTPD配置(匿名――本地用户――虚拟用户)
- CentOS 5.1下跑Mono和Asp.net的实现方法