Ubuntu 系统中配置 SSH 服务教程

一、什么是 SSH?

SSH(Secure Shell)是一种加密的网络协议,用于在不安全的网络中安全地进行远程登录、远程命令执行和文件传输。它是 Telnet、FTP 等传统协议的安全替代品。


二、确认系统环境

在开始配置之前,请确认你的系统版本和网络情况。

lsb_release -a
ip a

确保:

  • Ubuntu 系统版本在支持范围内(一般 Ubuntu 16.04 及以上都可)

  • 系统已联网(本地局域网或公网皆可)


三、安装 SSH 服务

Ubuntu 默认未启用 OpenSSH 服务,需要手动安装:

sudo apt update
sudo apt install openssh-server

安装完成后,系统会自动启动 SSH 服务。


四、检查 SSH 服务状态

执行以下命令来确认 SSH 服务是否运行中:

sudo systemctl status ssh

如果看到如下内容,说明服务运行正常:

● ssh.service - OpenBSD Secure Shell serverLoaded: loaded (/lib/systemd/system/ssh.service; enabled)Active: active (running)

如果服务未启动,可以手动启动:

sudo systemctl start ssh

设置为开机自动启动:

sudo systemctl enable ssh

五、配置 SSH 服务(可选)

SSH 的配置文件路径为:

/etc/ssh/sshd_config

使用编辑器打开:

sudo nano /etc/ssh/sshd_config

常见配置项说明:

  • Port 22

    :设置监听端口(可修改为其他端口增强安全性)

  • PermitRootLogin no

    :是否允许 root 用户登录

  • PasswordAuthentication yes/no

    :是否允许密码登录(设为 no 可增强安全性,但需先配置好密钥登录)

修改后保存并重启服务:

sudo systemctl restart ssh

六、测试 SSH 连接

在另一台设备(如你的开发主机)上使用终端连接:

ssh 用户名@目标IP

例如:

ssh ubuntu@192.168.1.100

如果是第一次连接,会提示是否接受主机密钥,输入 yes 即可。


七、设置密钥登录(增强安全性)

生成 SSH 密钥对(客户端):

ssh-keygen

将公钥复制到 Ubuntu 主机:

ssh-copy-id 用户名@目标IP

成功后即可无密码登录,建议将 sshd_config 中的密码登录禁用:

PasswordAuthentication no

重启服务:

sudo systemctl restart ssh

八、防火墙设置(如有)

如果你启用了 UFW 防火墙,需要放行 SSH 端口:

sudo ufw allow ssh
sudo ufw enable

九、常见问题排查

问题

解决方法

无法连接

检查 IP 是否正确,SSH 服务是否运行,防火墙是否放行端口

密钥登录失败

检查权限是否正确(~/.ssh/authorized_keys 权限为 600)

SSH 登录慢

可编辑 /etc/ssh/sshd_config,添加 UseDNS no

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/916827.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/916827.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于springboot的编程训练系统设计与实现(源码+论文)

一、开发环境 技术/工具描述MYSQL数据库一个真正的多用户、多线程SQL数据库服务器,适用于Web站点或其他应用软件的数据库后端开发。B/S结构基于互联网系统的软件系统开发架构,利用浏览器进行访问,支持多平台使用。Spring Boot框架简化新Spri…

K8s集群两者不同的对外暴露服务的方式

在工作中,我们暴露集群内的服务通常有几种方式,对于普通的http或者https,我们通常使用​Ingress Nginx​ ,对于原始的TCP或者UDP端口服务,可能需要选择 ​LoadBalancer​ ,它们的核心区别在于工作层级、协议支持和流量…

实习日志111

第一天 加入内网和内网域,设置自己的操作系统 第二天 安装常用软件和平台 Notepad 是一款免费的源代码编辑器,支持多种编程语言,其功能强大且界面友好,适用于 Windows 操作系统。WinMerge 是一款开源的差异比较和合并工具&…

Redis 服务挂掉排查与解决

Redis 是一个高性能的键值对存储系统,广泛应用于缓存、会话存储、消息队列等场景。在使用 Redis 的过程中,偶尔会遇到 Redis 服务挂掉或无法连接的情况。本文将通过常见错误 RedisException in Redis.php line 63 Connection refused 来讲解如何排查并解…

DOM + HTML + HTTP

一、HTML5的新特性 1.语义化标签:其实就是可以让标签有自己的含义 html4之前都是有的,比如:<h1>、<ul>、<li> html5新增了很多语义化标签:<header>、<nav> html5的语义化标签的常用页面布局: 优点: 1.代码结构清晰,方便阅读,有利于团…

HTML 音频/视频

HTML 音频/视频 引言 HTML 音频和视频标签是网页设计中不可或缺的部分,它们为用户提供了一种将多媒体内容嵌入到网页中的方式。本文将详细介绍 HTML 音频/视频标签的用法、属性和注意事项,帮助开发者更好地在网页中嵌入音频和视频。 HTML 音频标签( ) 1. 标签基本用法 …

Apache Ignite Cluster Groups的介绍

以下这段内容是 Apache Ignite 官方文档中关于 Cluster Groups&#xff08;集群组&#xff09; 的介绍。我来用通俗易懂的方式帮你全面理解这个概念。&#x1f310; 什么是 Cluster Group&#xff1f; 简单来说&#xff1a;Cluster Group 就是一个“节点的子集”。想象一下你的…

