如何在 Rocky Linux 8 上设置 SFTP 服务器?

简介: 【4月更文挑战第19天】

Rocky Linux 8 是一个基于 Red Hat Enterprise Linux (RHEL) 源代码构建的企业级 Linux 发行版,提供了稳定和可靠的操作系统环境。在设置 SFTP 服务器之前,首先需要在你的服务器上安装 Rocky Linux 8。

安装 Rocky Linux 8

你可以从 Rocky Linux 官方网站https://rockylinux.org/download下载 Rocky Linux 8 的镜像文件。选择适合你硬件架构的版本,通常有 x86_64 和 ARM 架构可供选择。

一旦下载了镜像文件,你需要将其写入到安装媒体上,以便从中引导计算机并进行安装。你可以使用诸如 Rufus(Windows)、Etcher(Windows、macOS、Linux)或dd命令(Linux)等工具来创建安装媒体。

将安装媒体插入计算机并启动。在启动过程中,你需要进入计算机的启动菜单并选择从安装媒体引导。一旦引导成功,你将看到 Rocky Linux 8 的安装界面。

在安装界面上,按照指示选择适当的语言、时区和键盘布局。然后,点击“安装目标”并选择要安装 Rocky Linux 8 的目标磁盘。你还可以对磁盘进行分区和设置存储选项。

在安装过程中,你将被要求配置网络连接。确保你的网络设置正确,并且你可以访问互联网以便获取更新和安装软件包。此外,你还需要创建至少一个用户账户,并设置其密码。

安装过程完成后,重新启动计算机。在重新启动后,你将看到 Rocky Linux 8 登录界面。使用之前创建的用户账户登录系统。

为了确保系统安全性和稳定性,建议在安装完成后立即更新系统。在终端中运行以下命令:

sudo yum update

输入密码并确认更新过程。

安装和配置 OpenSSH 服务器

步骤 1:安装 OpenSSH 服务器

  1. 打开终端,并使用 root 或具有 sudo 权限的用户登录。
  2. 运行以下命令安装 OpenSSH 服务器:
sudo yum install openssh-server
  1. 安装过程中,你可能会被要求确认安装,输入 'y' 并按 Enter 键继续。

步骤 2:启动 OpenSSH 服务器

  1. 安装完成后,运行以下命令启动 OpenSSH 服务器:
sudo systemctl start sshd
  1. 若要确保 OpenSSH 服务器在系统启动时自动启动,请运行以下命令:
sudo systemctl enable sshd

步骤 3:验证 OpenSSH 服务器是否运行

  1. 运行以下命令验证 OpenSSH 服务器是否正在运行:
sudo systemctl status sshd
  1. 如果服务器正在运行,你将会看到类似以下内容的输出:
● sshd.service - OpenSSH server daemon
   Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2024-04-09 15:10:22 UTC; 6 days ago

如果你看到 Active: active (running),则表示 OpenSSH 服务器已成功启动。

步骤 4:配置防火墙

如果你的 Rocky Linux 8 上启用了防火墙(firewalld),你需要确保允许 SSH(默认端口 22)的流量通过。运行以下命令打开 SSH 端口:

sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload

至此,你已成功安装并配置了 OpenSSH 服务器。

配置和启用 SFTP 服务

步骤 1:编辑 SSH 配置文件

  1. 打开终端,并使用 root 或具有 sudo 权限的用户登录。
  2. 使用文本编辑器打开 SSH 配置文件 /etc/ssh/sshd_config,例如使用 nano 编辑器:
sudo nano /etc/ssh/sshd_config

步骤 2:配置 SFTP 子系统

在配置文件中找到或添加以下行,确保 SFTP 子系统被启用:

Subsystem sftp internal-sftp

步骤 3:配置 SFTP 根目录(可选)

你可以选择性地配置 SFTP 用户的根目录,限制他们的访问范围。在配置文件中添加以下行,并将 /path/to/directory 替换为你想要设置的 SFTP 根目录:

Match Group sftpusers
    ChrootDirectory /path/to/directory
    ForceCommand internal-sftp
    AllowTcpForwarding no

步骤 4:重启 SSH 服务

保存并关闭编辑器,然后运行以下命令重启 SSH 服务以应用更改:

sudo systemctl restart sshd

步骤 5:创建 SFTP 用户(可选)

如果你想要允许用户通过 SFTP 访问系统,你需要创建相应的用户账户并将其添加到 SFTP 组中。假设我们要创建一个名为 sftpuser 的用户,执行以下命令:

sudo useradd -m sftpuser -s /sbin/nologin
sudo passwd sftpuser
sudo usermod -aG sftpusers sftpuser

步骤 6:测试 SFTP 连接

