【Linux】FTP服务器配置

FTP服务器配置

一、实验环境:

一台安装了centos7的虚拟机(ftp服务器)、一台安装了windows系统/centos系统的机器(客户端),保持联通。本实验示例采用vmnet8的方式搭建拓扑。

二、实验配置步骤:

1、安装并开启ftp服务

#yum install --y vsftpd -----在线安装

#rpm --qa | grep vsftpd -----检测是否安装成功

#systemctl start vsftpd -----开启ftp服务器

#systemctl stop vsftpd -----停止ftp服务

#systemctl restart vsftpd -----重启ftp服务

vsftpd.conf文件备份

mv vsftpd.conf vsftpd.conf.bak

文件过滤掉注释并重新写入

cat vsftpd.conf.bak | grep -v '#' > vsftpd.conf

关闭防火墙 systemctl stop firewalld

关闭selinux: setenforce 0

或vi /etc/selinux/config enforcing=disabled

2、匿名用户访问ftp服务器

vi /etc/vsftpd/vsftpd.conf

ftp_username=ftp

no_anon_password=YES

anon_world_readable_only=YES

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=NO

测试:

systemctl restart vsftpd

ftp://服务器IP

更改用户权限(允许创建目录但权限不够,故更改权限)后则可以新建成功文件和文件夹,也可以上传下载,但不可以重命名和删除。

若将anon_other_write_enable=YES,则可以重命名和删除

3、本地用户访问ftp服务器

(1)基本配置,保证普通用户和root用户的正常登录

vi /etc/vsftpd/vsftpd.conf

anonymous_enable=NO

另:删除匿名用户的其它配置,否则会影响其他操作。6dd

systemctl restart vsftpd

①此时可已经可以使用本地的用户账号密码进行登录。
②如果使用root账号登录,需要删除ftpuser和user_list文件中的root账号;

vi /etc/vsftpd/ftpusers

vi /etc/vsftpd/user_list

(2)锁定用户家目录

useradd zhangsan -g ftp

useradd lisi -g ftp

passwd zhangsan

passwd anlisi

systemctl restart vsftpd

先恢复ftpuser和user_list文件中的root账号

vi /etc/vsftpd/vsftpd.conf

chroot_list_enable=YES 设置是否启用chroot_list_file配置项中指定的文件

chroot_local_user=YES 用于指定用户列表文件中的用户,是否允许切换到上级目录。

chroot_list_file=/etc/vsftpd/chroot_list

vi /etc/vsftpd/chroot_list

systemctl restart vsftpd

liyan不能切换目录,但zhangsan可以切换目录


(3)不同用户拥有不同权限

注意:userdel zhangsan,userdel lisi

useradd zhangsan -r -m -g ftp -d /var/ftp/zhangsan

useradd lisi -r -m -g ftp -d /var/ftp/lisi

删除锁定的用户家目录

添加一条命令:

vi /etc/vsftpd/vsftpd.conf

user_config_dir=/etc/vsftpd/userconfig

通过在mkdir /etc/vsftpd/userconfig 创建一个userconfig目录,在目录里面创建不同用户的设置文件,如:

cd /etc/vsftpd/userconfig

touch liyan zhangjie

(a)vi /etc/vsftpd/userconfig/zhangsan --用户zhangsan配置文件

或直接vi zhangsan

local_root=/var/ftp/zhangsan

write_enable=no ---没有写权限

(b) vi /etc/vsftpd/userconfig/lisi --用户lisi配置文件

或直接vi lisi

local_root=/var/ftp/lisi

download_enable=no ---没有下载权限

添加测试文件

重启服务systemctl restart vsftpd

测试

zhangsan没有写权限,有下载权限

lisi没有下载权限,可以写入

相关推荐
***似水流年***5 分钟前
Linux任务管理与守护进程
linux·运维·服务器
tmacfrank16 分钟前
Java 原生网络编程(BIO | NIO | Reactor 模式)
java·开发语言·网络
python算法(魔法师版)18 分钟前
.NET NativeAOT 指南
java·大数据·linux·jvm·.net
天天爱吃肉82181 小时前
车载以太网驱动智能化:域控架构设计与开发实践
java·运维·网络协议·微服务
正经教主1 小时前
【基础】Windows开发设置入门4:Windows、Python、Linux和Node.js包管理器的作用和区别(AI整理)
linux·windows·python·包管理器
Zfox_1 小时前
RPM 包制作备查 &SRPM 包编译
linux·rpm·srpm
Excuse_lighttime2 小时前
JVM 机制
java·linux·jvm
IP管家2 小时前
企业级IP代理解决方案:负载均衡与API接口集成实践
服务器·网络·数据库·网络协议·tcp/ip·容器·负载均衡
YOYO--小天2 小时前
4G和5G模块的使用
linux·嵌入式硬件·5g
愚润求学2 小时前
【Linux】进程间通信(一):认识管道
linux·运维·服务器·开发语言·c++·笔记