CentOS 配置FTP(开启VSFTPD服务)
网上已经有很多关于VSFTPD的配置,但有两个通病,要么就是原理介绍太多,要么就是不完整,操作下来又要查询多篇文章才能用。
我这里不讲原理,只记录操作,尽可能通过复制下面的操作可以实现FTP读写功能。方便自己和他人。
CentOS7 vsFTPd版本:3.0.2
一、FTP安装和操作命令
[root@localhost etc]# yum -y install vsftpd //安装VSFTPD
[root@localhost etc]# systemctl status vsftpd //查看VSFTPD状态
[root@localhost etc]# systemctl start vsftpd //启动VSFTPD状态
[root@localhost etc]# firewall-cmd --permanent --zone=public --add-port=21/tcp //打开防火墙21端口
[root@localhost etc]# firewall-cmd --zone=public --add-port=4500-5000/tcp --permanen //被动模式需要的端口
[root@localhost etc]# firewall-cmd --reload //重新加载防火墙配置
[root@localhost etc]# firewall-cmd --list-all //查看防火墙已经开放的商口
[root@localhost etc]# netstat -ntlp | grep ftp //查看当前所有tcp端口 (显示含有ftp的项)
[root@localhost etc]# vim /etc/vsftpd/vsftpd.conf //修改vsftpd配置
[root@localhost etc]# vim /etc/vsftpd/user_list //修改禁止本地账户列表
[root@localhost etc]# vim /etc/vsftpd/ftpusers //修改禁止本地账户列表
通过上面最后两行命令,进入vim /etc/vsftpd/user_list 和/etc/vsftpd/ftpusers,分别将本地账户root注释掉,这样root账户才能使用,否则会报530错误。
二、配置vsftpd配置文件
通过命令:vim /etc/vsftpd/vsftpd.conf可以进入修改配置。
可以在末尾添加以下内容
#开启被动模式
pasv_enable=YES
pasv_min_port=4500
pasv_max_port=5000
tcp_wrappers=YESlisten_ipv6=YESpam_service_name=vsftpd#允许“禁止登陆名单”,名单文件为ftpusers与user_list
userlist_enable=YES#禁止匿名访问模式
anonymous_enable=NO#允许本地用户模式
local_enable=YES#设置本地用户模式进入的主目录位置
local_root=/#设置匿名模式进入的主目录位置
anon_root=/var#所有用户限定在其主目录内
chroot_local_user=YES
#配置会话时间
idle_session_timeout=1800
data_connection_timeout=120
allow_writeable_chroot=YES#设置可写入权限
write_enable=YES
三、修改SELinux 的状态
之前没改这个状态可以正常使用,但新的一次我试过,没有开启ftpd_full_access,新增文件或文件夹会报550错误,例如:550 Create directory operation failed.但删除没问题。
[root@campus /]# getsebool -a | grep ftp
ftpd_anon_write --> off
ftpd_connect_all_unreserved --> off
ftpd_connect_db --> off
ftpd_full_access --> off
ftpd_use_cifs --> off
ftpd_use_fusefs --> off
ftpd_use_nfs --> off
ftpd_use_passive_mode --> off
httpd_can_connect_ftp --> off
httpd_enable_ftp_server --> off
tftp_anon_write --> off
tftp_home_dir --> off
[root@campus /]# setsebool -P ftpd_full_access 1
[root@campus /]#
[root@campus /]#
[root@campus /]# getsebool -a | grep ftp
ftpd_anon_write --> off
ftpd_connect_all_unreserved --> off
ftpd_connect_db --> off
ftpd_full_access --> on
ftpd_use_cifs --> off
ftpd_use_fusefs --> off
ftpd_use_nfs --> off
ftpd_use_passive_mode --> off
httpd_can_connect_ftp --> off
httpd_enable_ftp_server --> off
tftp_anon_write --> off
tftp_home_dir --> off
[root@campus /]#
四、防火墙或路由器做映射和放开(对外网开放需要)
主要是做21端口的映射,具体这个就是因设备不同而不同操作,不做这一步,内网是能正常访问的了。
五、FTP连接和操作测试
通过以上操作,可以正常用root账户登录了。
PS C:\Users\jason> ftp
ftp>
ftp>
ftp> open
到 192.168.8.12
连接到 192.168.8.12。
220 (vsFTPd 3.0.2)
200 Always in UTF8 mode.
用户(192.168.8.12:(none)): root
331 Please specify the password.
密码:
230 Login successful.
ftp>
ftp>
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
bin
boot
dev
etc
home
lib
lib64
media
mnt
opt
proc
root
run
sbin
srv
sys
tmp
usr
var
226 Directory send OK.
ftp: 收到 107 字节,用时 0.00秒 53.50千字节/秒。
ftp> cd root
250 Directory successfully changed.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
anaconda-ks.cfg
index.html
initial-setup-ks.cfg
mysql-server
mysql80-community-release-el7-6.noarch.rpm
下载
公共
图片
文档
桌面
模板
视频
音乐
226 Directory send OK.
ftp: 收到 176 字节,用时 0.00秒 58.67千字节/秒。
ftp> mkdir test
257 "/root/test" created
ftp>
六、设置开机自启动
设置开机自启动使命
[root@campus ~]# systemctl enable vsftpd
Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.
[root@campus ~]#
后记:以上操作为完整的可以使用root账号登录的操作,暂时可以实现我的传输文件的需求。linux默认是不允许root账号登录FTP的,可能担心一些安全性问题。如果需要进一步,就是开启账户登录功能,后面有时间我再测试补充。
如果你按照我上面的方法,在开启过程中出现任何故障,欢迎留言或私信给我。
相关文章:
CentOS 配置FTP(开启VSFTPD服务)
网上已经有很多关于VSFTPD的配置,但有两个通病,要么就是原理介绍太多,要么就是不完整,操作下来又要查询多篇文章才能用。 我这里不讲原理,只记录操作,尽可能通过复制下面的操作可以实现FTP读写功能。方便自…...
Http的请求方法
Http的请求方法对应的数据传输能力把Http请求分为Url类请求和Body类请求 1.Url类请求包括但不限于GET、HEAD、OPTIONS、TRACE 等请求方法 2.Body类请求包括但不限于POST、PUSH、PATCH、DELETE 等请求方法。 3.原因:get请求没有请求体(好像也可以…...
Python字典-- 内附蓝桥题:统计数字
字典 ~~不定时更新🎃,上次更新:2023/02/28 🗡常用函数(方法) 1. dic.get(key) --> 判断字典 dic 是否有 key,有返回其对应的值,没有返回 None 举个栗子🌰 dic …...
文本处理工具
Grep工具的基本使用grep作用:grep是行过滤工具;用于根据关键字进行行过滤提示:通过alias命令设置grep别名,搜索参数时带颜色显示alias grepgrep colorauto 命令语法格式:grep [选项] 参数 文件名grep命令选项ÿ…...
C++STL详解(三)——vector的介绍和使用
文章目录vector的介绍vector的使用vector的定义方式vector的空间增长问题reserve和resizevector的迭代器使用begin 和endrbegin和rendinsert 和erasefind函数元素访问vector迭代器失效问题1:inserse插入扩容时空间销毁造成野指针问题2:erase删除或者inse…...
GEBCO海洋数据下载
一、数据集简介 GEBCO(General Bathymetric chart of the Oceans)旨在为世界海洋提供最权威的、可公开获取的测深数据集。 目前的网格化测深数据集,即GEBCO_2022网格,是一个全球海洋和陆地的地形模型,在15角秒间隔的…...
【C++容器】vector、map、hash_map、unordered_map四大容器的性能分析【2023.02.28】
摘要 vector是标准容器对数组的封装,是一段连续的线性的内存。map底层是二叉排序树。hash_map是C11之前的无序map,unordered_map底层是hash表,涉及桶算法。现对各个容器的查询与”插入“性能做对比分析,方便后期选择。 测试方案…...
ACM-蓝桥杯训练第一周
🚀write in front🚀 📝个人主页:认真写博客的夏目浅石.CSDN 🎁欢迎各位→点赞👍 收藏⭐️ 留言📝 📣系列专栏:ACM周训练题目合集.CSDN 💬总结:…...
python基础—字符串操作
(1)字符串: Python内置了一系列的数据类型,其中最主要的内置类型是数值类型、文本序列(字符串)类型、序列(列表、元组和range)类型、集合类型、映射(字典)类型…...
【Spring】通过JdbcTemplate实现CRUD操作
个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~ 通过JdbcTemplate实现 增删查改一、添加相关依…...
实战|掌握Linux内存监视:free命令详解与使用技巧
文章目录前言一. free命令介绍二. 语法格式及常用选项三. 参考案例3.1 查看free相关的信息3.2 以MB的形式显示内存的使用情况3.3 以总和的形式显示内存的使用情况3.4 周期性的查询内存的使用情况3.5 以更人性化的形式来查看内存的结果输出四. free在脚本中的应用总结前言 大家…...
嵌入式入门必看!调试工具安装——基于 AM64x核心板
本章节内容是为评估板串口安装USB转串口驱动程序。驱动适用于CH340、CH341等USB转串口芯片。 USB转串口驱动安装 适用安装环境:Windows 7 64bit、Windows 10 64bit。 本文测试板卡为创龙科技SOM-TL64x核心板,它是一款基于TI Sitara系列AM64x双核ARM Cortex-A53 + 单/四核Cort…...
JAVA开发(java类加载过程)
1、java语言的平台无关性。 因为java语言可以跑在java虚拟机上,所以只要能装java虚拟机的地方就能跑java程序。java语言以后缀名 .java为文件扩展名。通过java编译器javac编译成字节码文件.class 。java字节码文件通过java虚拟机解析运行。所以java语言可以说是编译…...
【vulhub漏洞复现】Thinkphp 2.x 任意代码执行
一、漏洞详情影响版本 thinkphp 2.x但是由于thinkphp 3.0版本在Lite模式下没有修复该漏洞,所以也存在该漏洞漏洞原因:e 和 /e模式匹配路由:e 配合函数preg_replace()使用, 可以把匹配来的字符串当作正则表达式执行; /e 可执行模式,…...
LeetCode 1145. 二叉树着色游戏 -- 简单搜索
二叉树着色游戏 提示 中等 199 相关企业 有两位极客玩家参与了一场「二叉树着色」的游戏。游戏中,给出二叉树的根节点 root,树上总共有 n 个节点,且 n 为奇数,其中每个节点上的值从 1 到 n 各不相同。 最开始时: 「一…...
HyperGBM的三种Early Stopping方式
本文作者:杨健,九章云极 DataCanvas 主任架构师 很多机器学习框架如都提供了Early Stopping策略,主要用来防止模型过拟合。和模型训练提前停止的目标不同,AutoML的Early Stopping策略更多考虑的是算力消耗和模型质量的平衡。 通…...
心系区域发展,高德用一体化出行服务平台“聚”力区域未来
交通,是城市的血脉。通过对人、资源、产业的连接,交通建设往往是城市和区域经济发展的前提。不过,在度过了“要想富,先修路”的初级建设阶段后,交通产业内部也出现了挑战,诸如城市秩序、发展成本、用户使用…...
AI画图_stable-diffusion-webui安装使用指南(1)
本文章适用于: 有一定学习能力和钻研能力,遇到问题能合理使用搜索引擎尝试解决问题的人想在windows系统中尝试使用AI作画工具stable-diffusion-webui进行绘画的人有一定的计算机基础(会魔法上网、知道 python和Git)和英文阅读能力的人显卡为…...
浅谈MySQL主从复制
目录 1.MySQL主从复制是什么 2.MySQL主从复制的意义 3.MySQL主从复制原理 4.数据同步一致性问题 5.实现方式 1.MySQL主从复制是什么 MySQL主从复制就是指数据可以从一台MySQL的主节点复制到一个或多个从节点。 MySQL默认采用异步复制方式,这样从节点不用一直访…...
docker-compose安装kafka和php简单测试
docker-compose.yml内容: version: 3.1 services: zookeeper: container_name: zookeeper image: zookeeper:3.6 ports: - 2181:2181 kafka: image: wurstmeister/kafka container_name: kafka depends_on: - zookeeper …...
别再只用Matplotlib画图了!用Python这3个库(SciPy, NumPy, Scikit-learn)给你的数据曲线做个‘美容’
Python数据平滑三剑客:用Savitzky-Golay、插值与滑动平均打造专业级图表 当你面对满是噪点的折线图时,是否想过这些锯齿状的波动正在掩盖数据的真实故事?就像摄影师不会直接发布未经修饰的RAW格式照片,数据科学家也需要掌握图表美…...
Mermaid Live Editor终极指南:3分钟掌握免费在线图表编辑神器
Mermaid Live Editor终极指南:3分钟掌握免费在线图表编辑神器 【免费下载链接】mermaid-live-editor Edit, preview and share mermaid charts/diagrams. New implementation of the live editor. 项目地址: https://gitcode.com/GitHub_Trending/me/mermaid-live…...
AI代码助手评测体系构建:从原理到实践的完整指南
1. 项目概述:AI代码助手评测,到底在测什么?最近在GitHub上看到一个挺有意思的项目,叫ameerkhan9394/ide-ai-benchmark。光看名字,你大概能猜到,这是一个给集成开发环境(IDE)里的AI助…...
企业团队如何利用Taotoken统一管理API密钥与下载用量报告
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 企业团队如何利用Taotoken统一管理API密钥与下载用量报告 在团队协作开发与使用大模型API的过程中,如何安全、高效地管…...
2026AI急救点合规生死线:GDPR+《人工智能医疗应用管理办法》双轨审计 checklist(仅限首批参会者获取)
更多请点击: https://intelliparadigm.com 第一章:2026AI急救点合规性定义与时代紧迫性 2026AI急救点(AI Emergency Point, AIEP)并非传统意义上的物理站点,而是由国家AI治理框架强制要求部署的、具备实时风险拦截、模…...
Ro_一键获取E盾验证后台
链接:https://pan.quark.cn/s/a876e818b593软件来源网络,安全性自测。需要自己查找辅助IP...
Redis模糊查询实战:从keys到scan的演进与避坑指南
1. Redis模糊查询的生死抉择:keys命令的血泪教训 那天凌晨三点,我被急促的电话铃声惊醒。线上订单系统突然卡死,监控大屏一片飘红。登录服务器后用redis-cli --latency检测,发现Redis响应时间高达2000ms!紧急排查后发现…...
终极指南:3步解锁碧蓝航线全皮肤功能的Perseus补丁配置
终极指南:3步解锁碧蓝航线全皮肤功能的Perseus补丁配置 【免费下载链接】Perseus Azur Lane scripts patcher. 项目地址: https://gitcode.com/gh_mirrors/pers/Perseus 还在为碧蓝航线中那些精美的限定皮肤无法使用而烦恼吗?Perseus原生库补丁为…...
通过API Key管理与审计日志功能加强企业级应用的安全管控
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 通过API Key管理与审计日志功能加强企业级应用的安全管控 应用场景类,企业级应用在集成大模型能力时,需严格…...
从卡顿到流畅:WaveTools如何让你的《鸣潮》体验脱胎换骨
从卡顿到流畅:WaveTools如何让你的《鸣潮》体验脱胎换骨 【免费下载链接】WaveTools 🧰鸣潮工具箱 项目地址: https://gitcode.com/gh_mirrors/wa/WaveTools 你是否曾经在《鸣潮》的激烈战斗中因为突然的卡顿而错失良机?是否觉得60帧的…...
