当前位置: 首页 > news >正文

迅速上手:CentOS 系统下 SSH 服务配置指南

前言

掌握 SSH 服务,就像拥有了一把解锁网络世界的钥匙。本文深入浅出地介绍了如何使用 SSH(Secure Shell)服务,从连接远程服务器到安全文件传输,让你轻松驾驭远程管理与数据传输,提高工作效率,保障信息安全。无论是系统管理员、开发人员还是普通用户,都会从中受益匪浅。赶紧阅读,开启全新的网络探索之旅!

ssh是什么

SSH是一种安全的远程登录协议,默认端口号是22,通过加密通信和身份认证机制,提供了安全的远程管理和文件传输功能,被广泛用于远程服务器的管理和维护。

SSH协议的基本原理是客户端-服务器模型,客户端是本地计算机上运行的程序,用于建立与远程服务器的安全连接。远程服务器上运行着SSH服务器软件,负责接受客户端的连接请求并进行身份验证。使用SSH,用户可以通过远程登录终端或者通过传输文件等方式来管理远程服务器。其中SSH是使用非对称加密算法来保证通信的安全性,在建立连接时,客户端和服务器会进行密钥交换,然后使用这些密钥进行加密和解密通信数据。在身份验证方面,SSH支持多种认证方式,包括密码认证、公钥认证和基于证书的认证。

对于SSH提供的主要功能,具体来说有以下这些:

  • 安全的远程登录:通过SSH协议,用户可以通过终端(如命令行界面)远程登录到远程服务器,并在远程服务器上执行命令。
  • 文件传输:SSH也支持安全地传输文件。用户可以使用SCP(Secure Copy)或SFTP(SSH File Transfer Protocol)等工具来在本地计算机和远程服务器之间传输文件。
  • 端口转发:SSH还支持端口转发功能,可以将本地计算机上的服务通过SSH隧道转发到远程服务器上,从而实现在不同网络中访问本地服务的功能。

如何使用ssh服务

SSH(Secure Shell)是一种安全的远程访问协议,用于远程控制和管理Linux服务器。以下是一些基本的SSH配置和管理方法:

安装SSH服务:如果你的CentOS 7系统没有安装SSH服务,可以使用以下命令安装:

yum install openssh-server

启动SSH服务 安装完毕后,可以使用以下命令启动SSH服务:

systemctl start sshd.service

设置SSH服务开机自启动:如果要使SSH服务在系统启动时自动启动,可以使用以下命令:

systemctl enable sshd.service

查询 openssh-server 的状态:

systemctl status sshd.service

其中,Active: active (running) 表示服务正在运行,Main PID: 1039 表示服务进程的 ID。

配置SSH服务端口 默认情况下,SSH服务监听22端口。为了提高安全性,建议将SSH服务端口更改为非标准端口。在/etc/ssh/sshd_config文件中,找到以下行:

#Port 22

取消注释并修改为所需的端口号:

Port 2222

重新加载SSH服务配置 由于我们已经修改了SSH服务配置文件,因此需要重新加载SSH服务以使更改生效:

systemctl reload sshd.service

防止SSH暴力破解:为了防止SSH暴力破解,可以使用fail2ban等工具来限制失败的登录尝试。fail2ban会监视系统日志并禁止来自恶意IP地址的连接尝试。安装和配置fail2ban的详细信息可以参考其他文档。

管理SSH登录

为了增强SSH安全性,可以禁止SSH root用户登录,并限制允许登录的用户列表。在/etc/ssh/sshd_config文件中,找到以下行:

#PermitRootLogin yes

取消注释并修改为以下内容来禁止root用户登录:

AllowUsers user1 user2

如果要限制特定用户列表,可以使用以下行:

AllowUsers user1 user2

这将仅允许user1和user2登录SSH服务。

ssh工具推荐

Xterminal

