`
lannerK
  • 浏览: 51273 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Linux 使用 vsftpd 限制登陆用户访问和修改某个文件夹 (FTP)

阅读更多

开发中有个需求,需要在服务器开通一个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 一定要存在

1
6
分享到:
评论

相关推荐

    linux ftp双用户配置脚本

    ftp脚本,基于linux的vsftp配置,实现一键运行不同用户访问不同目录。两个用户ftp1和ftp2,密码是123456,ftp1访问/home/vsftpd,ftp2访问/opt/ftp2

    linux ftp目录迁移

    在Linux系统中进行FTP目录迁移是一项常见的管理任务,尤其是在需要更改FTP用户访问的主要存储位置时。下面将详细介绍如何在Linux环境下完成FTP目录迁移,并确保迁移后服务正常运行。 #### 一、理解FTP配置文件 1. ...

    Linux FTP服务搭建

    local_enable=NO 关闭本地用户访问 write_enable=NO 关闭本地用户的写权限 anon_upload_enable=NO 关闭匿名用户的上传权限 anon_mkdir_write_enable=NO 关闭匿名用户创建目录和写入文件的权限 anon_other_write_...

    linux ftp上传文件

    * 访问控制:使用访问控制列表(ACL)来控制用户对文件和目录的访问权限。 * 加密传输:使用 SSL/TLS 加密来保护数据传输。 Vsftpd 是一个功能强大且灵活的 FTP 服务器软件,它提供了多种配置选项和安全机制来满足...

    Linux下FTP创建

    Linux下FTP创建 Linux 系统下 FTP 账户及权限的添加方法是非常重要的,以下是相关知识点: ...创建 FTP 用户和指定目录、设置 FTP 用户权限、启动 vsftpd 服务、测试 FTP 登录和 SELinux 配置是非常重要的步骤。

    阿里云ECS CentOS7 Linux配置FTP-vsftpd.docx

    ### 阿里云ECS CentOS7 Linux配置FTP-vsftpd #### 概述 本文档将指导您如何在阿里云ECS上基于CentOS 7操作系统配置一个可用的FTP服务器(vsftpd)。该教程适用于希望在阿里云ECS上搭建FTP服务器以实现文件传输功能...

    使用pam_mysql和VSFTPD实现ftp虚拟账号

    - **支持chroot**: 通过chroot技术将用户锁定在其主目录内,限制了用户访问系统其他部分的能力。 - **账号映射机制**: 匿名账号和虚拟账号可以映射到本地账号上,这样就可以利用系统的权限管理功能。 - **低权限子...

    linux ftp服务器上传文件夹时提示550错误问题解决方法.doc

    Linux FTP 服务器上传文件夹时提示 550 错误问题解决方法是指在 Linux 操作系统中,使用 FTP 服务器上传文件夹时,遇到 550 错误的问题解决方法。该问题是由于 Linux 系统不支持中文编码所致,当有中文出现时,...

    嵌入式FTP服务器(vsftpd)移植手册(详细).pdf

    - 复制`xinetd.d`文件夹至文件系统`/etc`目录,并修改其中的`vsftpd`文件,将`disable=yes`。 - 杀死已存在的`vsftpd`进程后再重新启动服务。 ##### 6. 使用FTP客户端 - **安装FTP客户端**: 如`freshftp-v5.22`。...

    ubuntu server 安装vsftpd FTP服务器linux服务器应用 电脑资料.doc.docx

    Ubuntu Server 安装 VSFTPD FTP 服务器 Linux 服务器应用电脑资料 安装 VSFTPD FTP 服务器是 Linux 服务器应用电脑资料中的一部分,本文将详细介绍如何在 Ubuntu Server 10.4 上安装 VSFTPD FTP 服务器。 一、安装...

    vsftpd安装步骤教程

    3. 赋予权限:使用命令 `sudo chown –R ftpuser.ftpuser /ftpfile/` 将文件夹 `/ftpfile/` 的所有权赋予用户 `ftpuser`。 启动 Vsftpd 服务器 1. 检查 Vsftpd 服务器状态:使用命令 `systemctl status vsftpd....

    Linux FTP Server Setup

    本章将向您展示如何使用 Fedora 中默认包含的 Very Secure FTP Daemon (VSFTPD) 包将您的 Linux 服务器转换为 FTP 服务器。 #### FTP 通道概述 FTP 依赖一对 TCP 端口来完成任务。它使用两个连接通道: 1. **FTP ...

    Linux 访问windows(win8.1)ftp

    - 在“授权”步骤中,可以授权特定用户或所有用户访问该FTP站点。 - 设置权限,根据需要选择读取、写入等权限。 - 测试FTP站点是否可以正常访问。 3. **本地测试 FTP 服务器**: - 打开浏览器,在地址栏中输入...

    详解vsftpd.conf

    Dirmessage_enable=YES 这一行配置允许 Vsftpd 服务器显示目录信息,当远程用户访问某个目录时,Vsftpd 服务器将显示该目录的信息。 日志记录 Xferlog_enable=YES 这一行配置允许 Vsftpd 服务器记录上传和下载的...

    linux Ftp服务配置说明

    在Linux系统中,FTP服务通常由VSFTPD(Very Secure FTP Daemon)来提供支持,它是一款功能强大且安全的FTP服务器程序。 #### 二、FTP服务的安装与配置 ##### 1. 安装VSFTPD - **下载并安装VSFTPD** - 下载VSFTPD的...

    Linux系统常见服务搭建(FTP、NFS、Samba)

    1. 共享文件夹:使用 Samba 服务共享文件夹,允许 Windows 系统上的用户访问 Linux 系统上的文件。 2. 共享打印机:使用 Samba 服务共享打印机,允许 Windows 系统上的用户访问 Linux 系统上的打印机。 本文对 ...

    ftpLinux

    ### FTPLinux:在Linux下配置FTP服务器 #### FTP协议概述 FTP(文件传输协议)作为TCP/IP协议族的一部分,主要用于在网络环境中实现文件的传输。它工作于应用层,在传输层使用的是TCP而非UDP,这意味着在客户端与...

    linux下ftp的详细配置

    Linux下的FTP服务器配置主要涉及到如何使用vsftpd(Very Secure FTP Daemon)软件来搭建和管理FTP服务。这个过程包括三个部分:基于匿名用户、基于系统用户以及基于虚拟用户FTP服务器的配置。 首先,我们需要了解...

Global site tag (gtag.js) - Google Analytics