Centos安装vsftpd:centos配置vsftpd,ftp报200和227错误

news/2024/6/19 6:10:48 标签: centos

一、centos下载安装vsftpd(root权限)

1、下载安装

yum -y install vsftpd

2、vsftpd的配置文件

 /etc/vsftpd.conf

3、备份原来的配置文件

sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.backup

4、修改配置文件如下:vi /etc/vsftpd.conf

write_enable=YES
local_umask=000
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list   #允许的用户,一行一个用户名
 

#解析
write_enable   全局设置,允许ftp用户写
local_umask    设置对文件的权限,000-》 777  022--》755
chroot_local_user  允许本地用户
chroot_list_enable=YES 
chroot_list_file=/etc/vsftpd/chroot_list  #将用户写到这个文件中,才能

5、创建一个ftpuser,用于登录ftp服务器

#创建ftpuser
 
useradd -d /home/ftp  -s /bin/bash ftpuser

 
-d  指定该用户的家目录,如果没有指定,就会在/home下生成一个ftpuser目录
-s  指定进来后,启动
 
#指定目录后,需要在/home中手动创建一个ftp目录
 
#设置密码
sudo passwd ftpuser

6、给ftpuser新建家目录,ftp

sudo mkdir /home/ftp
sudo chown ftpuser:ftpuser /home/ftp  #设置/home/ftp的所属组和所属用户

7、到ftp下创建一个upload目录

mkdir /home/ftp/upload
 
#设置所属组和所属用户
sudo chown ftpuser:ftpuser /home/ftp/upload
 
#设置权限,可读写,1执行,2写,4读
sudo chmod -R 777 upload 
 
#这样其他用户就可以将数据上传到这里了

8、创建vsftpd.chroot_list文件并添加运行使用ftp的用户名

 vi /etc/vsftpd/chroot_list
 
 #一行一个用户名
 ftpuser

9、启动vsftpd

#启动
sudo service vsftpd start
#重启
sudo service vsftpd restart
#停止
sudo service vsftpd stop

10、安装iptables和iptables-services

CentOS7默认的防火墙不是iptables,而是firewalle.

安装iptable iptable-service
#先检查是否安装了iptables
service iptables status
#安装iptables
yum install -y iptables
#升级iptables
yum update iptables 
#安装iptables-services
yum install iptables-services

11、关闭防火墙

#停止firewalld服务
systemctl stop firewalld
#禁用firewalld服务
systemctl mask firewalld

12、开放21端口,ftp协议的默认端口

#查看iptables现有规则
iptables -L -n
#先允许所有,不然有可能会杯具
iptables -P INPUT ACCEPT
#清空所有默认规则
iptables -F
#清空所有自定义规则
iptables -X
#所有计数器归0
iptables -Z
#允许来自于lo接口的数据包(本地访问)
iptables -A INPUT -i lo -j ACCEPT
#开放22端口
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
#开放21端口(FTP)
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
 
service iptables save
开启iptables服务 

13、启动iptables-services

#注册iptables服务(开机启动)
systemctl enable iptables.service
#开启服务
systemctl start iptables.service
#查看状态
systemctl status iptables.service

13、连接

到windows电脑的地址栏输入: ftp://ip地址

右键空白处,选择登录:

输入ftpuser,和设置的密码,就可以登录了。

登录成功,就可以进入到ftpuser的家目录了。

二、报错解决

1、在地址栏输入地址后,报ftp200和227错误

解决方法:

在windows下操作:
1、右键网络,打开“网络和Internet设置”
2、网络和共享中心
3、Internet选项
4、高级
5、取消掉 “使用被动FTP(用于防火墙和DSL调制解调器的兼容)”
6、最后,点击应用和确定


http://www.niftyadmin.cn/n/5283015.html

相关文章

【iOS】UICollectionView

文章目录 前言一、实现简单九宫格布局二、UICollectionView中的常用方法和属性1.UICollectionViewFlowLayout相关属性2.UICollectionView相关属性 三、协议和代理方法:四、九宫格式的布局进行升级五、实现瀑布流布局实现思路实现原理代码调用顺序实现步骤实现效果 总…

ospf学习纪要

1、为避免区域(area0,area1等)间的路由形成环路,非骨干区域之间不允许直接相互发布区域间的路由。因此,所有的ABR(Area Border Router,区域边界路由器)都至少有一个借口属于Area0,所以Area0始终包含所有的A…

SmoothQuant+:可以用于大语言模型的 4-bit 量化算法

‍‍‍ ‍LLMs 在各种任务上展现出令人惊叹的能力,但是庞大的模型尺寸和对算力的巨大需求对模型的部署也提出了挑战。目前 4-bit 的 PTQ 权重量化在 LLMs 上已经取得了一些成绩,相对 FP16 内存占用减少近 75%,但是在精度上仍有较大的损失。我…

SQLITE如何同时查询出第一条和最后一条两条记录

一个时间记录表,需要同时得到整个表或一段时间内第一条和最后一条两条记录,按如下方法会提示错误:ORDER BY clause should come after UNION not before select * from sdayXX order by op_date asc limit 1 union select * from sday…

SpringBoot集成opencc4j实现繁体中文转为简体中文

背景 繁体中文转为简体中文的需求非常常见,特别是在中文语境下的文本处理和翻译应用中。有很多现成的工具和库可以实现这个功能,比如 OpenCC 、 HanLP 等。从网上下载的 MySQL 版诗词数据库中的诗词数据都是繁体字,这里使用 SpringBoot 集成…

Flink面试题与详解

Flink面试题目合集 从牛客网上找到的一些面试题,如果还有其他的,欢迎大家补充。 1、能否详细描述下Apache Flink的架构组件和其工作原理?请介绍一下Flink on YARN部署模式的工作原理。 官网图: 由两个部分组成,JM&am…

【Redis】缓存预热

目录 常见缓存Redis客户端设计缓存key缓存预热 常见缓存 ● Redis(分布式缓存) ● memcached(分布式) ● Etcd(云原生架构的一个分布式存储,存储配置,扩容能力) ● ehcache&#xf…

九、W5100S/W5500+RP2040之MicroPython开发<HTTPOneNET示例>

文章目录 1. 前言2. 平台操作流程2.1 创建设备2.2 创建数据流模板 3. WIZnet以太网芯片4. 示例讲解以及使用4.1 程序流程图4.2 测试准备4.3 连接方式4.4 相关代码4.5 烧录验证 5. 注意事项6. 相关链接 1. 前言 在这个智能硬件和物联网时代,MicroPython和树莓派PICO正…