现在,你可以使用 SFTP 客户端连接到你的 Rocky Linux 8 服务器。使用之前创建的 SFTP 用户账户和密码登录。

加强 SFTP 服务器的安全性

步骤 1:禁用 SSH 登录 Root 用户

编辑 SSH 配置文件 /etc/ssh/sshd_config,并确保以下行未被注释或添加:

PermitRootLogin no

这将禁止 root 用户直接通过 SSH 登录,从而降低系统受到攻击的风险。

步骤 2:限制登录用户

如果有必要,你可以通过配置 SSH 配置文件限制哪些用户可以登录到系统上。在配置文件中添加以下行来限制登录到指定的用户组:

AllowGroups sftpusers

步骤 3:启用公钥认证

使用公钥认证可以提高安全性,避免了传统的基于密码的身份验证。确保在配置文件中启用公钥认证:

PubkeyAuthentication yes

步骤 4:禁用空密码登录

禁用空密码登录可以防止恶意用户通过空密码登录系统。确保以下行未被注释或添加到配置文件中:

PermitEmptyPasswords no

步骤 5:监控日志文件

定期监视系统的日志文件(如 /var/log/secure)以检测任何异常活动,并及时采取行动。

步骤 6:定期更新系统和软件包

及时更新系统和安装的软件包可以修补潜在的安全漏洞,并提高系统的整体安全性。

目录
相关文章
|
8天前
|
Ubuntu Linux
Linux服务器的自动启动可以在哪里进行配置?
Linux服务器的自动启动可以在哪里进行配置?
48 3
|
16天前
|
存储 数据挖掘 Linux
服务器数据恢复—Linux操作系统网站服务器数据恢复案例
服务器数据恢复环境: 一台linux操作系统服务器上跑了几十个网站,服务器上只有一块SATA硬盘。 服务器故障: 服务器突然宕机,尝试再次启动失败。将硬盘拆下检测,发现存在坏扇区
|
23天前
|
存储 安全 Linux
离线Linux服务器环境搭建
【9月更文挑战第3天】在离线环境下搭建Linux服务器需按以下步骤进行:首先确定服务器用途及需求,准备安装介质与所需软件包;接着安装Linux系统并配置网络;然后设置系统基础参数,如主机名与时区;安装必要软件并配置服务;最后进行安全设置,包括关闭非必要服务、配置防火墙、强化用户认证及定期备份数据。整个过程需确保软件包的完整性和兼容性。
|
1天前
|
Linux Shell
10-8|linux date设置时间
10-8|linux date设置时间
|
24天前
|
NoSQL Linux Redis
Linux Redis 服务设置开机自启动
【9月更文挑战第2天】在 Linux 系统中,可使用两种方法设置 Redis 开机自启动:一是通过创建 `redis.service` 文件并利用 systemd 进行管理,包括定义服务参数和启动脚本;二是编辑 `/etc/rc.local` 文件,在其中添加启动命令。推荐使用 systemd 方法,因为它更符合现代 Linux 系统的设计理念。设置完成后,可通过 `sudo systemctl status redis.service` 检查服务状态。
|
3天前
|
Unix Linux Python
Cron定时设置在linux和mac中的使用
文章详细说明了如何在Linux和Mac操作系统中使用Cron进行定时任务的设置,并提供了多个Cron表达式的实例。
14 0
|
25天前
|
存储 监控 Linux
监控Linux服务器
详细介绍了如何监控Linux服务器,包括监控CPU、内存、磁盘存储和带宽的使用情况,以及使用各种系统监控工具如vmstat、iostat、sar、top和dstat来分析系统性能,并推荐了一些开源监控系统。
31 0
监控Linux服务器
|
25天前
|
监控 安全 网络协议
快速配置Linux云服务器
快速配置Linux云服务器
|
弹性计算 Linux Windows
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
1067 1
阿里云ECS云服务器初始化设置教程方法
|
18天前
|
Cloud Native Java 编译器
将基于x86架构平台的应用迁移到阿里云倚天实例云服务器参考
随着云计算技术的不断发展,云服务商们不断推出高性能、高可用的云服务器实例,以满足企业日益增长的计算需求。阿里云推出的倚天实例,凭借其基于ARM架构的倚天710处理器,提供了卓越的计算能力和能效比,特别适用于云原生、高性能计算等场景。然而,有的用户需要将传统基于x86平台的应用迁移到倚天实例上,本文将介绍如何将基于x86架构平台的应用迁移到阿里云倚天实例的服务器上,帮助开发者和企业用户顺利完成迁移工作,享受更高效、更经济的云服务。
将基于x86架构平台的应用迁移到阿里云倚天实例云服务器参考