如何设置和配置Linux SFTP服务器?

SFTP服务器在Linux系统中通过SSH协议提供安全的文件传输服务,支持加密和身份验证。

Linux SFTP服务器配置与管理

前言

如何设置和配置Linux SFTP服务器?

SFTP(Secure File Transfer Protocol,安全文件传输协议)是一种通过加密的方式在两台计算机之间传输文件的安全协议,相较于传统的FTP服务,SFTP提供了更高级别的安全性和数据保护能力,本文将详细介绍如何在Linux系统上部署和管理SFTP服务器,以确保数据在传输过程中的安全性。

一、规划配置sftp全局数据存储目录

在配置SFTP之前,首先要规划并配置好SFTP数据存储目录,建议为SFTP数据存储目录单独挂载一个LVM逻辑卷,而不是直接挂载使用磁盘分区,使用逻辑卷的好处是方便后期动态调整SFTP数据存储目录空间大小,以及对数据进行快照等操作,以下是创建并挂载逻辑卷的步骤:

1、创建逻辑卷:lvcreate -L 10G -n sftpdata vgname

2、格式化逻辑卷:mkfs.ext4 /dev/vgname/sftpdata

3、挂载逻辑卷:mount /dev/vgname/sftpdata /sftpdata

4、修改/etc/fstab文件,使系统启动时自动挂载该逻辑卷:/dev/vgname/sftpdata /sftpdata ext4 defaults 0 0

注意:SFTP数据存储目录的所属用户和组要配置为root:root,权限配置为755。

二、配置sftp用户独立目录的sftp服务

1. 创建并配置sftp用户

创建用户组sftpuserssudo groupadd -f sftpusers

创建用户zhangsanlisi,并指定用户所属组为sftpusers

  sudo useradd -g sftpusers zhangsan
  sudo useradd -g sftpusers lisi

设置用户密码:

  sudo passwd zhangsan
  sudo passwd lisi

设置用户密码永不过期:

  sudo chage -m 0 -M 99999 -I -1 -E -1 zhangsan
  sudo chage -m 0 -M 99999 -I -1 -E -1 lisi

创建用户同名目录及数据存储目录data

  sudo mkdir -p /sftpdata/zhangsan/data
  sudo mkdir -p /sftpdata/lisi/data

将数据存储目录data的所属用户和用户组分别配置为zhangsan:sftpuserslisi:sftpusers

  sudo chown zhangsan:sftpusers /sftpdata/zhangsan/data/
  sudo chown lisi:sftpusers /sftpdata/lisi/data/

修改用户主目录为用户数据存储目录:

如何设置和配置Linux SFTP服务器?

  sudo usermod -d /sftpdata/zhangsan/ zhangsan
  sudo usermod -d /sftpdata/lisi/ lisi

2. 配置sshd_config文件

查看是否安装openssh-server服务:

  apt list | grep openssh-server
  dpkg --get-selections | grep openssh-server

编辑SFTP配置文件/etc/ssh/sshd_config

  sudo vim /etc/ssh/sshd_config

添加以下内容至配置文件末尾:

  Match User zhangsan
    ChrootDirectory /sftpdata/zhangsan
    ForceCommand internal-sftp
    PermitTunnel no
    AllowTcpForwarding no
  Match User lisi
    ChrootDirectory /sftpdata/lisi
    ForceCommand internal-sftp

三、配置sftp用户共享目录的sftp服务

1. 创建并配置sftp用户组

创建用户组sftpgroupsudo groupadd sftpgroup

创建用户zyfdsftp并指定用户所属组为sftpgroup

  sudo useradd -g sftpgroup -s /bin/false zyfdsftp

设置用户密码:sudo passwd zyfdsftp

2. 创建共享目录并配置权限

创建SFTP共享目录:sudo mkdir -p /data/sftpfile

将共享目录设置为用户主目录:sudo usermod -d /data/sftpfile zyfdsftp

创建上传子目录:sudo mkdir -p /data/sftpfile/upload

