热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

FTP服务及相关命令参数

目录1、FTP概论■ftp的概论■匿名、系统、虚拟账户2、验证方式■验证的etcpasswd和etcshadow■验证的是用户列表(用户必须是系统创建),相当于白名单

目录

  • 1、FTP概论
    • ■ ftp的概论
    • ■ 匿名、系统、虚拟账户
  • 2、验证方式
    • ■ 验证的/etc/ passwd和/etc/shadow
    • ■ 验证的是用户列表(用户必须是系统创建),相当于白名单
  • 3、FTP相关命令参数
  • 4、设置虚拟账户列表
  • 5、设置虚拟账户的配置文件


1、FTP概论

■ ftp的概论

● 用于文件的上传和下载
● ftp属于tcp,端口号: 20,21
◆ 21:控制层面,用于账户密码验证,权限的验证。
◆ 20:数据层面,用于文件上传和下载。

■ 匿名、系统、虚拟账户

● 匿名账户:登录名: ftp、 anonymous。不验证密码即可登录。 ● 系统账户:本身系统已存在的账户、密码作验证。

2、验证方式

■ 验证的/etc/ passwd和/etc/shadow


■ 验证的是用户列表(用户必须是系统创建),相当于白名单

● 默认root账户不允许登录。
● 虚拟账户:预定义的列表账户(以前系统未创建过的)

3、FTP相关命令参数

Javascript
systemctl stop firewalld #关闭防火墙
setenforce 0 #关闭核心防护
rpm - ivh /mnt/Packages/vsftpd-3.0.2- 10. el7. x86_64. rpm
匿名帐户:
chown -R ftp. ftp /var/ftp/ pub/
chmod -R 755 /var/ ftp/ pub/
ls -l /var/ftp/ pub/
vi /etc/vsftpd/vsftpd. conf
anonymous_enable=YES #允许匿名账户登录
anon_upload_enable=YES #允许匿名账户上传
anon_mkdir_write_enable=YES #允许匿名账户新建文件或目录
anon_other_write_enable=YES #允许匿名账户的其他写权限
anon_umask=022 #设置匿名账户的权限为755
local_enable=YES #允许本地账户登录
local_max_rate=102400 #本地账户限速
chroot_local_user=yes #锁定宿主目录,此配置针对本地账户
write_enable=YES #写权限的开启,如果想让用户上传文件,此权限也需要有
local_umask=022 #本地账户的权限为755
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES #监听IPV4地址的请求
listen_ipv6=N0 #不监听IPV6地址的请求
systemctl start vsftp # 开启ftp服务

4、设置虚拟账户列表

vi /etc/vsftpd/vusers.list
mike
123
john
234
新建虚拟用户账户数据库
cd /etc/vsftpd/
db_ load -T -t hash -f vusers. list vusers.db
file vusers.db
chmod 600 /etc/vsftpd/vusers.*
ls -lh /etc/vsftpd/vusers.*
useradd -d /var/ftproot -s /sbin/nologin virtual
chmod 755 /var/ ftproot
vi /etc/pam. d/vsftpd.vu
#%PAM-1.0
auth required pam_userdb.sov db=/etc/vsftpd/vusers
account required pam_userdb.so db=/etc/vsftpd/vusers
auth #对账户名和密码进行认证
account #对密码的有效期及密码账户的--些权限限定的认证
vi /etc/vsftpd/vsftpd.conf
anonymous enable=N0. #关闭匿名账户
local_enable=YES #启用本地账户,一定要启用,如果禁用的话,虚拟用户则无法登录了
chroot local user=YES
guest_enable=YES #启用虚拟用户
guest_username=virtual #指定虚拟用户的宿主用户
pam_service_name=vsftpd.vu #pam认证的文件
anon_world_readable_only=N0 #允许虚拟用户下载
max_clients=400 #最天连接数
max_per_ip=10 #每ip最大可登录数
listen=YES
allow_writeable_chroot=YES
user_config_dir=/etc/vsftpd/vusers_dir #配置文件
write_enable=YES

5、设置虚拟账户的配置文件

mkdir /etc/vsftpd/vusers_dir/
cd /etc/vsftpd/vusers_dir/
vi mike #默认mike只可下载,不能上传,需要上传权限,需要另外指定
anon_upload_enable=YES
anon_mkdir_write_enable=YES
write_enable=YES
vi john #空文件,只有下载权限


