ssh 远程登录 一文弄懂

2024-06-16 00:48
文章标签 登录 远程 ssh 一文 弄懂

本文主要是介绍ssh 远程登录 一文弄懂,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

ssh - Secure Shell(安全外壳协议)

远程登录方式

  • 密码登录
  • 密钥登录
安装

服务端

sudo apt install openssh-server

客户端

sudo apt install openssh-client

win10: win+x / 应用和功能 / 管理可选功能 / 添加功能 / OpenSSH

密码登录

发起会话,ssh user@hostname 或 ssh user@ip,输入用户密码.

ssh haha@myserver

ssh haha@192.168.1.23
密钥登录
  1. 生成密钥对
haha@st ~/.ssh $ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/haha/.ssh/id_rsa):	//要求输入文件名,按回车默认id_rsa
Enter passphrase (empty for no passphrase):     //第一次输入密码,按回车免密
Enter same passphrase again:    //第二次输入密码,要和第一次一样
Your identification has been saved in /home/haha/.ssh/id_rsa.	//生成的私钥文件id_rsa
Your public key has been saved in /home/haha/.ssh/id_rsa.pub.	//生成的公钥文件id_rsa.pub

查看生成的密钥对

haha@st ~ $ ls .ssh/
id_rsa  id_rsa.pub

ssh-keygen 有更多的参数可以用

  • -f 指定密钥文件,如 ~/.ssh/my_ssh_key.
  • -P 指定密码,如 “123456”,或者空 “”.
haha@st ~ $ ssh-keygen -f ~/.ssh/my_ssh_key -P ""
haha@st ~ $ ls .ssh/
id_rsa  id_rsa.pub  my_ssh_key  my_ssh_key.pub
  1. 拷贝公钥到服务器
ssh-copy-id -i ~/.ssh/id_rsa.pub user@192.168.1.4

这相当一次密码登录,要求输入密码.公钥会被拷贝到服务器 user 用户的/home/user/.ssh/authorized_keys (授权文件).
之后,只要有客户端发起密钥登录就会到授权文件查找公钥进行认证.

ssh-copy-id 指令格式:ssh-copy-id -i 公钥文件 username@hostname.
win 下如果没有 ssh-copy-id 工具,需要手动拷贝.

  1. 发起会话
ssh user@192.168.1.4

可以用 -i 参数指定密钥

ssh user@192.168.1.4 -i ~/.ssh/my_ssh_key
  1. 更加便捷的登录方式,配置 .ssh/config 文件
Host user8server             HostName 192.168.1.4User userIdentityFile C:\\Users\\haha\\.ssh\\my_ssh_key

Host 字段是个名字可以随意起,但最好用字母和数字,像 @ 就会出问题,和 ssh 用户@主机 冲突.
HostName 字段和 User 字段组成 ssh User@HostName.
IdentityFile 字段指定 ssh 私钥 -i IdentityFile.

  1. 现在可以这样登录
ssh user8server

参考

https://www.cnblogs.com/xz816111/p/9479139.html
https://baike.baidu.com/item/ssh/10407?fr=aladdin
https://www.jianshu.com/p/33461b619d53

这篇关于ssh 远程登录 一文弄懂的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1065056

相关文章

Java实现远程执行Shell指令

《Java实现远程执行Shell指令》文章介绍使用JSch在SpringBoot项目中实现远程Shell操作,涵盖环境配置、依赖引入及工具类编写,详解分号和双与号执行多指令的区别... 目录软硬件环境说明编写执行Shell指令的工具类总结jsch(Java Secure Channel)是SSH2的一个纯J

JWT + 拦截器实现无状态登录系统

《JWT+拦截器实现无状态登录系统》JWT(JSONWebToken)提供了一种无状态的解决方案:用户登录后,服务器返回一个Token,后续请求携带该Token即可完成身份验证,无需服务器存储会话... 目录✅ 引言 一、JWT 是什么? 二、技术选型 三、项目结构 四、核心代码实现4.1 添加依赖(pom

Mac电脑如何通过 IntelliJ IDEA 远程连接 MySQL

《Mac电脑如何通过IntelliJIDEA远程连接MySQL》本文详解Mac通过IntelliJIDEA远程连接MySQL的步骤,本文通过图文并茂的形式给大家介绍的非常详细,感兴趣的朋友跟... 目录MAC电脑通过 IntelliJ IDEA 远程连接 mysql 的详细教程一、前缀条件确认二、打开 ID

一文带你迅速搞懂路由器/交换机/光猫三者概念区别

《一文带你迅速搞懂路由器/交换机/光猫三者概念区别》讨论网络设备时,常提及路由器、交换机及光猫等词汇,日常生活、工作中,这些设备至关重要,居家上网、企业内部沟通乃至互联网冲浪皆无法脱离其影响力,本文将... 当谈论网络设备时,我们常常会听到路由器、交换机和光猫这几个名词。它们是构建现代网络基础设施的关键组成

Spring Security重写AuthenticationManager实现账号密码登录或者手机号码登录

《SpringSecurity重写AuthenticationManager实现账号密码登录或者手机号码登录》本文主要介绍了SpringSecurity重写AuthenticationManage... 目录一、创建自定义认证提供者CustomAuthenticationProvider二、创建认证业务Us

Springboot项目登录校验功能实现

《Springboot项目登录校验功能实现》本文介绍了Web登录校验的重要性,对比了Cookie、Session和JWT三种会话技术,分析其优缺点,并讲解了过滤器与拦截器的统一拦截方案,推荐使用JWT... 目录引言一、登录校验的基本概念二、HTTP协议的无状态性三、会话跟android踪技术1. Cook

使用Redis快速实现共享Session登录的详细步骤

《使用Redis快速实现共享Session登录的详细步骤》在Web开发中,Session通常用于存储用户的会话信息,允许用户在多个页面之间保持登录状态,Redis是一个开源的高性能键值数据库,广泛用于... 目录前言实现原理:步骤:使用Redis实现共享Session登录1. 引入Redis依赖2. 配置R

Spring Security 单点登录与自动登录机制的实现原理

《SpringSecurity单点登录与自动登录机制的实现原理》本文探讨SpringSecurity实现单点登录(SSO)与自动登录机制,涵盖JWT跨系统认证、RememberMe持久化Token... 目录一、核心概念解析1.1 单点登录(SSO)1.2 自动登录(Remember Me)二、代码分析三、

一文解密Python进行监控进程的黑科技

《一文解密Python进行监控进程的黑科技》在计算机系统管理和应用性能优化中,监控进程的CPU、内存和IO使用率是非常重要的任务,下面我们就来讲讲如何Python写一个简单使用的监控进程的工具吧... 目录准备工作监控CPU使用率监控内存使用率监控IO使用率小工具代码整合在计算机系统管理和应用性能优化中,监

一文详解如何使用Java获取PDF页面信息

《一文详解如何使用Java获取PDF页面信息》了解PDF页面属性是我们在处理文档、内容提取、打印设置或页面重组等任务时不可或缺的一环,下面我们就来看看如何使用Java语言获取这些信息吧... 目录引言一、安装和引入PDF处理库引入依赖二、获取 PDF 页数三、获取页面尺寸(宽高)四、获取页面旋转角度五、判断