Linux安装OpenSSH教程详解
时间:2026-04-10 18:10:29 307浏览 收藏
本文详细介绍了在Linux系统中安全安装与配置OpenSSH服务的完整流程,涵盖检查安装状态、使用对应包管理器部署服务端、启动并设为开机自启、配置防火墙放行SSH端口,以及通过修改sshd_config文件禁用root登录、关闭密码认证、更换默认端口等关键加固措施——手把手教你构建一个既可用又可靠的安全远程访问环境,无论你是新手运维还是希望夯实基础的开发者,都能快速掌握生产级SSH服务的部署精髓。

如果您需要在Linux系统中启用远程安全访问功能,则必须正确安装并配置OpenSSH服务。以下是完成该任务的具体步骤:
一、检查系统是否已安装OpenSSH服务
OpenSSH由openssh-server(服务端)和openssh-client(客户端)组成,多数Linux发行版默认仅预装客户端。确认服务端是否存在可避免重复安装或遗漏依赖。
1、打开终端,执行命令:dpkg -l | grep openssh-server(适用于Debian/Ubuntu系)。
2、若返回空结果,说明未安装服务端;若显示类似“ii openssh-server”则已安装。
3、对于RHEL/CentOS/Fedora系统,运行:rpm -qa | grep openssh-server进行验证。
二、使用包管理器安装OpenSSH服务
不同发行版使用不同的软件包管理工具,需根据系统类型选择对应命令安装openssh-server主程序及必要依赖。
1、Ubuntu/Debian系统执行:sudo apt update && sudo apt install -y openssh-server。
2、CentOS 7/Oracle Linux 7执行:sudo yum install -y openssh-server。
3、CentOS 8/RHEL 8/Fedora系统执行:sudo dnf install -y openssh-server。
4、Alpine Linux执行:sudo apk add openssh-server。
三、启动并启用OpenSSH服务
安装完成后需手动启动sshd守护进程,并设置开机自启,确保服务持续可用。
1、启动服务:sudo systemctl start sshd(Ubuntu/Debian)或sudo systemctl start sshd(RHEL/CentOS/Fedora)。
2、启用开机自启:sudo systemctl enable sshd。
3、验证服务状态:sudo systemctl status sshd,确认输出中包含“active (running)”。
四、配置防火墙放行SSH端口
系统防火墙可能默认阻止22端口通信,需显式添加规则允许SSH流量通过,否则远程连接将被拒绝。
1、Ubuntu/Debian使用UFW时执行:sudo ufw allow OpenSSH 或 sudo ufw allow 22。
2、RHEL/CentOS 7使用firewalld时执行:sudo firewall-cmd --permanent --add-service=ssh,随后运行sudo firewall-cmd --reload。
3、CentOS 8/RHEL 8执行:sudo firewall-cmd --permanent --add-port=22/tcp,再执行sudo firewall-cmd --reload。
五、修改SSH服务配置增强安全性
默认配置存在潜在风险,如允许root直接登录、使用密码认证等,应编辑主配置文件sshd_config进行加固。
1、备份原始配置:sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak。
2、编辑配置文件:sudo nano /etc/ssh/sshd_config(或使用vim)。
3、定位并修改以下参数:将PermitRootLogin yes改为PermitRootLogin no。
4、将PasswordAuthentication yes改为PasswordAuthentication no(启用密钥认证后操作)。
5、修改监听端口(可选):将#Port 22取消注释并更改为非标准端口号,例如Port 2222。
6、保存文件后重启服务:sudo systemctl restart sshd。
以上就是《Linux安装OpenSSH教程详解》的详细内容,更多关于的资料请关注golang学习网公众号!
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
403 收藏
-
433 收藏
-
221 收藏
-
320 收藏
-
417 收藏
-
450 收藏
-
266 收藏
-
244 收藏
-
434 收藏
-
111 收藏
-
183 收藏
-
312 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习