Linux学习之路我用 LinuxLinux

Linux远程文件的共享FTP

2018-05-22  本文已影响9人  少帅yangjie

windows中使用的IIS可以搭建ftp的平台,但是非常的不稳定,Serv-U等软件可以完成ftp的共享,一般来说,只要需要ftp的服务,都是基于Linux,Linux中的ftp的服务是VSFtp(Very Security FTP)

1、FTP的安装

        yum install vsftpd

        systemctl status vsftpd

        systemctl enable vsftpd -->重启(reboot -h now)之后开启vsftpd

        systemctl start vsftpd -->启动vsftp

2、ftp的配置

[root@localhost vsftpd]# more bak_conf

anonymous_enable=YES  ##匿名登录

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

write_enable=YES ##文件是否可写

local_umask=022

dirmessage_enable=YES

xferlog_enable=YES

connect_from_port_20=YES

xferlog_std_format=YES

listen=NO

listen_ipv6=YES

pam_service_name=vsftpd

userlist_enable=YES

tcp_wrappers=YES

##以下配置是将用户锁定在宿主目录

chroot_local_user=YES

chroot_list_enable=YES

# (default follows)

##在vsftp的2.5之后如果打开chroot_list,这不具备写权限,需要通过以下命令打开写权限

allow_writeable_chroot=YES

chroot_list_file=/etc/vsftpd/chroot_list##在chroot_list中的用户不会锁定在宿主目录

3、匿名用户登录

匿名用户登录成功之后会默认访问/var/ftp 文件夹, 登录成功之后在window的命令提示符中可以通过一些ftp的命令来操作ftp

ftp 192.168.213.122 ##完成ftp 的登录操作,可以使用anonymous来匿名登录,没有密码

##登录成功之后使用dir可以查询ftp中的内容,使用!dir查询本地文件的内容

##使用get或者mget来下载一个文件,mget可以基于通配符的方式下载,get只能下载一个文件

mget hello* ##会获取所有的hello开头的文件

##使用put可以把文件上传到服务器

put jude.log ##上传jude.log到服务器

##使用bye退出ftp

bye

4、其他用户登录问题

为了安全性,不建议开启匿名用户登录,使用本地用户登录,首先要关闭匿名用户

anonymous_enable=NO

关闭用户之后,在/etc/vsftpd的文件夹中有两个非常重要的文件,ftpusers和user_list

ftpusers文件只要把用户写在里面,就一定不能登录

user_list:该文件中的用户,如果在配置文件里面设置了userlist_deny=NO表示只有该文件中的用户可以登录,如果设置为YES(默认情况)说明,该文件中的用户不能登录

此时只要是新建的任意的一个用户,都可以使用ftp,如果希望只有特殊的用户可以登录,那需要在vsftpd.conf中设置userlist_deny=NO,之后把需要登录的用户放到user_list中的,此时如果ftpusers中也有这个用户,也无法登陆。

验证的过程,首先验证user_list,如果user_list通过了,会让输入密码,之后会使用ftpusers来进行二次验证,如果两次都通过,就允许ftp登录。为了效率,建议在user_list中直接来隔离不同的用户。

上一篇下一篇

猜你喜欢

热点阅读