首页 > 其他分享 >Vsftp部署

Vsftp部署

时间:2024-05-21 16:07:13浏览次数:23  
标签:enable etc 部署 vsftpd anon virtualuser Vsftp YES

安装认证所需包

首先安装PAM(用于用户认证)和DB4(用于生成虚拟用户的用户名密码的db文件)

yum -y install pam*
yum -y install db4*

安装vsftp

[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# mkdir bak
[root@localhost yum.repos.d]# mv *o bak
[root@localhost yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-Base.repo <http://mirrors.aliyun.com/repo/Centos-7.repo>
[root@localhost ~]# yum -y install vsftpd
[root@localhost ~]# yum -y install ftp
[root@localhost ~]# service vsftpd start

设置vsftpd开机启动

   chkconfig vsftpd on

配置vsftpd.conf

vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO(匿名用户关闭)
#local_enable=YES(本地用户可访问)
#write_enable=YES(可上传)
#local_umask=022
#xferlog_enable=YES
#xferlog_std_format=YES
xferlog_file=/etc/vsftpd/vsftpd.log
这3项由于设置log日志,在/etc/vsftpd/下新建一个vsftpd.log文件
#connect_from_port_20=YES
idle_session_timeout=600(数据传输中断间隔时间)
listen=YES
#listen_ipv6=YES(注释掉)
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
chroot_local_user=YES(锁定根目录  )
guest_enable=YES(启用虚拟用户)
guest_username=sprixin(虚拟用户借用的系统本地用户名)
user_config_dir=/etc/vsftpd/virtualuser_conf(虚拟用户的配置文件路径)
allow_writeable_chroot=YES

touch  /etc/vsftpd/vsftpd.log

配置虚拟用户(虚拟用户权限根据以下内容控制)

mkdir /etc/vsftpd/virtualuser_conf (虚拟用户配置文件)

在/etc/vsftpd/virtualuser_conf 新建一个虚拟用户名文件
vim  /etc/vsftpd/virtualuser_conf/sprixin(能下载不能上传)
local_root=/home/ftp(该虚拟用户上传下载的根目录)
write_enable=YES(启动写权限,上传)
anon_umask=022
anon_world_readable_only=NO(关闭只可读权限)
anon_upload_enable=NO(不能上传)
anon_mkdir_write_enable=YES(创建目录权限)
anon_other_write_enable=YES(其他写权限,改,删)
Vim  etc/vsftpd/virtualuser_conf /u2(只能上传,不能下载)
local_root=/home/ftp
write_enable=YES
download_enable=NO
anon_umask=022
anon_world_readable_only=NO(关闭只可读权限)
anon_upload_enable=YES(不能上传)
anon_mkdir_write_enable=YES(创建目录权限)
anon_other_write_enable=YES(其他写权限,改,删)
cmds_allowed=FEAT,REST,CWD,LIST,MDTM,MKD,NLST,PASS,PASV,PORT,PWD,QUIT,RMD,SIZE,STOR,TYPE,USER,ACCT,APPE,CDUP,HELP,MODE,NOOP,REIN,STAT,STOU,STRU,SYST,RETR

在/etc/vsftpd/目录新建一个虚拟用户文档

vim  /etc/vsftpd/virtualuser_passwd.txt
# 奇数行是用户名,偶数行是密码
sprixin
sprixin

生成虚拟用户认证的db文件

db_load -T -t hash -f /etc/vsftpd/virtualuser_passwd.txt /etc/vsftpd/virtualuser_passwd.db

编辑认证文件/etc/pam.d/vsftpd,全部注释掉原来语句,添加以下两句

vim /etc/pam.d/vsftpd
auth required pam_userdb.so db=/etc/vsftpd/virtualuser_passwd

account required pam_userdb.so db=/etc/vsftpd/virtualuser_passwd

设置服务器上的目录权限

chown -R  sprixin:sprixin  /home/ftpuser
chmod 777 /home/ftpuser

FTP服务器登陆缓慢超时问题

echo "reverse_lookup_enable=NO" >> /etc/vsftpd/vsftpd.conf
在没有DNS的环境下,需要将reverse_lookup_enable设置为NO,关闭反向解析,避免性能下降

lftp的mirror功能介绍:

标签:enable,etc,部署,vsftpd,anon,virtualuser,Vsftp,YES
From: https://www.cnblogs.com/heizq/p/18204261

相关文章

  • 企业内网要不要部署DNS?
    内网通常是指一个组织或企业内部的计算机网络,用于连接组织内部的计算机、服务器和其他网络设备,以便共享资源、数据和应用程序。内网通常使用私有IP地址,并通过防火墙或其他安全设备与外部网络(如互联网)进行隔离。内网通常具有更高的安全性和私密性要求,因为它包含组织内部的重要数据......
  • 深入了解安全工具Vault、Vault根令牌和解封密钥,详细整理部署Vault的详细步骤
     一、深入了解安全工具VaultVault是一种开源工具,用于安全地存储、管理和控制访问各种机密信息,如密码、API令牌、安全配置和其他敏感数据。Vault使用强大的加密和安全管理技术来保护这些机密信息,并为应用程序和服务提供安全的访问控制机制。该工具支持各种云平台和技术堆栈,并提......
  • 自动化部署elasticsearch三节点集群
    什么是Elasticsearch?Elasticsearch是一个开源的分布式搜索和分析引擎,构建在ApacheLucene的基础上。它提供了一个分布式多租户的全文搜索引擎,具有实时分析功能。Elasticsearch最初是用于构建全文搜索引擎,但它的功能已经扩展到包括日志分析、应用程序性能监控、地理信息系统等......
  • Liunx部署NetCore,接口获取mysql本地数据时报:The SSL connection could not be establ
    今天将 NETCore程序发布到一台新的服务器,程序中有https请求第三方的Api,但是报了如下的错误:TheSSLconnectioncouldnotbeestablished,seeinnerexception解决办法下面命令查询openssl的路径opensslversion-a然后将CentOS默认的opensslCA证书拷贝到OPENSSLD......
  • VUE,HbuilderX开发H5页面,配置调试,部署以及JWT,Token。调用本机netcore接口
    花了一周时间,测试了各种方式。对于VUE开发H5页面,然后部署到Nginx服务。再调用本地的HTTPS接口。1、本地开发及使用IE或Chrome进行开发调试,并调用本地接口同步开发。本地Netcore,开发按原有方式进行。Hbuilderx,开发并调用本地接口。设置时,不要使用Https进行。直接用http即可。Hbuild......
  • 记一次部署微服务项目的成长
    云服务器redis如果开放端口很可能被攻击!当时是发现被setbackup1value大概是去远程下载sh脚本并执行,相当于让你运行脚本所以之后redis尽量少暴露,而且我们redis是可以远程定下定时任务的dockercompose文件部署后,为什么我的spring项目配置可以直接写上redis,就会连上对应的......
  • springboot配置热部署
    ​ springboot配置热部署在SpringBoot中配置热部署通常涉及到使用SpringBootDevTools依赖和配置应用服务器的热部署特性。以下是一个基本的配置步骤:一.pom.xml:在pom.xml中添加SpringBootDevTools依赖:<dependencies><!--其他依赖--><dependency>......
  • 阿里云 nginx 部署vue项目的代码
    在开发完成之后需要部署我们的网站项目,那么步骤如下:打包vue项目,使用npmrunbuild将vue项目打包成dist的文件夹下面,然后将dist文件夹压缩方便上传到服务器将dist.zip上传到阿里云的文件夹下面,默认情况是上传到/var/www下面,在不配置nginx的情况下,默认情况下的放项目的地方将上......
  • 【JAVA】BOSS系统发版艺术:构建高效、优雅的微服务部署策略
    在现代软件开发领域,微服务架构与容器化部署已迅速成为行业新趋势。微服务架构通过将应用拆分成多个小型、自治的服务单元,每个服务承担某项特定的业务功能。而容器化部署则以其轻量级和高度可移植的特性,为这些微服务的有效打包、分发和运行提供了强大支持。在这样的环境中,实现微服......
  • containerd在线部署
    containerd的作用以及跟docker的区别Containerd是一个用于管理容器生命周期的开源项目。它最初是从Docker项目中分离出来的,现在已经成为了一个独立的项目。它可以用作容器镜像管理工具和容器运行时。它具有以下主要作用:帮助管理容器镜像。它可以下载,上传,删除容器镜像,并对镜像......