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

相关推荐
SundayBear5 分钟前
Linux驱动开发指南
linux·驱动开发·嵌入式
大聪明-PLUS6 分钟前
使用 GitLab CI/CD 为 Linux 构建 RPM 包(二)
linux·嵌入式·arm·smarc
天***889613 分钟前
驱动精灵、驱动人生、NVIDIA专业显卡驱动、360驱动大师、联想乐驱动,电脑驱动修复工具大全
网络·电脑·负载均衡
AORO202515 分钟前
三防平板三防是指哪三防?适合应用在什么场景?
服务器·网络·智能手机·电脑·1024程序员节
yugi98783825 分钟前
C语言多进程创建和回收
linux·c语言·算法
鸠摩智首席音效师31 分钟前
如何在 Bash 命令中执行命令 (嵌套命令) ?
linux·bash
Bella的成长园地34 分钟前
Linux 中sudo bash -i 和 su root 有什么区别?
linux·运维·bash
王道长服务器 | 亚马逊云35 分钟前
AWS + SeyouCMS:海外资源站的高性能部署实战
服务器·网络·数据库·云计算·软件构建·aws
泷羽Sec-静安40 分钟前
Less-7 GET-Dump into outfile-String
android·前端·网络·sql·安全·web安全
matrixlzp2 小时前
Jenkins 实战3:Jenkins + habor + docker 自动化部署
运维·jenkins