首页 > 其他分享 >vsftpd

vsftpd

时间:2023-07-14 09:33:58浏览次数:50  
标签:chroot 用户 vsftpd enable file YES

1、安装vsftpd

1、检查vsftpd软件是否安装:rpm -qa | grep vsftpd
2、安装dvsftpd:yum install -y vsftpd
3、设置开机启动:systemctl enable vsftpd

2、配置

配置文件目录:cd /etc/vsftpd/
1、备份默认的配置文件:cp vsftpd.conf vsftpd.conf.bak
2、修改参数(根据自身需求设置,修改后请重启vsftpd服务)

anonymous_enable=NO          #不允许匿名用户登陆
anon_mkdir_write_enable=YES  #匿名用户不可以修改文件
chroot_local_user=YES        #设置指定用户列表文件中的用户,是否允许切换到上级目录
local_enable=YES             #vsftpd所在系统的用户可以登录vsftpd
write_enable=YES             #允许使用任何可以修改文件系统的FTP的指令
local_umask=002              #匿名用户新增文件的umask数值
anon_upload_enable=NO        #匿名用户不可以上传文件
anon_mkdir_write_enable=NO   #匿名用户不可以修改文件
xferlog_enable=YES           #启用一个日志文件,用于详细记录上传和下载
use_localtime=YES            #使用本地时间而不是GMT
vsftpd_log_file=/var/log/vsftpd.log    #vsftpd日志存放位置
dual_log_enable=YES          #用户登陆日志
connect_from_port_20=YES     #开启20端口
xferlog_file=/var/log/xferlog    #记录上传下载文件的日志
xferlog_std_format=YES       #记录日志使用标准格式
idle_session_timeout=600     #登陆之后超时时间60秒,登陆之后,一分钟不操作,就会断开连接
listen=YES                   #开启监听
pam_service_name=vsftpd.vu   #验证文件的名字
userlist_enable=YES          #允许由userlist_file指定文件中的用户登录FTP服务器
tcp_wrappers=YES             #支持tcp_wrappers,限制访问(/etc/hosts.allow,/etc/hosts.deny)
guest_enable=YES             #起用虚拟用户
guest_username=taokey        #虚拟用户名

3、创建用户

useradd -d -m /file/vsftpd -s /bin/sh -g ftp vsftpd

说明:
-u 指定用户ID号
-g 指定用户所属组
-d 指定用户目录
-s 指定用户SHELL
-c 用户的注释
-m 建立用户目录

# 设置密码
passwd vsftpd

#修改目录所属用户为vsftpd,所属组为ftp
chown -R vsftpd:ftp /file/vsftpd

#用户新建的文件自动继承父文件夹的权限(-d参数继承)
setfacl -R -d -m u:vsftpd:rwx /file/vsftpd

4、防火墙

1.开放ftp服务:firewall-cmd --zone=public --add-service=ftp --permanent
2.开放21端口:firewall-cmd --zone=public --add-port=21/tcp --permanent

5、测试

windows:ftp x.x.x.x

6、异常

6.1、
这个时候,使用ftp的工具连接时,我们发现是可以连接的。传输文件的时候,会发现文件上传和下载都会出现
500、503 、200等问题。这个时候,可以进行以下操作:
解决办法:

  • (推荐)修改SELINUX配置文件(关闭SELINUX):/etc/selinux/config,设置:SELINUX=disabled,然后重启服务器
  • SELINUX不对vsftp不做任何限制:setsebool -P ftpd_connect_all_unreserved 1

6.2、

500 OOPS: vsftpd: refusing to run with writable root inside chroot()
500 OOPS: priv_sock_get_cmd

解决办法:在/etc/vsftpd/vsftpd.conf增加以下内容

allow_writeable_chroot=YES
local_root=/file/vsftpd    #设置vsftpd的根目录,其他的用户目录在其之下
local_enable=YES

7、限制用户切换目录

1、所有用户都被限制在其主目录下 2.使用chroot_list_file指定的用户列表,这些用户作为“例外”,不受限制

chroot_local_user=YES
chroot_list_enable=YES		#是否启用chroot_list_file配置来设置例外
chroot_list_file=/etc/vsftpd/chroot_list

2、所有用户都不被限制其主目录下 2.使用chroot_list_file指定的用户列表,这些用户作为“例外”,受到限制

