开发中有个需求,需要在服务器开通一个FTP账号给其他人用,让他们上传东西到我们的服务器。但是又不能让他们访问主机的其他目录,所以用到vsftpd这个东西。
我们的主机系统是RHEL 9 ,自带了 vsftpd,如果你的系统没有vsftpd,先自行安装一个,可以上网搜索如何安装。
设置步骤:
1.假设需要建立FTP登陆用户名为test。被限制路径为/home/test
2.linux建立用户 :
useradd -d /home/test test //增加用户test,并制定test用户的主目录为/home/test
passwd test //为test设置密码
3.权限设置
a.关闭用户test telnet权限,使其不能通过ssh登陆,只能通过vsftpd的调用登陆
usermod -s /sbin/nologin test
b.vsftpd调用系统验证用户登录时的bin目录
usermod -s /bin/bash test
c.usermod -d /home/test test 更改用户test的主目录为/home/test
4.限制用户只能访问/home/test,不能访问其他路径
修改/etc/vsftpd/vsftpd.conf如下:
chroot_list_enable=YES //限制访问自身目录
# (default follows)
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
保存退出
5.修改 /etc/vsftpd/vsftpd.chroot_list (将受限制的用户添加进去,每个用户名一行)
在第一行加上 test
6 重启vsFTPd服务器
/etc/init.d/vsftpd restart 或者 service vsftpd restart
7.如果需要允许用户修改密码,但是又没有telnet登录系统的权限:
usermod -s /usr/bin/passwd test //用户telnet(SSH)后将直接进入改密界面
可能出现问题
1.vsftp 500 OOPS: cannot change directory
在终端输入命令:
setsebool -P ftpd_disable_trans 1
service vsftpd restart
这样每次重启机器都可以了·
原因就在SELinux。
2.连接时出现
530 Login incorrect
这种情况多数是配置用户的问题,网上的解决方法不一
如果出现这种情况,再执行一次
usermod -s /bin/bash test 试试
目录 /bin/bash 一定要存在
相关推荐
ftp脚本,基于linux的vsftp配置,实现一键运行不同用户访问不同目录。两个用户ftp1和ftp2,密码是123456,ftp1访问/home/vsftpd,ftp2访问/opt/ftp2
在Linux系统中进行FTP目录迁移是一项常见的管理任务,尤其是在需要更改FTP用户访问的主要存储位置时。下面将详细介绍如何在Linux环境下完成FTP目录迁移,并确保迁移后服务正常运行。 #### 一、理解FTP配置文件 1. ...
local_enable=NO 关闭本地用户访问 write_enable=NO 关闭本地用户的写权限 anon_upload_enable=NO 关闭匿名用户的上传权限 anon_mkdir_write_enable=NO 关闭匿名用户创建目录和写入文件的权限 anon_other_write_...
* 访问控制:使用访问控制列表(ACL)来控制用户对文件和目录的访问权限。 * 加密传输:使用 SSL/TLS 加密来保护数据传输。 Vsftpd 是一个功能强大且灵活的 FTP 服务器软件,它提供了多种配置选项和安全机制来满足...
Linux下FTP创建 Linux 系统下 FTP 账户及权限的添加方法是非常重要的,以下是相关知识点: ...创建 FTP 用户和指定目录、设置 FTP 用户权限、启动 vsftpd 服务、测试 FTP 登录和 SELinux 配置是非常重要的步骤。
### 阿里云ECS CentOS7 Linux配置FTP-vsftpd #### 概述 本文档将指导您如何在阿里云ECS上基于CentOS 7操作系统配置一个可用的FTP服务器(vsftpd)。该教程适用于希望在阿里云ECS上搭建FTP服务器以实现文件传输功能...
- **支持chroot**: 通过chroot技术将用户锁定在其主目录内,限制了用户访问系统其他部分的能力。 - **账号映射机制**: 匿名账号和虚拟账号可以映射到本地账号上,这样就可以利用系统的权限管理功能。 - **低权限子...
Linux FTP 服务器上传文件夹时提示 550 错误问题解决方法是指在 Linux 操作系统中,使用 FTP 服务器上传文件夹时,遇到 550 错误的问题解决方法。该问题是由于 Linux 系统不支持中文编码所致,当有中文出现时,...
- 复制`xinetd.d`文件夹至文件系统`/etc`目录,并修改其中的`vsftpd`文件,将`disable=yes`。 - 杀死已存在的`vsftpd`进程后再重新启动服务。 ##### 6. 使用FTP客户端 - **安装FTP客户端**: 如`freshftp-v5.22`。...
Ubuntu Server 安装 VSFTPD FTP 服务器 Linux 服务器应用电脑资料 安装 VSFTPD FTP 服务器是 Linux 服务器应用电脑资料中的一部分,本文将详细介绍如何在 Ubuntu Server 10.4 上安装 VSFTPD FTP 服务器。 一、安装...
3. 赋予权限:使用命令 `sudo chown –R ftpuser.ftpuser /ftpfile/` 将文件夹 `/ftpfile/` 的所有权赋予用户 `ftpuser`。 启动 Vsftpd 服务器 1. 检查 Vsftpd 服务器状态:使用命令 `systemctl status vsftpd....
本章将向您展示如何使用 Fedora 中默认包含的 Very Secure FTP Daemon (VSFTPD) 包将您的 Linux 服务器转换为 FTP 服务器。 #### FTP 通道概述 FTP 依赖一对 TCP 端口来完成任务。它使用两个连接通道: 1. **FTP ...
- 在“授权”步骤中,可以授权特定用户或所有用户访问该FTP站点。 - 设置权限,根据需要选择读取、写入等权限。 - 测试FTP站点是否可以正常访问。 3. **本地测试 FTP 服务器**: - 打开浏览器,在地址栏中输入...
Dirmessage_enable=YES 这一行配置允许 Vsftpd 服务器显示目录信息,当远程用户访问某个目录时,Vsftpd 服务器将显示该目录的信息。 日志记录 Xferlog_enable=YES 这一行配置允许 Vsftpd 服务器记录上传和下载的...
在Linux系统中,FTP服务通常由VSFTPD(Very Secure FTP Daemon)来提供支持,它是一款功能强大且安全的FTP服务器程序。 #### 二、FTP服务的安装与配置 ##### 1. 安装VSFTPD - **下载并安装VSFTPD** - 下载VSFTPD的...
1. 共享文件夹:使用 Samba 服务共享文件夹,允许 Windows 系统上的用户访问 Linux 系统上的文件。 2. 共享打印机:使用 Samba 服务共享打印机,允许 Windows 系统上的用户访问 Linux 系统上的打印机。 本文对 ...
### FTPLinux:在Linux下配置FTP服务器 #### FTP协议概述 FTP(文件传输协议)作为TCP/IP协议族的一部分,主要用于在网络环境中实现文件的传输。它工作于应用层,在传输层使用的是TCP而非UDP,这意味着在客户端与...
Linux下的FTP服务器配置主要涉及到如何使用vsftpd(Very Secure FTP Daemon)软件来搭建和管理FTP服务。这个过程包括三个部分:基于匿名用户、基于系统用户以及基于虚拟用户FTP服务器的配置。 首先,我们需要了解...