设置上传目录权限:

  sudo chown zyfdsftp:sftpgroup /data/sftpfile/upload
  sudo chmod 777 /data/sftpfile/upload

3. 配置sshd_config文件

编辑SFTP配置文件/etc/ssh/sshd_config

  sudo vim /etc/ssh/sshd_config

添加以下内容至配置文件末尾:

如何设置和配置Linux SFTP服务器?

  Subsystem sftp internal-sftp
  Match Group sftpgroup
    ChrootDirectory /data/sftpfile
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no

四、重启服务并测试

关闭Selinux策略:sudo setenforce 0

重启sshd服务:sudo systemctl restart sshd.service

在其他服务器上进行验证:sftp 用户名@IP地址

五、FAQs

Q1: SFTP服务器无法连接怎么办?

A1: 如果无法连接到SFTP服务器,请检查以下几点:

1、确保SSH服务已启动并正在运行:sudo systemctl status sshd

2、确保防火墙允许SSH流量:sudo ufw allow 22/tcp

3、确保Selinux已禁用或配置正确:sudo setenforce 0

4、确保配置文件路径正确且无语法错误:sudo vim /etc/ssh/sshd_config

5、确保目标目录存在且权限正确:sudo ls -ld /path/to/directory

6、确保网络连接正常,可以通过ping命令测试网络连通性:ping IP地址

Q2: 如何更改SFTP用户的根目录?

A2: 你可以通过修改sshd_config文件中的ChrootDirectory指令来更改SFTP用户的根目录,要将用户zhangsan的根目录更改为/new/path,可以在配置文件中添加或修改如下行:

Match User zhangsan
    ChrootDirectory /new/path
    ForceCommand internal-sftp
    PermitTunnel no
    AllowTcpForwarding no
```保存后重启sshd服务即可生效。

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1270337.html

本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。

(0)
未希新媒体运营
上一篇 2024-11-07 14:12
下一篇 2024-11-07 14:16

相关推荐

  • 如何配置浮动路由负载均衡?

    浮动路由负载均衡配置一、引言在现代网络环境中,高效的路由管理是确保网络性能和可靠性的关键,浮动路由和负载均衡是两种重要的路由技术,它们分别用于提高网络的冗余性和优化网络资源的使用,本文将详细介绍浮动路由和负载均衡的基本概念、配置步骤以及实际应用中的常见问题和解决方案,二、基本概念1. 浮动路由(Floating……

    2024-11-24
    06
  • 如何配置负载均衡器的TTL设置?

    负载均衡配置TTL背景介绍在现代网络架构中,负载均衡是确保服务器高效运行和提供可靠性的关键手段,通过将流量分配到多个服务器上,负载均衡能够提升系统的处理能力,并避免单点故障,DNS(Domain Name System)作为互联网的地址解析系统,在其中扮演了重要角色,DNS的TTL(Time to Live)设……

    2024-11-24
    05
  • 如何实现Tomcat服务器的负载均衡配置?

    Tomcat负载均衡配置在现代Web应用开发中,Tomcat作为一个流行的Java Servlet容器,被广泛应用于各种规模的项目中,随着用户数量的增加和请求量的激增,单台Tomcat服务器可能难以承受高并发的访问压力,为了解决这个问题,负载均衡技术应运而生,本文将详细介绍如何通过Tomcat实现负载均衡配置……

    2024-11-24
    06
  • 如何配置负载均衡以实现SSL重定向?

    负载均衡配置SSL重定向实现HTTP到HTTPS安全跳转1、负载均衡概述- 定义与作用- 常见类型- 工作原理2、SSL证书基础- SSL协议简介- SSL证书类型- 获取与安装SSL证书3、负载均衡器选择- 硬件负载均衡器- 软件负载均衡器- 云服务负载均衡器4、配置步骤详解- 创建负载均衡实例- 配置HTT……

    2024-11-23
    011

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

产品购买 QQ咨询 微信咨询 SEO优化
分享本页
返回顶部
云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购 >>点击进入