如何在 Ubuntu 上启用 SSH,安全地远程管理和传输数据

本文涉及的产品
云防火墙,500元 1000GB
简介: 如何在 Ubuntu 上启用 SSH,安全地远程管理和传输数据

SSH(Secure Shell)是一种网络协议,用于在网络上安全地远程管理和传输数据。在 Ubuntu 操作系统上启用 SSH 可以方便地进行远程访问和管理。本文将详细介绍如何在 Ubuntu 上启用 SSH,并提供一些额外的安全性和配置建议。

步骤一:检查 SSH 是否已安装

在开始之前,我们首先需要检查 SSH 是否已在 Ubuntu 上安装。SSH 是一个常见的工具,通常在 Ubuntu 默认安装中包含它。你可以通过运行以下命令在终端中检查 SSH 是否已安装:

$ sudo apt list openssh-server

如果输出中显示 "installed",则表示 SSH 已安装。否则,你可以使用以下命令安装 SSH:

$ sudo apt install openssh-server

步骤二:启动 SSH 服务

在 Ubuntu 上启用 SSH 需要启动 SSH 服务。你可以使用以下命令来启动 SSH 服务:

$ sudo systemctl start ssh

如果 SSH 服务已启动,你将看到一条成功的消息。如果 SSH 服务已安装但未启动,你可以使用上述命令启动它。

步骤三:配置 SSH

一旦 SSH 服务已启动,我们可以根据需要进行一些配置。

配置 SSH 端口

SSH 默认使用端口号 22 进行通信。然而,出于安全考虑,建议更改默认端口。要更改 SSH 端口,你需要编辑 SSH 配置文件。

使用以下命令打开 SSH 配置文件:

$ sudo nano /etc/ssh/sshd_config

在配置文件中找到 "Port" 行,并更改端口号。例如,你可以将端口号更改为 2222:

Port 2222

保存更改并退出配置文件。然后,重新启动 SSH 服务以使更改生效:

$ sudo systemctl restart ssh

配置允许的 SSH 用户

默认情况下,SSH 允许所有具有系统账户的用户进行远程登录。然而,为了增加安全性,你可以配置只允许特定的用户进行 SSH 登录。

使用以下命令打开 SSH 配置文件:

$ sudo nano /etc/ssh/sshd_config

在配置文件中找到 "AllowUsers" 行,并将要允许的用户名添加到该行。例如,要允许用户 "john" 和 "jane" 进行 SSH 登录,可以将配置修改如下:

AllowUsers john jane

保存更改并退出配置文件。然后,重新启动 SSH 服务以使更改生效:

$ sudo systemctl restart ssh

禁用 SSH 密码登录

为了进一步增强安全性,我们可以禁用 SSH 密码登录,而使用密钥进行身份验证。这样可以防止使用弱密码或被猜测的密码进行远程登录。

使用以下命令打开 SSH 配置文件:

$ sudo nano /etc/ssh/sshd_config

找到并确保以下行存在且未被注释(行首没有 "#" 符号):

PasswordAuthentication no

如果该行被注释了(行首有 "#" 符号),则取消注释并将其设置为 "no"。保存更改并退出配置文件。然后,重新启动 SSH 服务以使更改生效:

$ sudo systemctl restart ssh

配置防火墙

如果你的 Ubuntu 服务器上启用了防火墙(如 UFW),你需要确保允许 SSH 连接通过防火墙。

使用以下命令启用 SSH 连接:

$ sudo ufw allow ssh

然后,重新加载防火墙规则以使更改生效:

$ sudo ufw reload

现在,你已经在 Ubuntu 上成功启用了 SSH,并进行了一些基本配置以增强安全性。

步骤四:连接到远程服务器

现在,你可以使用 SSH 客户端连接到远程 Ubuntu 服务器了。可以在终端中使用以下命令:

$ ssh username@server_ip_address -p port_number

其中,"username" 是你的用户名,"server_ip_address" 是远程服务器的 IP 地址,"port_number" 是 SSH 服务的端口号(如果你更改了默认端口)。

例如,如果你的用户名是 "john",远程服务器的 IP 地址是 "192.168.0.100",SSH 端口号是默认的 22,则可以使用以下命令连接到服务器:

$ ssh john@192.168.0.100

系统会提示你输入密码或提供密钥进行身份验证。输入正确的凭据后,你将成功连接到远程服务器。

结论

在 Ubuntu 上启用 SSH 可以方便地进行远程访问和管理。通过安装和启动 SSH 服务,并进行一些基本的安全配置,你可以建立一个安全的远程连接。在连接之前,确保你已经检查了 SSH 是否已安装,并根据需要进行了额外的配置。

SSH 提供了一种安全的远程访问方式,可以在服务器和个人计算机之间进行安全的数据传输和远程管理。遵循本文中的步骤,你将能够在 Ubuntu 上轻松启用 SSH,并享受远程访问的便利。

目录
相关文章
|
3月前
|
Ubuntu Shell 网络安全
安装了ubuntu虚拟机后发现shell无法连接 ubuntu开启ssh连接
【8月更文挑战第23天】安装了ubuntu虚拟机后发现shell无法连接
272 6
|
3月前
|
Ubuntu 网络安全 数据安全/隐私保护
如何在 Ubuntu 上创建一个 SSH CA 以验证主机和客户端
如何在 Ubuntu 上创建一个 SSH CA 以验证主机和客户端
79 0
|
1月前
|
Ubuntu 关系型数据库 MySQL
ubuntu使用aliyun源+mysql删除有外键约束的数据+查看特定目录的大小
ubuntu使用aliyun源+mysql删除有外键约束的数据+查看特定目录的大小
36 4
|
5月前
|
安全 数据挖掘 Shell
SSH安全远程登录与端口转发
**SSH 概述**:SSH 是开发者必备工具,用于安全远程登录及文件传输。本文聚焦SSH的两大功能:**密钥登录**和**端口转发**。
152 0
|
1月前
|
网络安全
Ubuntu14.04安装ssh服务器
Ubuntu14.04安装ssh服务器
52 0
|
3月前
|
存储 安全 测试技术
【超实用却暗藏杀机】sshpass:一键免密SSH登录的神器,为何生产环境却要敬而远之?探秘背后的安全隐患与替代方案!
【8月更文挑战第16天】sshpass 是一款便捷工具,可实现自动化SSH登录,简化脚本中的远程连接流程。通过后台自动处理密码输入,便于执行远程操作,如 `sshpass -p 'yourpassword' ssh user@remotehost`。也可结合更多SSH选项使用,例如指定私钥文件。然而,因需明文传递密码,存在较大安全隐患,不适于生产环境;推荐使用公钥认证以增强安全性。
183 4
|
4月前
|
监控 Ubuntu 安全
|
3月前
|
Ubuntu Shell 网络安全
【Ubuntu】配置SSH
【Ubuntu】配置SSH
84 0
|
3月前
|
Ubuntu 机器人 网络安全
ubuntu22.04 SSH和ROS2控制下位机
本文介绍了如何在Ubuntu 22.04系统中通过SSH远程控制机器人服务器,包括安装SSH服务、配置防火墙规则、修改`/etc/hosts`文件、使用密钥认证等步骤,并提供了使用ROS2控制下位机的方法和一些常用指令。
81 0
|
3月前
|
安全 Linux 网络安全
在Linux中,如何配置SSH以确保远程连接的安全?
在Linux中,如何配置SSH以确保远程连接的安全?