vsftp部署
  RUHeDsKHS0Ps 2023年11月02日 30 0


FTP Server

FTP(文件传输协议)全称是:Very Secure FTP Server。Vsftpd是linux类操作系统上运行的ftp服务器软件。

FTP端口

控制端口 21/tcp //客户端连接FTP服务器21端口
数据端口 20/tcp (主动模式) //下载,服务器20端口连接客户端

vsftp提供三种登陆方式

1.匿名登录
2.本地用户登录
3.虚拟用户登录

安装vsftpd服务

# yum -y install vsftpd
# systemctl start vsftpd && systemctl enable vsftpd
# touch /var/ftp/11.txt        //创建测试文件

1、匿名用户登录

[客户端]

# yum -y install ftp lftp wget      //客户端FTP工具
# ftp 服务器IP    //匿名用户名ftp   密码为空
ftp> ls
-rw-r--r--    1 0        0               0 Sep 13 19:04 11.txt
drwxr-xr-x    2 0        0               6 Jun 09  2021 pub      //ftp默认根目录/var/ftp/pub(默认只能下载,无法上传)

测试上传

ftp> put /etc/passwd ./passwd        //本地文件/etc/passwd  上传到当前目录下
> 550 Permission denied.(默认不允许)

测试下载

ftp> get 11.txt 22.txt      //下载ftp服务器上的文件11.txt    到本地当前目录中,并改名为22.txt
ftp> exit
# ls    //查看下载的文件22.txt

2、设置允许匿名用户上传

修改配置文件(如果不存在则增加)

# vi /etc//vsftpd/vsftpd.conf
write_enable=YES       //默认开启(禁止匿名用户登录 设置为NO即可)
anonymous_enable=YES     //默认开启
anon_other_write_enable=YES    
anon_mkdir_write_enable=YES    
anon_upload_enable=YES

创建匿名用户的上传目录,并设置权限,属主,属组

# mkdir -p /var/ftp/upload  
# chmod 755 /var/ftp/upload
# chown ftp. /var/ftp/upload

重启服务

# systemctl restart vsftpd

测试上传(客户端)

# ftp 服务器IP    //匿名用户名ftp   密码为空
ftp> ls
-rw-r--r--    1 0        0               0 Sep 13 19:04 11.txt
drwxr-xr-x    2 0        0               6 Jun 09  2021 pub
drwxr-xr-x    2 14       50             20 Sep 13 19:31 upload
ftp> cd upload 
ftp> put /etc/passwd passwd     //本地文件/etc/passwd  上传到ftp服务器中
ftp> ls
-rw-------    1 14       50           2101 Sep 13 19:31 passwd

3、本地用户登录

创建本地用户

# mkdir -p /opt/ftp      //创建ftp目录
# useradd -d /opt/ftp/ftp_user1 ftp_user1   //创建本地用户,指定根目录
# echo 123456 |passwd --stdin ftp_user1    //设置密码
# touch /opt/ftp/ftp_user1 ftp_user1/11.txt    //创建测试文件

修改配置文件(如果不存在则增加)

# vi /etc/vsftpd/vsftpd.conf
local_enable=YES               //是否允许本地用户登录
chroot_list_enable=YES        //是否锁定根目录 
chroot_list_file=/etc/vsftpd/chroot_list    //指定用户列表文件(列表文件中的用户被锁定根目录)
allow_writeable_chroot=YES     //允许用户写入锁定根目录

创建锁定根目录的用户列表文件chroot_list

# touch /etc/vsftpd/chroot_list
# echo ftp_user1 >> /etc/vsftpd/chroot_list       //被锁定根目录的用户名,一个用户名一行

重启服务

# systemctl restart vsftpd

客户端登录

# yum -y install ftp lftp wget      //客户端FTP工具
# ftp 服务器IP    //输入用户名ftp_user1  密码123456
ftp> ls
-rw-r--r--    1 0        0               0 Sep 13 20:32 11.txt

测试上传

ftp> put /etc/passwd passwd      //本地文件/etc/passwd  上传到ftp服务器中
ftp> ls
-rw-r--r--    1 0        0               0 Sep 13 20:32 11.txt
-rw-------    1 14       50           2101 Sep 13 19:31 passwd

测试下载

ftp> get 11.txt 22.txt      //下载ftp服务器上的文件11.txt    到本地当前目录中,并改名为22.txt
ftp> exit
# ls    //查看下载的文件22.txt

测试切换锁定根目录的上级目录

ftp> cd ..
250 Directory successfully changed.
ftp> ls           //目录未切换
-rw-r--r--    1 0        0               0 Sep 13 20:32 11.txt
-rw-------    1 14       50           2101 Sep 13 19:31 passwd


【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月08日 0

暂无评论

推荐阅读