一 在安装FTP服务,并在客户端进行测试

1服务器端:

2 客户端:

二 配置ftp的登陆,上传,下载设置

1 默认情况下匿名用户登陆ftp服务器,都只能下载,不能上传。

2 lftp登陆到远程服务器时,指定要登陆到远程主机上的哪个用户。

3 个性化配置


一 在安装FTP服务,并在客户端进行测试

 

1服务器端:

1 安装vsftpd服务

yum install vsftpd

2 重启服务

systemctl start vsftpd

3 设置火墙,在防火清中永久开启FTP的服务项

firewall-config

4 查看火墙,查看FTP服务是否加入防火墙

firewall-cmd  --list-all

[root@localhost Desktop]# firewall-cmd --list-all

public (default, active)

  interfaces: virbr0 wlp2s0

  sources:

  services: dhcpv6-client ftp http ssh

  ports:

  masquerade: no

  forward-ports:

  icmp-blocks:

  rich rules:

2 客户端:

1连接ftp服务器来进行测试

可以用 Files——connection to server

也可以用 yum  install lftp 然后 lftp 172.25.254.172

也可以 yum install links   然后 links ftp://172.25.254.172

 

二 配置ftp的登陆,上传,下载设置

 

1 默认情况下匿名用户登陆ftp服务器,都只能下载,不能上传。

其实,匿名用户,就是没有指定以什么身份登陆ftp服务器,那默认就是ftp这个身份。

小白配置简易FTP服务----基于redhat7.0_服务器 

2 lftp登陆到远程服务器时,指定要登陆到远程主机上的哪个用户。

 

登陆成功后,进入的不再是/var/ftp。而是指定用户的家目录。就跟这个指定的用户本身一样,可以在家目录里上传,下载,删除文件。但是上传的文件所属的用户和组都是指定的用户。

小白配置简易FTP服务----基于redhat7.0_ftp_02 

我登陆到desktop上的student用户了,那desktopstudent能执行的操作我都可以执行。我是在以student身份执行student可以执行的操作。

 

 

《错误码553指 文件系统不允许,你要看目录或者文件的权限了。错误码550是使用的服务不允许,这时候你要检查你所使用的服务的配置了》

 

3 个性化配置

需要编辑 /etc/vsftpd/vsftpd.conf

小白配置简易FTP服务----基于redhat7.0_ftp_03 

小白配置简易FTP服务----基于redhat7.0_服务器_04 

* anonymous_enable是否允许匿名用户登陆,即不指定要登陆的用户。

[root@foundation21 ~]# lftp 172.25.254.172 就会失败

 

* local_enables是否允许以本地(服务器端)的用户身份登陆。如果改为NO的话:

小白配置简易FTP服务----基于redhat7.0_服务器_05 

 

* anon_upload_enable 是否允许上传

man 5 vsftpd.conf 可以看到这个值默认是设置为no

小白配置简易FTP服务----基于redhat7.0_服务器_06

* anon_world_readable_only 控制能否下载。

相对于/var/ftp/pub 我们是以ftp的身份来执行动作的。要把/var/ftp/pub设置成对ftp可写。chmod 777 /var/ftp/pub 或者 chgrp -g ftp /var/ftp/pub。不过前者把目录的权限弄的太大,很危险,服务可能启不起来。

小白配置简易FTP服务----基于redhat7.0_服务器_07

 

* anon_mkdir_write_enable 匿名用户能否创建目录

* anon_other_wirte_enable 匿名用户能否进行其他的写操作,包括重命名,删除等

小白配置简易FTP服务----基于redhat7.0_ftp_08

 

* anon_root 更改不指定用户时,也就是匿名用户的默认访问目录

默认的是/var/ftp/pub。这里你可以自己指定。

* anon_umask 匿名登陆时上传的文件的权限。如果改成022,那最终创建出来的文件的权限是644 创建的目录的权限是755

小白配置简易FTP服务----基于redhat7.0_服务器_09

比如你指定发布目录是/public /public的权限不能大于755.。不然权限太大,ftp服务不会启动。还要把/public的所属组改成ftp chgrp ftp /public

 

*chown_username 默认情况下,匿名登陆时创建出来的文件的拥有者和组都是ftp。你可以自己指定。注意:lee必须要是你FTP服务器上必须有这个用户。

小白配置简易FTP服务----基于redhat7.0_ftp_10

 

*控制本地用户那个可以被用来登陆,那个不可以被用来登陆

ftpusers 是永久的黑名单 user_list是临时的黑名单,并且可以设定为白名单

小白配置简易FTP服务----基于redhat7.0_服务器_11

 

加入到ftpusers里的用户不能再被ftp时登陆。比如student写到ftpusers里面或者user_list里面。

lftp 172.25.254.172  -u  student  就不能再登陆了。

 

下面把user_list 转换成白名单

可以看到/etc/vsftpd/vsftpd.conf user_list 已经被使用了:

小白配置简易FTP服务----基于redhat7.0_ftp_12

 

下面的设置会让user_list 不再成为黑名单

小白配置简易FTP服务----基于redhat7.0_服务器_13

 

 

* 限制指定用户登陆时的活动范围

 

以指定用户登陆时,默认到指定用户的家目录下。而且还可以切换到其他目录下。这是不符合实际情况的。

小白配置简易FTP服务----基于redhat7.0_ftp_14

我们来做以下限制:

(1)chmod 500 /home/*

(2)vim /etc/vsftpd/vsftpd.con

小白配置简易FTP服务----基于redhat7.0_服务器_15

(3)写chroot_list文件

touch /etc/vsftpd/chroot_list

echo student > /etc/vsftpd/chroot_list

然后重启服务。

(4)结果

就是:黑名单中的student 的家目录就变成/目录了。其他用户都正常。

小白配置简易FTP服务----基于redhat7.0_服务器_16