Xterminal是由深圳市罗湖区犄落信息咨询工作室开发的一款SSH客户端,目前支持Windows/Linux/macOS三大平台,Xterminal具有超高颜值和易用性,推荐给有需要的运维人员或程序员使用。Xterminal不仅提供了强大的SSH连接功能,还具备一系列其他实用功能。快速搜索框让你迅速搜索并直达所需的设置和SSH服务器。多级分组功能使服务器管理更加清晰和规划。除了传统的日间和夜间模式外,Xterminal还支持自定义主题,让你的界面色彩丰富多样,满足你的个性化需求。

下载地址:Xterminal - 更好用的开发工具,但不止于(SSH/控制台/More)

FinalShell

FinalShell是一体化的的服务器,网络管理软件,不仅是ssh客户端,还是功能强大的开发,运维工具,充分满足开发,运维需求。

作为一款使用Java开发的SSH面板工具,它不仅仅只进行SSH连接与指令管理,它还可以显示服务器的CPU、内存、交换空间等信息,进行文件的上传和下载,全文关键字搜索,历史指令提示等等......很明显,这是一款很有理想的SSH工具,而且还是免费。

下载地址:FinalShell SSH工具,服务器管理,远程桌面加速软件,支持Windows,macOS,Linux,版本4.3.10,更新日期2023.12.31 - FinalShell官网

WindTerm

WindTerm一款使用使用C语言开发的跨平台SSH客户端WindTerm,完全免费用于商业和非商业用途,没有限制。 所有发布的源代码(第三方目录除外)均在 Apache-2.0 许可条款下提供。

资源消耗、性能方面相比于其他软件,要好太多了;而且windows免安装解压即用,对电脑几乎是0侵入。

下载地址

Releases · kingToolbox/WindTerm · GitHub

总结:这几款ssh工具我都下载来简单试用了一下,日常使用已经够用了,如果需要使用一些更高级的功能,可能需要收费

写在最后

如果你觉得这篇文章对你有所帮助,不妨点击点赞按钮,让更多的人看到这篇优质的技术分享。同时,别忘了将这篇文章收藏起来,以备日后查阅。这样,你就能随时回顾和复习文章中的重要知识点,确保你的技术水平始终保持在最高水平。

相关文章:

迅速上手:CentOS 系统下 SSH 服务配置指南

前言 掌握 SSH 服务,就像拥有了一把解锁网络世界的钥匙。本文深入浅出地介绍了如何使用 SSH(Secure Shell)服务,从连接远程服务器到安全文件传输,让你轻松驾驭远程管理与数据传输,提高工作效率&#xff0c…...

day38 动态规划part1

509. 斐波那契数 简单 斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是: F(0) 0,F(1) 1 F(n) F(n - 1) F(n - 2),…...

01背包问题 刷题笔记

思路 dp 用f[i][j]来表示当体积为j时 考虑前i件物品可以获得的 最大值 记住f[i][j]本身是个价“价值” 考虑两种状态 是否将第i件物品放入背包里面 将背包的体积从小到大递增来进行考虑 首先 考虑条件 如果当前增加的体积放不下下一件物品 则该体积 可以获得的最大值可以直接…...

docker安装包(Linux和windows)

Linux——docker-20.10.9.tgz 网盘地址:链接:https://pan.baidu.com/s/1T3qfVZ-uT-vMAo8w6heTMw 提取码:qu85 windows——docker19.03.1 链接:https://pan.baidu.com/s/1mK6hqhkGCBs6tdBHJxrdPw 提取码:4dkj...

RabbitMQ 安装使用

文章目录 RabbitMQ 安装使用安装下载 Erlang下载 RabbitMQ 的服务安装好后看是否有 RabbitMQ 的服务开启管理 UIRabbitMQ 端口使用一览图 使用输出最简单的 Hello World!生产者定义消费者消费消息小拓展 RabbitMQ 安装使用 安装 下载 Erlang RabbitMQ 是用这个语…...

echarts x轴名称过长tip显示全称

