VSFTPD的基础安全加固
与SSL配置相关的设置(要添加)
ssl_enabe=YES| NO #是否启用ssl
ssl_sslv2=YES|NO #是否激活sslv2加密
ssl_sslv3=YES|NO #是否激活sslv3加密
ssl_tlsv1=YES|NO #是否激活tlsv1加密
force_local_logins_ssl=yes|NO #非匿名用户登陆时是否加密
force_local_data_ssl=YES|NO #传输数据是否加密
rsa_cert_file=/etc/vsftpd/.sslkey/vsftpd.pem #证书位置
配置ftp仅允许ssl连接
对本地用户的目录穿越设置
关键词: chroot
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
(1)对local_user设置的理解: chroot_local_user为YES时,即代表本地用户的活动范围限制在自家目录
(2)指定用户执行chroot -可以进行目录穿越
chroot_local_user=No
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
只有在list_file里指定的用户可以进行 list_file的格式为每个用户名占一行
对本地用户的访问控制
关键词:userlist tips:centos7 只有userlist_enable 其余可能要自己添加
userlist_enable=YES
userlist_deny=YES
userlist_file=/etc/vsftpd.user_list #该文件指定的本地用户可以访问ftp服务器 其他则不可以
banner信息控制
关键词: banner
file_banner=xxx
配置基本的性能和安全选项
1. 空闲用户会话中断时间 #keyword=timeout
idle_session_timeout=xx #unit is seconds
2.空闲数据连接的中断时间
data_connection_timeout= xx # also seconds
3.传输速率配置 #important 对本地用户和匿名用户
#要自己添加
local_max_rate=50000 #50kbytes /sec
anon_max_rate=30000
4.设置客户端连接的端口范围 #passive mode
pasv_min_port=50000
pasv_max_port=60000
服务器环境相关配置(要自己添加的)
connect_timeout=xx #units is seconds 主动模式下 设定时间没有得到响应 中断连接
accept_timeout=xx #also seconds 被动模式
max_clients=0 #最大连接数 如果vsftpd是stadalone启动 可以限制客户端同时在线的数量
max_per_ip=0 # 限制同一个ip最多能有多少个客户端在线
与本地用户相关设置
guest_enable=YES|NO #默认为NO 如果为YES 所有的本地用户被将被设置成guest用户
guest_username=ftp # 当guest_enable=YES生效 指定guest用户名称
匿名用户相关设置
anon_other_write_enable=YES|NO # 是否允许匿名用户有“写”之外的权限,包括删除、修改、重命名的权限
anon_max_rate=0 #匿名用户的传输速率,0 表示不限制
anon_umask=077 #匿名用户上传文件的默认权限
系统安全相关设置
tcp_wrappers=YES |NO # 是否支持 tcp_wrappers
dual_log_enable=YES, vsftpd_log_file=/var/log/vsftpd.log #是否启用双日志,及另一份日志的路径
VSFTPD的基础安全加固的更多相关文章
- Windows 2016 服务器安全配置和加固
最近一个项目需要使用Windows服务器,选择安装了最新版的Windows 2016,上一次使用Windows服务器还是Windows 2003系统,发现变化还是挺多的,依次记录下来以备后面查阅. 目 ...
- 文件服务器:FTP服务器详解
文件服务器:FTP服务器 数据传输原理 功能简介 文件的传输与管理 不同等级的用户身份:user.guest.anonymous 实体用户.权限较完整 匿名用户.下载资源的能力 命令记录与日志文件记录 ...
- vsftp 详解鸟哥版
FTP (File Transfer Protocol) 可说是最古老的协议之一了,主要是用来进行档案的传输,尤其是大型档案的传输使用 FTP 更是方便!不过,值得注意的是,使用 FTP 来传输时,其 ...
- linux ftp及C/S服务架构
乱码转换工具使用convmv软件:windows中文字符编码为GB2312 linux中文字符编码为utf-8选项:-f:源文件中中文字符编码-t:转换成字符编码-r:代表递归--notest:不测试 ...
- ITSM运营实施案例 - 汽车行业
M公司是在汽车行业知名TOP企业,在日常运营过程中有如下问题: ******************************************************************** ...
- 转!!ftp学习
转自:http://blog.csdn.net/wave_1102/article/details/50651433 FTP (File Transfer Protocol) 可说是最古老的协议之一了 ...
- vue梳理(1)
单选/复选 <div id="app"> <!--checkbox需要给每个复选双向绑定同一个数据,并添加value值, 点击某个复选时就会把该复选的value值 ...
- Linux ftp服务器部署(最简单的ftp教程)
之前在阿里云领了一个ECS服务器(顺便说一句,白嫖的,真香~),就想着做点什么,然后试着做个 ftp 站点,因为第一次尝试,结果走了不少弯路.最后终于完成了,研究了两天(哎~,脑壳笨没办法)就想着记录 ...
- FTP 基础 与 使用 Docker 搭建 Vsftpd 的 FTP 服务
FTP 基础 与 使用 Docker 搭建 Vsftpd 的 FTP 服务 前言 最近的工作中,需要将手机上的文件发送到公司的 FTP 的服务器.按照从前的思路,自然是,先将文件传到电脑,再由电脑上传 ...
- 虚拟机console基础环境部署——安全加固
1. 概述 安全是一个重要的课题.广义上可以总结为: 主机安全 网络安全 信息安全 数据安全 虽然console已经是最小化安装,但是这并不能说明console就已经安全了.之前的博客对console ...
随机推荐
- Django中多数据库的配置,实现分库分表,主从复制,读写分离
在django项目中, 一个工程中存在多个APP应用很常见. 有时候希望不同的APP连接不同的数据库,这个时候需要建立多个数据库连接. 1. 修改项目的 settings 配置 在 settings. ...
- npm+react linux 开荒
安装npm 从 https://nodejs.org/dist/ 找到下载包,并不是版本越高越好,得看项目的需要. 解压之后,将解压路径bin添加到PATH里. 完成后可配置npm源 npm inst ...
- springboot跳转页面404的问题
今天测试的时候出现了这个问题: Cannot forward to error page for request [/] as the response has already been commit ...
- 【win+r】快速打开软件
第一种设置方法: ①把要启动的文件夹路径添加到系统环境变量里面去 ②按win+r就可以快速启动了 第二种设置方法: 是直接把(程序的)快捷方式,放到安装目录的 Windows\System32\ 文件 ...
- $forceUpdate和this.$set('userInfo',name,'小红');
在Vue官方文档中指出,$forceUpdate具有强制刷新的作用. 那在vue框架中,如果data中有一个变量:age,修改他,页面会自动更新. 但如果data中的变量为数组或对象,我们直接去给某个 ...
- [Unity]关于Physic Material,物理碰撞
制作游戏时发现了一些问题,主角身上有刚体(rigbody) 在地面移动时没有什么太大的问题,但是一旦在下落时按住方向键,就会出现角色贴在墙上不下来的问题 通过其他例子发现使用了Physic Mater ...
- 从零开始升级基于RuleBased的聊天机器人
这里记录从最基础的基于规则的聊天机器人,升级到基于逻辑的机器人,再升级到调用Google提供的API来让机器人能说.会听普通话. 最基本的完全基于规则式的问答:问什么就答什么,幼儿园水平. impor ...
- React Navite环境搭建
俗话说"工欲善其事,必先利其器."所以,我们第一步就是搭建React Native开发坏境. 一.安装Node.js.npm.yarn 1.1 React native需要借助no ...
- 【面试题】ES6语法五之箭头函数
ES6特性=>. function foo(x, y){ return x + y } var foo = (x, y) => x + y 包括一个参数列表(零个或多个参数,如果参数不是一 ...
- git基础代码获取
1.新建文件夹 2.使用命令git init 初始化 3.见你与远程厂库的连接,git remote add origin 远程仓库地址 4.将远程仓库代码拉去到本地,git fetch origin ...