centos下sftp连接配置
发布日期:2021-05-18 00:50:42 浏览次数:11 分类:精选文章

本文共 1344 字,大约阅读时间需要 4 分钟。

从技术角度来分析,以下是从零开始搭建一个安全的SFTP服务器并限制用户活动的完整配置步骤:

1. 安装必要软件包

首先,确保系统已经安装了OpenSSH服务器版本4.8p1及以上。CentOS 6自带的OpenSSH版本为5.3p1,符合要求。

sudo yum install openssh

2. 创建SFTP组并添加用户

创建一个名为sftp的组,并添加一个测试用户testuser,并将其归属到sftp组。

sudo groupadd sftpsudo useradd -g sftp -s /bin/false testusersudo passwd testuser

3. 创建用户的SFTP目录

创建用户的SFTP目录并设置权限。

sudo mkdir -p /opt/sftp/testusersudo chown root:sftp /opt/sftp/testusersudo chmod 755 /opt/sftp/testuser

创建用户上传文件的目录,并设置适当的权限。

sudo mkdir -p /opt/sftp/testuser/uploadsudo chown testuser:sftp /opt/sftp/testuser/uploadsudo chmod 755 /opt/sftp/testuser/upload

4. 配置SSH服务器配置文件

编辑/etc/ssh/sshd_config文件,添加以下内容:

# 将以下行注释掉#Subsystem       sftp       /usr/libexec/openssh/sftp-serverSubsystem       sftp       internal-sftpMatch Group      sftpChrootDirectory  /opt/sftp/%uForceCommand    internal-sftpAllowTcpForwarding noX11Forwarding   no

5. 启用SFTP服务

确保SFTP服务已启用,并重启SSH服务器。

sudo systemctl enable sshdsudo systemctl restart sshd

6. 测试SFTP连接

使用一个SFTP客户端(如FileZilla)连接到服务器,使用testuser账号和密码进行登录。

7. 验证权限和限制

登录后,你应该只能在/opt/sftp/testuser目录下活动,无法访问其他目录或文件。

注意事项

  • 权限设置:确保/opt/sftp/testuser目录及其上级目录的所有者为root,并且组权限为read, execute(755)。

  • 错误日志:如果在日志中看到类似"fatal: bad ownership or modes for chroot directory /opt/sftp/testuser"的错误,可能是由于目录权限设置不正确。

  • 文件上传:创建一个upload目录,允许用户上传文件到该目录。

  • 重启服务:每次修改配置后,记得重启SSH服务器。

  • 通过以上步骤,你已经成功搭建了一个安全的SFTP服务器,并限制了用户的活动范围。

    上一篇:如何使用 Spinnaker 和 Kubernetes 进行数据库变更发布?
    下一篇:Centos7下使用ELK(Elasticsearch + Logstash + Kibana)搭建日志集中分析平台

    发表评论

    最新留言

    初次前来,多多关照!
    [***.217.46.12]2025年04月16日 09时22分34秒