Linux搭建FTP服务器(一)

Linux搭建FTP服务器(一)

  • 原理
    FTP作为古老的传输协议之一,它主要作用于服务器和客户端文件传输。但它是明文传输,存在许多的安全危机,因此vsftp这个软件出现了。

  • 功能
    vsftpd(Very Secure FTP Daemon——“非常安全”)
    ①不同等级的用户身份:user、guest、anonymous(匿名用户)
    ②命令记录与日志文件记录
    FTP可以使用syslogd来进行数据的记录,记录用户曾经使用过的命令与用户传输数据的及记录。(/var/log)
    ③限制用户活动目录:chang root(chroot)

  • 主动模式和被动模式
    在这里插入图片描述
    区别:
    主动模式:自动启动20端口进行通信
    被动模式:客户端发送请求时,告诉服务器是被动连接,服务器端会自己启动一个被动模式的数据连接端口,并将端口告知客户端。

  • /etc/vstfpd/vsftpd.conf
    整个vsftpd软件的配置文件,该文件的设置是以"参数=设置值"来设置的。(man 5 vsftpd.conf可详细了解)。

  • /etc/pam.d/vsftpd
    使用pam模块时的配置文件,用于身份认证以及阻挡一些用户身份的功能。

  • /etc/vsftpd/ftpusers
    将不想让其登录的ftp用户账号写入这里即可。

  • /etc/vsftpd/user_list
    该文件生效否与主配置文件里的userlist_enable和userlist_deny有关,功能和/etc/vsftpd/ftpusers一样。

  • /etc/vsftpd/chroot_ist
    该文件默认不存在,可手动建立,生效否与主配置文件的chroot_list_enable、chroot_list_file有关。可将某些实体用户限制在它们的用户主目录下。

  • /usr/sbin/vsftpd
    vsftpd的主要执行文件(唯一)

  • /var/vsftpd
    vsftpd默认匿名用户登录的根目录。

  • vsftpd.conf配置文件(参考了biuayi.cn网站的《CentOS 搭建FTP服务器(一)》)
    man 5 vsftpd.conf

#是否允许匿名登录
anonymous_enable=YES

#是否允许本地用户登录
local_enable=YES

#是否开放本地用户写权限
write_enable=YES

#本地用户默认的umask码
local_umask=022

#是否允许匿名ftp用户上传
anon_upload_enable=YES

#是否允许匿名用户有创建目录的权利
anon_mkdir_write_enable=YES

#是否显示目录说明文件,默认是YES但需要收工创建.message文件
dirmessage_enable=YES

#是否记录ftp传输过程
xferlog_enable=YES

#传输端口,默认20
connect_from_port_20=YES

#是否改变上传文件的属主,如果是需要输入一个系统用户名
chown_uploads=YES
#"="号后面写用户名,比如说"root"
chown_username=root

#传输日志路径
#xferlog_file=/var/log/xferlog

#是否使用标准的FTP xferlog模式
xferlog_std_format=YES

#设置默认的断开不活跃session的时间
idle_session_timeout=600

#设置数据传输超时时间
data_connection_timeout=600

#运行vsftpd需要的非特权系统用户默认是nobody
nopriv_user=ftpsecure

#是否允许运行特殊的ftp命令async ABOR.
async_abor_enable=YES

#是否使用ASCII码方式上传和下载文件
ascii_upload_enable=YES
ascii_download_enable=YES

#登录欢迎语
ftpd_banner=Welcome to blah FTP service.

#是否禁止匿名用户使用某些邮件地址
deny_email_enable=YES
#如果是输入禁止的邮件地址的路径和文件名
banned_email_file=/etc/vsftpd/banned_emails

#是否将系统用户限止在自己的home目录下
chroot_local_user=YES

#是否启用非限制用户的名单
chroot_list_enable=YES

#非限制用户名单的路径
chroot_list_file=/etc/vsftpd/chroot_list

#是否允许递归查询,不建议开启
ls_recurse_enable=YES

#是否允许侦听
listen=YES

#是否允许IPv6侦听,不可以在同一份配置文件中与listen同时启用
listen_ipv6=NO

# PAM服务名称,PAM使用vsftpd的配置文件
pam_service_name=vsftpd

#如果userlist_enable=NO,ftpusers文件中的用户将禁止访问FTP服务器
userlist_enable=YES

#是否与TCP_wrapper结合限制用户的IP地址登录
#/etc/hosts.allow 定义允许的地址
#/etc/hosts.deny 定义拒绝的来源地址
tcp_wrappers=YES
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值