chroot_local_user=NO
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

然后创建chroot_list文件,添加需要例外的用户名,每个用户名占一行
重启服务使配置生效

标签:chroot,用户,vsftpd,enable,file,YES
From: https://www.cnblogs.com/tanmujin/p/17440808.html

相关文章

  • vsftpd默认值
     VSFTPD.CONFSection:FileFormats(5)Index ReturntoMainContents NAME DESCRIPTIONvsftpd.confmaybeusedtocontrolvariousaspectsofvsftpd'sbehaviour.Bydefault,vsftpdlooksforthisfileatthelocation /etc/vsftpd.conf.However,youmay......
  • 记录vsftpd版本2和3配置文件默认不同导致的服务无法正常启动
    做完做了一个ftp的迁移,从centos6.5的2.2.2版本到bc-liunx8.2的3.0.3的迁移,这里简单说一下迁移1、scp拷贝ftp文件夹2、scp拷贝etc/vsftpd下的所有文件3、更改ftp文件夹的所有用户4、创建虚拟用户5、安装vsftpd,这里建议编译安装,可自行初始化。6、重点这里ftp顺利启动起来了,但是我们系......
  • Ubuntu20.04下 vsftpd.service 状态报错code=exited, status=2解决以及简单配置
    1、状态报错,启动失败 2、主要原因是ipv4和ipv6不能同时被监听,所以,注释ipv63、重启服务并且登录localhost,输入用户名和密码,显示登录成功 4、配置指定目录,确保对应的值如下anonymous_enable=NOlocal_enable=YESwrite_enable=YESchroot_local_user=YES 5、添加以下......
  • vsftpd安装
     注意事项:FTPS数据存取介质磁盘不能为lvm格式,且不能挂载到lvm的目录下1、yum -y install  ftp vsftpdvsftpd:version3.0.2  mkdir-p/etc/vsftpd/vsftpd_user_conf2、编辑vsftpd的主配置文件(centos6和centos7的主配置文件vsftpd.conf不一样,其余的配置步骤一样)Cen......
  • vsftpd日志配置及查看——可以将vsftpd记录在系统日志里
    vsftpd日志配置及查看vsftpdftp服务器的日志设置,可以通过修改主配置文件/etc/vsftpd.conf实现。主配置文件中与日志设置有关的选项包括xferlog_enable、xferlog_file和dual_log_enable等。 xferlog_enable 如果启用该选项,系统将会维护记录服务器上传和下载情况的日志文件。默......
  • Linux vsftpd服务虚拟用户登陆实验
    转至:https://zhuanlan.zhihu.com/p/354577768工具:win10系统、CentOs6.5实操:第一步:基础环境搭建:设置服务器IP地址为192.168.10.10,防护墙、内核机制关闭[root@bogon~]#vim/etc/sysconfig/network-scripts/ifcfg-eth0IP:192.168.10.10[root@bogon~]#servicenetworkreloa......
  • Linux vsftpd服务配置
    转至:https://www.cnblogs.com/reachos/p/16352552.html目录:1.FTP介绍2.安装vsftpd3.配置匿名用户登陆与上传删除文件4.配置vsftp本地账户认证登陆ftp 1.FTP介绍文件传输协议(英文:FileTransferProtocol,缩写:FTP)是用于在网络上进行文件传输的一套标准协......
  • Vsftpd
    Vsftpd文件传输服务ftp是典型的C/S结构,由服务端跟客户端两个部分共同实现文件传输功能一、Ftp工作原理ftp采用TCP协议的20、21端口与客户端进行通信20端口:用于建立数据连接并传输文件数据21端口:用于建立控制连接,并传输ftp控制命令二、ftp的传输模式1、主动模式......
  • vsftpd虚拟用户
    创建虚拟用户密码文件[root@web01vsftpd]#pwd/etc/vsftp[root@web01vsftpd]#catvir_usershyhftpshyhftpwebftpHTCH@trade#2014生产虚拟用户数据库[root@web01vsftpd]#db_load-T-thash-fvir_uservir_user.db[root@web01vsftpd]#chmod700/etc/vsftpd/vi......
  • vsftpd服务配置资料
    vsftpd配置详解vsftpd配置选项vsftpd.conf5vsftpd操作手册-完整版......