vsftpd 配置文件的一些设置

ftp:File Transfer protocol 文件传输协议

  • 两个连接:
    tcp:命令连接
    tcp:数据连接
    主动模式:服务器端通过20端口主动连接客户端,客户端监听在于服务器端的建立连接的端口+1上,服务器工作在tcp/20
    被动模式:客户端使用自己与服务器端建立端口+1上连接客户端的随机端口

防火墙上连接追踪

数据要流失化
文本:文件流
二进制

c/s

  • 用户认证:
    系统用户
    虚拟用户
    匿名用户

数据传输安全
sftp:ssh提供的基于ssh协议的ftp
ftps:基于ssl的ftp

相应码:
1XX:信息码
2XX:成功状态码
3XX: 进一步提示补全信息的状态码
4XX:客户端错误,临时错误
5XX: 服务器端错误,永久性错误

安装vsftpd
/etc/pam.d/vsftpd:认证文件
pam:Plugable Authentication Module 插件式认证模块

  •  nsswith:名称解析框架
    模块化:/lib64/linbnss*,/usr/lib64/libnss*
    配置文件:/etc/nsswitch.com
  •  pam:认证框架
    模块化:/lib64/security/pam*.so
    配置文件:/etc/pam.conf和/etc/pam.d/*

服务脚本:/etc/rc.d/init.d/vsftpd

配置文件:/etc/vsftp/vsftpd.conf
主程序文件:/usr/sbn/vsftpd
数据文件:/var/ftp

 

定个写:
等号前后没有空格
anonymous或ftp

对于ftp访问ftp服务器时应该对其chroot
禁锢用户与其家目录中
chroot_local_user={yes|no} 禁锢用户,默认为no
需要禁锢开启为yes,安全

chroot_list_enable={yes|no}
chroot_list_file=/etc/vsftp/chroot
不禁锢全部用户,将禁锢的用户保存在/etc/vsftp/chroot
每行一个用户
两项不能同时使用

local_enable={yes|no}是否需要本地用户登录
匿名用户的配置
anonymous_enable=YES,启动虚拟用户登录
anon_upload_enable=YES 允许虚拟用户有写权限
anon_other_write_enable=YES 允许虚拟用户有删除权限
anon_mkdir_write_enable=YES 允许虚拟用户创建文件夹权限

注意:启用写入功能时,ftp用户对相应的本地文件系统也有相应的写入权限;
生效的权限取决于文件系统权限和服务权限的交集

实现用户的欢迎信息login banners
ftpd_banner=
banner_file=banner文件
切换目录式的欢迎信息
dirmessage_enable=YES
在目录中创建.messages

vsftp控制登陆系统用户的机制
/etc/vsftpd/ftpusers中的用户不允许使用ftp服务器,这是在/etc/pam.d/vsftpd中定义的

user_list配置文件有两种用法
黑名单:
userlist_enable=YES
uselist_deny=YES
白名单:
userlist_enable=YES
uselist_deny=NO

连接限制
max_clients:最大并发连接数
max_per_ip:每IP可同时发起并发请求

传输速率:
anon_max_rete: 匿名用户的传输速率,单位为“字节/秒”
local_max_rate:本地用户传输速率,单位为“字节/秒”

上传文件的umask:
anno_umask:匿名用户上传文件的umask;
local_umask:
修改匿名用户上传文件的属主和属主
chown_uploads=YES
chown_username=用户名

实现虚拟用户:
所有的虚拟用户会映射成一个系统用户,访问时的文件目录是为此系统用户的家目录

虚拟用户
hash编码的文件:
奇数行为用户名,偶数行为密码
关系型数据库:
pam-mysql实现认证
虚拟用户的权限
user_config_dir=文件夹
在文件夹中创建虚拟用户同名的的文件
在虚拟用户的文件中写入权限

 

 

 

原创文章,作者:nene,如若转载,请注明出处:http://www.178linux.com/88056

(0)
nenenene
上一篇 2017-09-10 10:10
下一篇 2017-09-10 18:47

相关推荐

  • Vim 末行模式 & crontab & scripts 练习

    1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#;   ~]# cp /etc/rc.d/rc.sysinit /tmp     %s@^[[:space:]]\+\*@#&@g     (使用元字符 有几…

    Linux干货 2016-10-31
  • sed基本用法详解

    一、sed介绍:        sed是非交互式的编辑器,同时又是面向字符流的,一次处理一行文本。当前输入的行被缓存至一个被称为模式空间(pattern space)的内存空间中,与给定的模式进行比对,若不匹配,则将内容输出至屏幕,之后读取第二行;若匹配,则执行编辑命令,命令执行完成后,将模式空间中…

    Linux干货 2016-08-10
  • 5.程序包管理与内核命令的使用

    1、  显示/boot/grub/grub.conf中以至少一个空白字符开头的行; ~]#  grep -E “^[[:space:]]+” //boot/grub/grub.conf root (hd0,0) kernel /vmlinuz-2.6.32-279.el…

    Linux干货 2017-07-30
  • Find命令简介与使用

    用途:         find命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。 语法: find [OPTION]… [查找…

    Linux干货 2016-08-30
  • Bash Shell编程初学基础篇之二

    Bash Shell编程初学基础篇之二    时间如白驹过隙,一晃过去了几周,一切的计划都没有变化快。当你制定计划实施时,在这期间却会发生许多打乱我们计划的事情,但是我们还是要坚持下去,胜利是属于坚持到最后的人!实践出真理,中级基本结束了,需要回过头了好好总结一下了。心中总有好多话想找个同行唠唠;不废话了,估计大家都烦了!总有一天,你会成…

    Linux干货 2015-05-11
  • N25第八周博客作业

    1、写一个脚本,使用ping命令探测172.16.250.1-172.16.250.254之间的所有主机的在线状态;     在线的主机使用绿色显示;     不在线的主使用红色显示; #!/bin/bash trap ‘mytrap’ INT mytra…

    Linux干货 2017-02-26