推荐阅读
  • Metasploit攻击渗透实践
    本文介绍了Metasploit攻击渗透实践的内容和要求,包括主动攻击、针对浏览器和客户端的攻击,以及成功应用辅助模块的实践过程。其中涉及使用Hydra在不知道密码的情况下攻击metsploit2靶机获取密码,以及攻击浏览器中的tomcat服务的具体步骤。同时还讲解了爆破密码的方法和设置攻击目标主机的相关参数。 ... [详细]
  • 解决nginx启动报错epoll_wait() reported that client prematurely closed connection的方法
    本文介绍了解决nginx启动报错epoll_wait() reported that client prematurely closed connection的方法,包括检查location配置是否正确、pass_proxy是否需要加“/”等。同时,还介绍了修改nginx的error.log日志级别为debug,以便查看详细日志信息。 ... [详细]
  • 本文由编程笔记小编整理,主要介绍了使用Junit和黄瓜进行自动化测试中步骤缺失的问题。文章首先介绍了使用cucumber和Junit创建Runner类的代码,然后详细说明了黄瓜功能中的步骤和Steps类的实现。本文对于需要使用Junit和黄瓜进行自动化测试的开发者具有一定的参考价值。摘要长度:187字。 ... [详细]
  • 本文介绍了关系型数据库和NoSQL数据库的概念和特点,列举了主流的关系型数据库和NoSQL数据库,同时描述了它们在新闻、电商抢购信息和微博热点信息等场景中的应用。此外,还提供了MySQL配置文件的相关内容。 ... [详细]
  • Gitlab接入公司内部单点登录的安装和配置教程
    本文介绍了如何将公司内部的Gitlab系统接入单点登录服务,并提供了安装和配置的详细教程。通过使用oauth2协议,将原有的各子系统的独立登录统一迁移至单点登录。文章包括Gitlab的安装环境、版本号、编辑配置文件的步骤,并解决了在迁移过程中可能遇到的问题。 ... [详细]
  • Servlet多用户登录时HttpSession会话信息覆盖问题的解决方案
    本文讨论了在Servlet多用户登录时可能出现的HttpSession会话信息覆盖问题,并提供了解决方案。通过分析JSESSIONID的作用机制和编码方式,我们可以得出每个HttpSession对象都是通过客户端发送的唯一JSESSIONID来识别的,因此无需担心会话信息被覆盖的问题。需要注意的是,本文讨论的是多个客户端级别上的多用户登录,而非同一个浏览器级别上的多用户登录。 ... [详细]
  • 微软评估和规划(MAP)的工具包介绍及应用实验手册
    本文介绍了微软评估和规划(MAP)的工具包,该工具包是一个无代理工具,旨在简化和精简通过网络范围内的自动发现和评估IT基础设施在多个方案规划进程。工具包支持库存和使用用于SQL Server和Windows Server迁移评估,以及评估服务器的信息最广泛使用微软的技术。此外,工具包还提供了服务器虚拟化方案,以帮助识别未被充分利用的资源和硬件需要成功巩固服务器使用微软的Hyper - V技术规格。 ... [详细]
  • Apache Shiro 身份验证绕过漏洞 (CVE202011989) 详细解析及防范措施
    本文详细解析了Apache Shiro 身份验证绕过漏洞 (CVE202011989) 的原理和影响,并提供了相应的防范措施。Apache Shiro 是一个强大且易用的Java安全框架,常用于执行身份验证、授权、密码和会话管理。在Apache Shiro 1.5.3之前的版本中,与Spring控制器一起使用时,存在特制请求可能导致身份验证绕过的漏洞。本文还介绍了该漏洞的具体细节,并给出了防范该漏洞的建议措施。 ... [详细]
  • Jboss的EJB部署描述符standardjaws.xml配置步骤详解
    本文详细介绍了Jboss的EJB部署描述符standardjaws.xml的配置步骤,包括映射CMP实体EJB、数据源连接池的获取以及数据库配置等内容。 ... [详细]
  • 修复安装win10失败并提示“磁盘布局不受UEFI固件支持”的方法
    本文介绍了修复安装win10失败并提示“磁盘布局不受UEFI固件支持”的方法。首先解释了UEFI的概念和作用,然后提供了两种解决方法。第一种方法是在bios界面中将Boot Mode设置为Legacy Support,Boot Priority设置为Legacy First,并关闭UEFI。第二种方法是使用U盘启动盘进入PE系统,运行磁盘分区工具DiskGenius,将硬盘的分区表设置为gpt格式,并留出288MB的内存。最后,通过运行界面输入命令cmd来完成设置。 ... [详细]
  • 本文详细介绍了在Centos7上部署安装zabbix5.0的步骤和注意事项,包括准备工作、获取所需的yum源、关闭防火墙和SELINUX等。提供了一步一步的操作指南,帮助读者顺利完成安装过程。 ... [详细]
  • PG12新增的VACUUM命令的SKIP_LOCKED选项
    PG12版本的VACUUM命令新增了SKIP_LOCKED选项,该选项使得vacuum命令在遇到被lock住的table时可以跳过并被视为成功执行。之前的版本中,vacuum命令会一直处于等待状态。本文还提到了PostgreSQL 12.1版本的相关信息。 ... [详细]
  • 在win8上安装SQL2000的详细步骤(原创)
    本文详细介绍了在win8操作系统上安装SQL2000的步骤,包括找到安装文件、设置兼容性、输入序列号、选择数据库路径、选择账号模式、输入密码、处理错误提示等。适用于那些想在win8上使用SQL2000的用户。 ... [详细]
  • 本文概述了JNI的原理以及常用方法。JNI提供了一种Java字节码调用C/C++的解决方案,但引用类型不能直接在Native层使用,需要进行类型转化。多维数组(包括二维数组)都是引用类型,需要使用jobjectArray类型来存取其值。此外,由于Java支持函数重载,根据函数名无法找到对应的JNI函数,因此介绍了JNI函数签名信息的解决方案。 ... [详细]
  • 本文介绍了在无法联网的情况下,通过下载rpm包离线安装zip和unzip的方法。详细介绍了如何搜索并下载合适的rpm包,以及如何使用rpm命令进行安装。 ... [详细]
author-avatar
Aircraftl
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有