【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没有下载权限,可以写入

相关推荐
小笨猪-29 分钟前
RabbitMQ运维
java·运维·redis·分布式·rabbitmq·java-rabbitmq
XY.散人32 分钟前
初识Linux · 信号保存
运维·服务器
TsengOnce33 分钟前
Docker安装稳定版本nginx-1.26.2
linux·nginx·docker
Raymond运维36 分钟前
Rocky、Almalinux、CentOS、Ubuntu和Debian系统初始化脚本v9版
linux·运维·ubuntu·centos·debian·rocky·almalinux
荣世蓥1 小时前
6. ARM_ARM指令寻址
linux·运维·arm开发
@daviiid2 小时前
关于adb shell登录开发板后terminal显示不完整
linux·adb
LuckyLay2 小时前
Ubuntu安装配置MySQL(远程登录)
linux·mysql·ubuntu·远程登录
sakabu2 小时前
Linux应用项目之量产工具(三)——文字系统
linux·学习·freetype·量产工具·linux项目
π大星星️2 小时前
linux笔记(防火墙)
linux·网络·笔记