ftp服务

#1.部署 FTP 服务器
默认情况下FTP协议使用TCP端口中的 20和21这两个端口,其中20用于传输数据,21用于传输控制信息。但是,是否使用20作为传输数据的端口与FTP使用的传输模式有关,如果采用主动模式,那么数据传输端口就是20;如果采用被动模式,则具体最终使用哪个端口要服务器端和客户端协商决定
FTP ( 文件传输协议 ) 是 INTERNET 上仍常用的最老的网络协议之一 , 它为系统提供了通过网络与远程服务器进行传输的简单方法,在 RED HAT ENTREPRISE LINUX 6 中。 FTP 服务器包的名称为 VSFTPD , 它代表 Very Secure File TransferProtocolDamon 服务器名称,也叫做 vsftpd,默认配置文件让 ANONYMOUS 用户只能下载位于 CHROOT 目录中的内容。 /var/ftp/ 这意味着远程 FTP 客户端能以用户anonymous 或 ftp 身份连接到服务器 ( 无需密码 ), 并从 ftp服务器上的 /var/ftp/ 目录下载文件 ( 其本地 ftp 用户可以读取这些文件 )
#2.安装 vsftpd 包并启动服务

yum install vsftpd -y       ##安装vsftp服务
systemctl start vsftpd      ##启动vsftp服务
systemctl stop firewalld    ##关闭防火墙
systemctl enable vsftpd    ##开机启动vsftp服务

配置好yum源安装vsftp服务
这里写图片描述
这里写图片描述
启动vsftp服务,设置开机启动vsftp服务
这里写图片描述
2.命令方式配置防火墙(防火墙处于开启状态)
firewall-cmd --permanent --add-service=ftp
firewall-cmd --reload
图形界面配置防火墙
firewall-config (防火墙处于开启状态)
这里写图片描述
Configuration :选择permnent
Public 下选中ftp
Options :选择reload firewall
关闭退出
这里写图片描述
3.配置内核防火墙文件
/etc/sysconfig/selinux

SELINUX=disabled
这里写图片描述
4.reboot重启
命令:getenforce
Disabled 关闭内核防火墙成功
这里写图片描述
5.vsftp文件信息
/etc/ftp 默认发布目录
/etc/vsftp 配置目录
6.vsftpd服务的配置参数(/etc/vsftp ) 配置完成后重启服务
报错说明:530认证失败 550程序不允许 553服务器文件系统不允许 500权限过大
(1)匿名用户登陆设定
anonymous_enable=YES ##匿名用户可以登陆
这里写图片描述
这里写图片描述

anonymous_enable=NO ##匿名用户不能登陆
这里写图片描述

这里写图片描述
(2)匿名用户上传文件
vim /etc/vsftpd/vsftpd.conf 编辑ftp配置文件
这里写图片描述
chgrp ftp /var/ftp/pub 编辑组成员
chmod 775 /var/ftp/pub 组权限
这里写图片描述
这里写图片描述
这里写图片描述
lftp 172.25.254.109
cd /pub
put /file
这里写图片描述

anon_world_readable_only=NO ##允许匿名用户下载
这里写图片描述
这里写图片描述
(3)anon_mkdir_write_enable=YES ##允许匿名用户建立目录
550报错mkdir程序不允许创建目录
这里写图片描述
这里写图片描述

(4)anon_other_write_enable=YES ##允许匿名用户重命名和删除
这里写图片描述
这里写图片描述
550报错是命令不允许,因为重命名的时候,文件名冲突

(5) anon_root=/westos ##设置匿名用户家目录
这里写图片描述
这里写图片描述
(6)anon_umask=022 ##设置匿名用户上传的文件权限
这里写图片描述
这里写图片描述
(7)一组命令:

chown_uploads=YES            开启更改上传文件的用户的功能
chown_username=student       上传文件的用户改为student
chown_upload_mode=0644       将上传文件的用户权限改为0644  umask值会自动失效 

这里写图片描述
这里写图片描述
这里写图片描述
(8)anon_max_rate=102400 设置文件上传速度为100k/s
制作大文件
这里写图片描述

