Linux系统服务搭建之vsftp

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux系统服务搭建之vsftp相关的知识,希望对你有一定的参考价值。

一、samba  局域网传输共享

优点:实时修改服务器上的内容

二、Vsftp :very securet file transferprotocol  

2.1网络文本协议

   特点:    A、默认只有普通用户权限,可下载不可上传

B、任何文件的修改需要上层权限

C、本身的功能很强大

D、使用chroot命令修改用户进入的根目录

 端口:    TCP  21  ——命令信道——(监听)——持续连接

TCP  20  ——数据信道——(上传、下载)——按需连接

2.2连接模式   主动模式、被动模式(Linux默认)

    技术分享                                                 

特点:效率高、速度快、但服务器的20端口连续开放,很容易受到网络攻击,不安全!

技术分享

特点:请求过多时,服务器开放的随机端口太多,压力太大;  安全性强!

传输模式:     1ASCII传输          2、二进制传输

FTP软件:

服务器端:   1proftpd   2pureftpd  

            3vsftpd    高性能   高安全

客户端:     1ftp      2lftp 

配置文件:

              /etc/vsftpd/vsftpd.conf


三、用户访问类型:匿名用户   指定用户

    3.1匿名用户——ftp 或者  anonymous,密码:    任意字符

    共享文件位置 /var/ftp/pub   (默认只能下载)

   win访问方式:  ftp // 域名或者IP


技术分享

注:每次配置文件的修改,都必须先关闭远程匿名登录端,再重新启动服务 

 [[email protected] ~]# servicevsftpd restart

例子:

1、        匿名登录

Aftp 192.168.100.128

用户名:ftp

密码:空

技术分享

Blftp  192.168.100.128    不需要用户名,密码

技术分享

2、        是否允许匿名用户登录YES”是 NO”否

         禁止登录         anonymous_enable=     NO

重启服务

技术分享

使用客户端192.168.100.10测试

      lftp 192.168.100.128    

技术分享

       ftp 192.168.100.128     

技术分享

3 anon_upload_enable=YES   允许匿名用户上传

开启匿名用户登录(默认权限只能下载)

在客户端192.168.100.10 使用命令put测试 

技术分享

4、        anon_umask=022  匿名用户已上传的文件允许下载

技术分享

anon_umask=073 匿名用户已上传的文件允许下载

 

5anon_other_write_enable=YES  允许匿名用户删除文件

技术分享

此处使用ftp登录后,仍然无法删除!!!!

注意:在使用 FTP  LFTP是尽量使用lftp命令,避免出现很多错误

6、       anon_mkdir_write_enable=YES 允许匿名用户创建目录

技术分享

7、改变匿名用户共享文件的登录目录

     anon_root=/test  (共享目录的位置可以自定义)

测试:先在FTP服务器上创建 /test目录,再在里面创建文件 ppmm

匿名用户会把 /test认为是自己的根目录 /

技术分享

8max_per_ip=1  限制一个IP链接个数

超过连接个数会是下面的结果: not  connected

技术分享

很重要——以上匿名用户的几个权限操作前提

Chown ftp  /test或者chmod 777 /test

即保证ftp匿名用户对目录及文件有W权限

切记!!!!!!


3.2本地用户

              需要在服务器端先添加用户   useradd   bcl

                                                        Passwd  ****

共享文件位置 /home/bcl/  

win访问方式:  ftp://[email protected]IP

以上两种的登录方式都为WIN中,Linux中则是   ftp  +  IP

权限配置

 技术分享

技术分享


权限配置实验:

1、        创建两个用户:bclhyl

bcl使用ftp登录不能切换目录

hyl使用ftp登录可以切换目录

步骤:

  1. 1、开启相关权限设置,

技术分享

  1. 2、创建用户

    技术分享          


在允许文件列表   /etc/vsftpd/chroot_list   中添加放行用户  hyl

[[email protected] ~]# cd /etc/vsftpd/

[[email protected] vsftpd]# touch chroot_list

[[email protected] vsftpd]# vim chroot_list   

文件中只写用户名 hyl      

  1. 3、保存并重启服务   service   vsftpd  restart

技术分享

1.4、验证登录信息

技术分享

技术分享




2、        设置欢迎信息

技术分享

两个设置信息只能同时显示一个,且为登录之前的欢迎信息。

ftpd_banner=***   欢迎语句

banner_file=***     欢迎文件(将文件里面的内容展现出来,文件自拟)

例子:


技术分享

3、        只禁止bclhyl登录

3.1、修改配置文件  /etc/vsftpd/vsftpd.conf,开启黑白名单

技术分享

3.2、在黑白名单配置文件  /etc/vsftpd/user_list 中添加用户名 bcl  hyl

验证:

技术分享

4、        允许bcl登录、不允许hyl登录

4.1、修改配置文件  /etc/vsftpd/vsftpd.conf,开启黑白名单

技术分享

4.2、在黑白名单配置文件  /etc/vsftpd/user_list 添加用户名bcl 不添加hyl

验证:bcl可以登录,hyl并不能登录

技术分享

3.3虚拟用户

设置虚拟用户,可以单独限制某一个用户的FTP权限,而匿名用户和本地用户只能限制某一类人FTP权限!

实验例子:

创建三个用户,用户名:abc——密码:123456——权限:可以上传文件

                       用户名:xyz——密码:654321——权限:可以创建目录

用户名:qwe——密码:123456789——权限:可以修改文件名

实验步骤:

  3.3.1、创建用户信息文件并生成数据库文件

       Vim   /etc/vsftpd/name

内容为:

abc

123456

xyz

654321

qwe

123456789

转变成数据库文件(命令是固定的,必须这样写

[[email protected]]# db_load -T -t hash -f name name.db


技术分享技术分享

改变文件name     name.db 的权限,只有root可以查看


技术分享




3.3.3、建立支持虚拟用户的PAM认证文件,添加虚拟用户支持

技术分享

编辑vsftpd.pam


技术分享

修改后

技术分享

3.3.4、在vsftpd.conf 文件中添加支持配置


技术分享

技术分享

 

创建 /etc/vsftpd/dir文件,并在文件下创建上面的三个用户文件并编辑相应的权限

用户abc——权限设置:anon_upload_enable=YES

用户xyz——权限设置:anon_mkdir_write_enable=YES

用户qwe——权限设置:anon_other_write_enable=YES

技术分享


3.3.5、验证三个用户的权限情况

技术分享

技术分享

技术分享


注:

1、    虚拟用户登录成功,但是权限无法实现:vsftpd.conf中开启的匿名用户的相关权限会和dir中开启的用户权限相互冲突,故应全部注释掉!

2、    在编辑vsftpd.pam认证文件时技术分享中“name”为数据库文件名,一定不要搞错,否则虚拟用户登录不了

3、    Vsftpd服务没有启动,则会有下面的提示

技术分享

4、    可以连接成功,其他命令都可以使用,但是就是不能使用 ls 、dir等查看命令,此时则需要给共享文件 /var/ftproot更改权限

技术分享


本文出自 “老白博客” 博客,请务必保留此出处http://ycreazy.blog.51cto.com/12237051/1931409

以上是关于Linux系统服务搭建之vsftp的主要内容,如果未能解决你的问题,请参考以下文章

vsftp搭建

vsftp快速搭建ftp服务器

Linux系统搭建FTP服务器教程

linux 服务器怎么启动ftp?

VSFTP服务rhel8安装vsftp软件

VSFTP服务rhel8安装vsftp软件