github上传本地项目过程记录

最近有和别人进行unity项目协作的需求&#xff0c;需要把自己的本地代码上传到github已有的一个仓库里。记录一下上传过程&#xff0c;防止后续还需要用。 文章目录一、把自己的本地代码上传到github已有的一个仓库中二、常用功能一、把自己的本地代码上传到github已有的一个仓…

Spring AI Alibaba

目录 前言&#xff1a; 一、Spring AI 和Spring AI Alibaba 二、Spring AI Alibaba快速入门 1.环境 2.ollama 3.阿里百炼 前言&#xff1a; 2025年真的是AI大爆发的一年&#xff0c;以后无论是什么行业我想都需要AI了&#xff0c;作为一名计算机人&#xff0c;你不学习AI…

【GaussDB】内存资源告急:深度诊断一起“memory temporarily unavailable“故障

【GaussDB】诊断一起内存临时不可用的问题 &#x1f4cb; 背景 在客户测试环境中&#xff08;GaussDB 506.0 SPC0100 集中式&#xff09;&#xff0c;一个重度使用存储过程的系统&#xff0c;频繁出现内存临时不可用的问题(ERROR: memory is temporarily unavailable)。令人困…

FastDFS如何提供HTTP访问电子影像文件

Nginx 作为高性能的 Web 服务器和反向代理服务器&#xff0c;与 FastDFS 结合使用&#xff0c;本文主要介绍用于处理 FastDFS 存储文件的 HTTP 访问请求&#xff0c;方便客户端通过 HTTP 协议直接访问存储在 FastDFS 中的文件&#xff0c;在电子影像系统中&#xff0c;Nginx 可…

水面垃圾识别分割数据集labelme格式2111张8类别

数据集中有部分增强图片&#xff0c;注意为了提供模型泛化识别能力&#xff0c;有很少一部分不是水面垃圾。具体看图片数据集格式&#xff1a;labelme格式(不包含mask文件&#xff0c;仅仅包含jpg图片和对应的json文件)图片数量(jpg文件个数)&#xff1a;2111标注数量(json文件…

北京-4年功能测试2年空窗-报培训班学测开-第六十二天-模拟未通过,继续准备自我介绍项目介绍面试题中

今日产出&#xff0c;完成昨天模拟面试录音的重听和整理&#xff0c;完成自我介绍梳理&#xff0c;还重写了三个算法题&#xff0c;写了4个sql题。和同学打语音提问今天专注力不强&#xff0c;因为焦虑项目和面试题。关于项目&#xff0c;我理解的&#xff0c;老师以前录屏讲的…

自动化辅助工具教程

该工具支持全部平台使用

里程碑 | 1Panel开源面板GitHub Star数量突破30,000个!

截至2025年7月23日20:00&#xff0c;飞致云旗下开源项目——1Panel开源Linux服务器运维管理面板GitHub Star数超过30,000个&#xff01; 继Halo之后&#xff0c;1Panel成为飞致云旗下第二个GitHub Star数量超过30,000个的开源项目&#xff0c;也是飞致云旗下最快达成30,000个Gi…

雨雪雾冰全预警:交通气象站为出行安全筑起“隐形防护网”

冬季浓雾弥漫高速&#xff0c;能见度降至 50 米以下&#xff1b;夏季暴雨倾盆&#xff0c;低洼路段眨眼间积水成河…… 恶劣天气总是公路交通安全的大敌。关键时刻&#xff0c;交通气象站挺身而出&#xff0c;成为保障道路畅通与行车安全的科技尖兵。交通气象站专为复杂道路环境…

C++(面向对象之继承、多态)

一、继承前言在c里面&#xff0c;继承是指2个类之间的关系例如&#xff1a;有一个org类&#xff0c;功能很完善&#xff0c;体量很大&#xff0c;突然有一天&#xff0c;需求发生改变&#xff0c;org类不能满足新的需求&#xff0c;我们的第一想法是&#xff0c;复制 org 类代码…

【数据可视化-75】北京密云区2025年7月暴雨深度分析:Python + Pyecharts 炫酷大屏可视化(含完整数据、代码)

&#x1f9d1; 博主简介&#xff1a;曾任某智慧城市类企业算法总监&#xff0c;目前在美国市场的物流公司从事高级算法工程师一职&#xff0c;深耕人工智能领域&#xff0c;精通python数据挖掘、可视化、机器学习等&#xff0c;发表过AI相关的专利并多次在AI类比赛中获奖。CSDN…

Voxtral Mini:语音转文本工具,支持超长音频,多国语音

Voxtral是什么 Mistral AI 推出的 Voxtral 是一款强大的音频模型&#xff0c;专为语音交互打造&#xff0c;具备卓越的语音转写和语义理解能力。它提供 24B 和 3B 两种版本&#xff0c;分别适用于大规模生产和本地部署。Voxtral 支持多语言、长文本上下文、问答与总结&#xf…

React Native环境配置完整版(超详细)

目录 第一步&#xff1a;打开React Native官方网站 第二步&#xff1a;安装NVM与Node.js 一、安装NVM 二、使用NVM安装Node.js 三、NVM使用说明 四、环境变量配置 第三步&#xff1a;安装JDK 一、JDK介绍 二、下载与安装JDK 三、环境配置 四、验证是否配置成功 第四…