这里写图片描述
这里写图片描述
这里写图片描述
(9)max_clients=2 ##最大链接数,设置连接ftp的最大数量2个
这里写图片描述
(10)local_root=/student ##本地用户家目录
这里写图片描述
这里写图片描述
(11)chroot_local_user=YES 限制本地用户cd出家目录,锁在家目录中(需删除写权限)
chmod u-w /home/* 需删除写权限
这里写图片描述
这里写图片描述

这里写图片描述

(12)chroot_local_user=NO 取消限制本地用户cd出家目录(需删除写权限)
这里写图片描述
这里写图片描述

(13) 组命令
``
chroot_list_enable=YES yes开启白名单
(default follows)
chroot_list_file=/etc/vsftpd/chroot_list
vim /etc/vsftpd/chroot_list 编辑写入限制用户名,写进去的用户可以自由cd目录,没写进去的锁在家目录

vim /etc/vsftpd/vsftpd.conf
这里写图片描述

vim /etc/vsftpd/chroot_list
这里写图片描述
这里写图片描述

(15)组命令:
chroot_list_enable=NO ##NO开启黑名单
(default follows)
chroot_list_file=/etc/vsftpd/chroot_list ##黑白名单
vim /etc/vsftpd/chroot_list ##编辑写入限制用户名,写进去的用户不能cd目录,锁在家目录中

vim /etc/vsftpd/vsftpd.conf
这里写图片描述

vim /etc/vsftpd/chroot_list
这里写图片描述
这里写图片描述

(16)限制用户登录:
用户登录黑名单

配置文件:/etc/vdftpd/ftpusers    ##设置永久黑名单
                                                                 /etc/vsftpd/user_list     ##设置临时黑名单
    把用户westos设为永久黑名单

这里写图片描述
这里写图片描述
(不用重新启动vsftpd服务,即改即生效)
这里写图片描述
白名单设置(在里边的用户可以登陆)

  vim /etc/vdftpd/vsftpd.conf     
  >>userlist_deny=NO                  
            
 /etc/vdftpd/ftpusers        用户白名单(优先级高)
 /etc/vsftpd/user_list       用户临时白名单 

这里写图片描述
这里写图片描述

7 ,ftp虚拟身份的设定

      创建虚拟帐号
      
      vim /etc/vsftpd/loginusers	##文件名称任意
      ftpuser1
      123
      ftpuser2
      123
      ftpuser3
       123

(2)

db_load -T -t hash -f /etc/vsftpd/loginusers loginusers.db 新建加密文件

(3)vim /etc/pam.d/ckvsftpd ##编辑密码配置文件
account required pam_userdb.so db=/etc/vsftpd/loginusers
auth required pam_userdb.so db=/etc/vsftpd/loginusers
@@account 账户 auth密码认证,required要求检验,pam_userdb.so检验程序,etc/vsftpd/loginusers帐号密码文件
(4) vdftpd文件配置
vim /etc/vsftpd/vsftpd.conf
pam_service_name=ckvsftpd
guest_enable=YES
@@虚拟帐号身份指定
guest_username=student 虚拟用户登录身份
chmod u—x /home/student 去掉写权限
实验:1.新建虚拟用户帐号密码
这里写图片描述
这里写图片描述
2.新建加密文件
这里写图片描述
3.编辑密码帐号配置文件
这里写图片描述
4.vsftpd文件配置
这里写图片描述
这里写图片描述
虚拟用户家目录的设定
vim /etc/vsftpd/vsftpd.conf
mkdir /ftpdir/student1/student1file 创建读取位置
user_sub_token= U S E R 引 用 s h e l l 环 境 变 量 l o c a l r o o t = / f t p d i r / USER 引用shell环境变量 local_root=/ftpdir/ USERshelllocalroot=/ftpdir/USER 读取目录位置
systemctl restart vsftpd 重起ftp服务
这里写图片描述
这里写图片描述
这里写图片描述
虚拟帐号配置独立
vim /etc/vsftpd/vsftpd.conf
user_config_dir=/etc/vsftpd/userconf
mkdir -p /etc/vsftpd/userconf

vim /etc/vsftpd/userconf/ftpuser1
在此文件中设定配置文件中的所有参数,此文件的优先级高

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值