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

SSH简介及两种远程登录的方法

SSH 简介及两种远程登录的方法

SSH 简介

SSH(Secure Shell,安全外壳协议)是一种加密的网络传输协议,用于在不安全的网络中为远程登录和其它网络服务提供安全保障。它由 IETF(互联网工程任务组)制定,目前最常用的是 SSH-2 版本(SSH-1 已废弃,因存在安全漏洞)。

核心特点

  • 加密通信:所有数据(包括用户名、密码、命令、文件传输)均加密传输,防止中间人窃听。
  • 身份验证:支持多种认证方式(密码、公钥等)。
  • 功能丰富:除了远程登录,还支持端口转发、X11 转发、SCP/SFTP 文件传输等。
  • 替代 Telnet 和 rlogin:Telnet 等旧协议明文传输,极不安全,已被 SSH 完全取代。

常见应用场景

  • 远程管理 Linux/Windows 服务器
  • 安全文件传输(配合 scp/sftp)
  • 内网穿透、跳板机
  • Git 远程仓库操作(git@github.com)

端口:默认 22(可自定义修改)

SSH 远程登录的两种主要方法

SSH 客户端登录服务器时,主要有两种认证方式

方法一:密码认证(Password Authentication,最简单)

原理:用户输入服务器上已设置的账户密码进行验证。

优点

  • 配置简单,无需额外准备。
  • 适合临时或初次登录。

缺点

  • 密码易被暴力破解(尤其是弱密码)。
  • 不适合自动化脚本(需交互输入密码)。

使用示例(Linux/macOS/Windows 10+ 自带 OpenSSH 客户端):

sshusername@server_ip# 示例sshroot@192.168.1.100# 或指定端口ssh-p2222user@example.com

首次连接会提示服务器指纹验证:

The authenticity of host '192.168.1.100' can't be established. ECDSA key fingerprint is SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxx. Are you sure you want to continue connecting (yes/no)?

输入yes后,会将服务器公钥保存到本地~/.ssh/known_hosts

然后输入密码即可登录。

方法二:公钥认证(Public Key Authentication,最安全推荐)

原理

  1. 用户在本地生成一对密钥:私钥(id_rsa,保密)和公钥(id_rsa.pub)。
  2. 将公钥上传到服务器的~/.ssh/authorized_keys文件中。
  3. 登录时,服务器用公钥验证本地私钥是否匹配,无需输入密码。

优点

  • 极高安全性(私钥不传输)。
  • 支持免密码登录,适合自动化脚本、Git 等。
  • 防止暴力破解。

缺点

  • 初次配置稍复杂。
  • 私钥丢失需重新配置。

配置步骤(以 Linux/macOS 为例):

  1. 本地生成密钥对(若已有可跳过):

    ssh-keygen-ted25519-C"your_email@example.com"# 或兼容性更好的 rsa(至少 3072 位)# ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

    默认保存在~/.ssh/id_ed25519~/.ssh/id_ed25519.pub

  2. 将公钥上传到服务器(两种方式任选):

    方式A:使用 ssh-copy-id(最方便)

    ssh-copy-id username@server_ip

    会自动将公钥追加到服务器的~/.ssh/authorized_keys

    方式B:手动上传

    # 本地查看公钥cat~/.ssh/id_ed25519.pub# 复制内容,登录服务器(用密码方式)sshusername@server_ip# 在服务器上创建目录并写入mkdir-p~/.sshecho"你的公钥内容">>~/.ssh/authorized_keyschmod700~/.sshchmod600~/.ssh/authorized_keys
  3. 登录测试(无需密码):

    sshusername@server_ip

    直接进入,无需输入密码。

种方法对比总结
项目密码认证公钥认证
安全性中等(易被暴力破解)高(私钥不传输)
配置难度简单稍复杂(需生成密钥)
是否需要交互需要输入密码无需密码(可自动化)
推荐场景临时登录、初次配置生产环境、日常管理、脚本
是否推荐长期使用不推荐强烈推荐
安全建议

掌握这两种方法,你就能安全高效地管理远程服务器了!推荐所有服务器都配置公钥认证。

http://www.jsqmd.com/news/205979/

相关文章:

  • 结构化预处理让DeepSeek准确率提升51%,现已开源丨清华深言
  • C++中的String的常用函数用法总结
  • 【python】错误SyntaxError: invalid syntax的解决方法总结
  • BERT模型实战:金融新闻去重系统全解析
  • 震惊!英伟达GPU贵1.86倍,性能却碾压AMD 15倍!大模型开发者必看算力真相,看完直接换卡?
  • 深度解构:从chroot到容器——Mock构建环境的隔离技术演进与问题诊断
  • 直流无感无刷电机方波控制全解析
  • 强烈安利MBA必用8个一键生成论文工具测评
  • Java类加载机制
  • 深度测评10个AI论文写作软件,继续教育学生轻松搞定论文!
  • AI不再“一本正经胡说八道“!LLM+RAG融合技术实战指南,让大模型回答有据可查,小白也能轻松上手
  • 2026 届计算机毕业设计全流程指南(从 0 到答辩)
  • js刷新页面的几种方法
  • TreeUtil树构建工具-超好用工具
  • 计算机专业毕设怎么选题?老师最容易通过的 20 个方向
  • Visual Studio 2022中配置cuda环境
  • AI 技术在英语培训中的应用
  • 从零到一全面掌握MySQL:安装配置、SQL详解与数据库实战理解
  • MySQL保姆级教程:从安装部署到核心概念,快速上手避坑指南
  • tcpdump抓包实战:命令行网络诊断利器
  • 飞书多维表格基础操作
  • 一篇搞定MySQL:从环境搭建到深入理解,高效入门数据库
  • 网络延迟与丢包问题排查实战
  • 欧盟EN 18031-1无线设备认证
  • MT-Safety 标签env 和 locale
  • EN 18031-1通用网络安全认证新规
  • 除了安全更新,EN 18031-1还有哪些重要的认证要求?
  • 写给开发者、内容创作者:当你“快做完了”却开始崩,这不是技术问题
  • 如何确保设备满足EN 18031-1标准中的安全更新要求?
  • 通达信专抓超跌副图无未来