xAxis的axisLabel的内容如下: axisLabel: { rotate: -45, color: document.body.className.indexOf(custom-f4c46d) > -1 ? #fff : #343434, // 显示省略号操作(第一步) formatter: function (value) { var val if (value.length >…...

js和css阻塞问题

面试常见问题 css 加载会不会阻塞 js 的加载?(不会)css 加载会不会阻塞 js 的执行?(会)css 加载会不会阻塞 DOM 的解析?(不会)css 加载会不会阻塞 DOM 的渲染&#xff1…...

MySQL 的基础操作

数据库的基础操作 1. 库操作2. 表的操作3. 数据类型 数据库是现代应用程序中至关重要的组成部分,通过数据库管理系统(DBMS)存储和管理数据。 1. 库操作 创建数据库 创建数据库是开始使用数据库的第一步。下面是一些常见的创建数据库的示例&a…...

【python进阶篇】面向对象编程(1)

面向对象编程——Object Oriented Programming,简称OOP,是一种程序设计思想。OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数。 在Python中,所有数据类型都可以视为对象,当然也可以自定义对象。自定…...

力扣面试经典150 —— 6-10题

力扣面试经典150题在 VScode 中安装 LeetCode 插件即可使用 VScode 刷题,安装 Debug LeetCode 插件可以免费 debug本文使用 python 语言解题,文中 “数组” 通常指 python 列表;文中 “指针” 通常指 python 列表索引 文章目录 6. [中等] 轮转…...

[密码学]入门篇——加密方式

一、概述 加密方法主要分为两大类: 单钥加密(private key cryptography):加密和解密过程都用同一套密码双钥加密(public key cryptography):加密和解密过程用的是两套密码 历史上&#xff0c…...

构建前后端分离项目常用的代码

构建前后端分离项目常用的代码 1.代码生成器 import com.baomidou.mybatisplus.generator.FastAutoGenerator;import com.baomidou.mybatisplus.generator.config.OutputFile;import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;​import java.util.…...

2575. 找出字符串的可整除数组(Go语言)

https://leetcode.cn/problems/find-the-divisibility-array-of-a-string/ 在看题解之前,我的代码是以下这样: package mainimport ("fmt" )func main() {fmt.Println(divisibilityArray("998244353", 3)) }func divisibilityArray…...

Redis与 Memcache区别

Redis与 Memcache区别 1 , Redis 和 Memcache 都是将数据存放在内存中,都是内存数据库。不过 Memcache 还可用于缓存 其他东西,例如图片、视频等等。 2 , Memcache 仅支持key-value结构的数据类型,Redis不仅仅支持简单的key-value类型的数据&…...

#QT(智能家居界面-界面切换)

1.IDE:QTCreator 2.实验 3.记录 (1)创建一个新界面(UI界面) (2)可以看到新加入一个ui文件,双击打开,设置窗口大小与登录界面一致 (3)加入几个PUS…...

js拓展-内置对象

目录 1. 数组对象 1.1 数组的四种方式 1.2 JS中数组的特点 1.3 常用方法 2. 日期对象 2.1 日期对象的创建 2.2 日期对象的方法 2.3 案例:输出现在的时间 3. 全局对象 3.1 字符串转换成数字类型 3.2 编码解码函数 1. 数组对象 注:数组在JS中是一…...

【李沐精读系列】GPT、GPT-2和GPT-3论文精读

论文: GPT:Improving Language Understanding by Generative Pre-Training GTP-2:Language Models are Unsupervised Multitask Learners GPT-3:Language Models are Few-Shot Learners 参考:GPT、GPT-2、GPT-3论文精读…...

Libevent的使用及reactor模型

Libevent 是一个用C语言编写的、轻量级的开源高性能事件通知库,主要有以下几个亮点:事件驱动( event-driven),高性能;轻量级,专注于网络,不如 ACE 那么臃肿庞大;源代码相当精炼、易读…...

查看Linux服务器配置

# chkconfig --list # 列出所有系统服务 # chkconfig --list | grep on # 列出所有启动的系统服务 # ifconfig # 查看所有网络接口的属性 # iptables -L # 查看防火墙设置 # route -n # 查看路由表 # netstat -lntp # 查看所有监听端口 # netstat -antp # 查看所有已经建立的连…...

【机器学习】包裹式特征选择之递归特征添加法

🎈个人主页:豌豆射手^ 🎉欢迎 👍点赞✍评论⭐收藏 🤗收录专栏:机器学习 🤝希望本文对您有所裨益,如有不足之处,欢迎在评论区提出指正,让我们共同学习、交流进…...

大模型二面:如何设计实现一个 LLM Gateway ?

1. 题目分析当你的系统只调用一个模型、一个 Provider 的时候,一切看起来都很简单——拼好 Prompt,发个 HTTP 请求,拿到结果。但当业务做大以后,你会发现自己同时在用 GPT-4o 处理复杂推理、用 Claude 做长文档分析、用开源模型跑…...

万象视界灵坛代码实例:Python调用Omni-Vision Sanctuary API实现批量图像语义评分

万象视界灵坛代码实例:Python调用Omni-Vision Sanctuary API实现批量图像语义评分 1. 平台概览与技术背景 万象视界灵坛(Omni-Vision Sanctuary)是一款基于OpenAI CLIP模型的高级多模态智能感知平台。它通过创新的像素风格界面,…...

Lychee Rerank MM实战案例:短视频平台封面图+文案Query匹配视频描述重排

Lychee Rerank MM实战案例:短视频平台封面图文案Query匹配视频描述重排 你是不是也遇到过这种情况?在短视频平台刷到一个视频,封面图很吸引人,标题文案也写得不错,但点进去一看,视频内容和封面、标题完全不…...

解锁高效办公新体验:探索QuickLook OfficeViewer-Native的智能文档预览方案

解锁高效办公新体验:探索QuickLook OfficeViewer-Native的智能文档预览方案 【免费下载链接】QuickLook.Plugin.OfficeViewer-Native View Word, Excel, and PowerPoint files with MS Office and WPS Office components. 项目地址: https://gitcode.com/gh_mirro…...

企业统一任务调度平台MoiaControl介绍

1、批量作业调度的现状当前批量作业调度软件普遍面临着一些问题:调度方式原始落后时至今日仍然有一些系统使用人工调度或操作系统的crontab方式调度。在如今追求自动化甚至智能化的时代已显得非常原始和低效,容易出错且难以监控,已成为这类系…...

ESP32-C3/S3也能用!手把手教你为不同型号ESP32编译定制MicroPython固件

ESP32全系列芯片定制化MicroPython固件编译实战指南 在物联网开发领域,ESP32系列芯片因其出色的性价比和丰富的功能而广受欢迎。从经典的ESP32到支持蓝牙5.0的ESP32-C3,再到高性能的ESP32-S3,每一款芯片都有其独特的优势和应用场景。然而&am…...

TVA技术在能源组件装配检查中的实操应用与质量管控

前沿技术背景介绍:AI 智能体视觉检测系统(Transformer-based Vision Agent,缩写:TVA),是依托 Transformer 架构与“因式智能体”范式所构建的高精度智能体。它区别于传统机器视觉与早期 AI 视觉&#xff0c…...

从MATLAB仿真到Simulink实战:如何用PCM+2PSK搭建一个简易的语音通信系统模型

从MATLAB仿真到Simulink实战:构建PCM2PSK语音通信系统全链路模型 在数字通信系统的学习过程中,许多工程师都会遇到一个共同困境:虽然能够理解单个模块的原理,却难以将这些模块串联成一个完整的通信链路。本文将带您跨越理论与实践…...

20世纪60年代UNIVAC计算机运行Minecraft服务器等程序,如何突破性能极限?

1. 项目成果展示 2026年4月17日,有人在一台20世纪60年代的UNIVAC 1219B计算机上运行Minecraft服务器,还展示了NES模拟器渲染出的《弹珠台》游戏第一帧画面、用“叠印”技术打印的自拍。此外,还运行了OCaml程序、Web服务器、Curve25519 AES加…...

Docker 27网络隔离增强使用,从原理到iptables底层规则映射的完整链路拆解

第一章:Docker 27网络隔离增强的核心演进与设计动机Docker 27 引入了面向多租户与零信任架构的网络隔离增强机制,其核心演进聚焦于内核级 eBPF 网络策略执行引擎的深度集成,替代传统 iptables 链式规则匹配路径,显著降低策略生效延…...