FTP部署应用

        FTP(文件传输协议)是一种用于在网络上进行文件传输的标准协议。它可以在互联网上将文件从一台计算机传输到另一台计算机,通常用于上传和下载网站内容、软件更新、备份数据等。

阿里云ECS部署

yum install -y vsftpd
systemctl enable vsftpd.service
systemctl start vsftpd.service
systemctl restart vsftpd.service #每次修改配置生效需要重启服务

匿名登陆

修改ftp配置

vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES   #允许匿名登录
no_anon_password=YES   #免密码
anon_umask=022—匿名用户登录创建默认权限-22
anon_upload_enable=YES----匿名用户允许上传
anon_mkdir_write_enable=YES----匿名用户允许修改文件文件
anon_other_write_enable=YES----匿名用户其他文件权限
userlist_enable=YES #启用用户列表
userlist_deny=NO    #在用户列表中的用户可以登陆ftp

添加匿名用户登陆权限

vim /etc/vsftpd/user_list #在配置文件最后加入匿名用户
anonymous

登陆测试

 

本地用户登陆

创建用户

[root@lxf-test-vpn ~]#groupadd ftp  
[root@lxf-test-vpn ~]#useradd -g ftp -s /sbin/nologin ftpuser 
[root@lxf-test-vpn ~]#passwd ftpuser  
运行命令后,根据命令行提示设置 ftpuser用户的密码,回显信息类似如下所示。

[root@lxf-test-vpn ~]# useradd -g ftp -s /sbin/nologin ftpuser 
[root@lxf-test-vpn ~]# passwd ftpuser 
Changing password for user ftpuser. 
New password:  
Retype new password:  
passwd: all authentication tokens updated successfully.  
说明:如果已创建用户,但是用户不在创建的用户组 ftp中,运行命令 usermod -g ftp 用户名 移动用户到用户组中。
[root@lxf-test-vpn ~]#chown root:ftp /home/ftpuser 
[root@lxf-test-vpn ~]#chmod 755 /home/ftpuser  
[root@lxf-test-vpn ~]#mkdir /home/ftpuser/test  
[root@lxf-test-vpn ~]#chown -R ftpuser:ftp /home/ftpuser/test 
[root@lxf-test-vpn ~]#chmod -R 755 /home/ftpuser/test 

vsftpd默认会检查用户的shell,如果用户的shell在/etc/shells没有记录,则无法登陆ftp

解决办法:在/etc/shells文件里面添加用户的shell(解释器)

[root@lxf-test-vpn vsftpd]# cat /etc/shells
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash
/sbin/nologin

修改配置

local_enable=YES#控制是否允许本地用户登入,YES为允许本地用户登入,NO为不允许。默认值为YES。
local_root=/home/ftpuser#当本地用户登入时,将被更换到定义的目录下。默认值为各用户的家目录。
write_enable=YES/NO#是否允许登陆用户有写权限。属于全局设置,默认值为YES。
local_umask=022#地用户新增档案时的umask值。默认值为022
userlist_enable=YES #启用用户列表
userlist_deny=NO    #在用户列表中的用户可以登陆ftp

添加ftpuser到user_list echo "ftpuser" > /etc/ftpuser/user_list

登陆测试

其他配置

可以看看这个大佬写的配置文件解释

https://www.cnblogs.com/chenjianhong/p/4144303.html

主动模式

默认模式

connect_from_port_20=YES #配置文件中默认开启

主动模式(PORT):命令连接由客户端发起,数据连接由服务端发起

命令连接:客户端通过任意大于等于1024(N端口)的端口连接到服务器的21端口,服务器响应建立连接通道

当客户端需要数据的时候,客户端通过此通道发送PORT命令发送本地ip端口信息,服务端发起连接

被动模式

被动模式(PASV):命令连接与数据连接都由客户端发起,两个连接的端口同时发起

命令连接:客户端通过任意大于等于1024(N端口)的端口连接到服务器的21端口,服务器响应建立连接通道。客户端提交PASV命令,服务器会开启一个任意的非特权端口,并发送PASV 命令给客户端。

数据连接:客户端接受PASV命令,然后客户端通过任意大于等于1024(N+1端口)的端口连接到服务器任意大于等于1024的端口,与服务器建立连接来传输数据

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

期待未来的男孩

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值