Linux安装ftp,并配置虚拟账户

1,安装软件

yum install vsftpd

2,设置开机自启

systemctl enable vsftpd

3,vsftp安装完成后,默认配置文件如下

/etc/vsftpd/vsftpd.conf  VSFTP主配置文件

/etc/rc.d/init.d/vsftp  VSFTP启动脚本,独立(Stand alone)服务模式

/etc/pam.d/vsftpd  PAM认证文件(此文件中file=/etc/vsftpd/ftpusers onerr=succeed指的是阻止该文件中用户访问

/etc/vsftp/ftpusers  禁止使用vsftp的ftp用户列表

/etc/vsftp/user_list  禁止或者允许使用vsftp的ftp用户列表(根据主配置文件来定)

/var/ftp  匿名登陆用户主目录

/var/log/xferlog   vsftp日志文件
4,先备份一份并且去掉注释

mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak

grep -v "#" /etc/vsftpd/vsftpd.conf.bak > /etc/vsftpd/vsftpd.conf

虚拟用户模式

1、创建用于FTP认证的用户数据库文件

vi /etc/vsftpd/ftpvuser

注:第一行用户名,第二行密码,依此类推

admin

123456

test

123456

明文信息不安全,需要使用db_load命令用哈希(hash)算法将明文信息转换成数据文件。

db_load -T -t hash -f /etc/vsftpd/ftpvuser /etc/vsftpd/ftpvuser.db
chmod 600 /etc/vsftpd/ftpvuser.db

2、创建虚拟用户映射的系统本地用户和FTP根目录

useradd -d /home/ftpvuser -s /sbin/nologin ftpvuser
chmod -Rf 755 /home/ftpvuser

3、建立用于支持虚拟用户的PAM文件

新建一个用于虚拟用户认证的PAM文件vsftpd.vu,其中PAM文件内的“db=”参数为使用db_load命令生成的账户密码数据文件的路径,但不用写数据文件的后缀。

vi /etc/pam.d/vsftpd.vu

  1. auth required pam_userdb.so db=/etc/vsftpd/ftpvuser

  2. account required pam_userdb.so db=/etc/vsftpd/ftpvuser

4、为两个虚拟用户设置不同的权限,admin拥有所有权限,而test只有读取权限。(只创建admin文件就可以)

mkdir /etc/vsftpd/vuser_dir
touch /etc/vsftpd/vuser_dir/test
vim /etc/vsftpd/vuser_dir/admin

anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

5、修改配置文件(访问端口我这里设置的是7000,被动模式下还需要配置端口7001-7010,也可以设置其它区间端口。如果用的云服务器,就需要将这些端口添加到入规则中)

vim /etc/vsftpd/vsftpd.conf

  1. anonymous_enable=NO
  2. anon_umask=022
  3. local_enable=YES
  4. guest_enable=YES
  5. guest_username=ftpvuser
  6. allow_writeable_chroot=YES
  7. write_enable=YES
  8. local_umask=022
  9. local_root=/home/ftpvuser
  10. dirmessage_enable=YES
  11. xferlog_enable=YES
  12. connect_from_port_20=YES
  13. xferlog_std_format=YES
  14. listen_port=7000
  15. listen=NO
  16. listen_ipv6=YES
  17. pam_service_name=vsftpd.vu
  18. userlist_enable=YES
  19. tcp_wrappers=YES
  20. user_config_dir=/etc/vsftpd/vuser_dir
  21. pasv_min_port=7001
  22. pasv_max_port=7010

 6、重启vsftpd服务

sudo systemctl restart vsftpd

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值