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

相关文章

使用Python实现局域网远程监控电脑屏幕的方法

《使用Python实现局域网远程监控电脑屏幕的方法》文章介绍了两种使用Python在局域网内实现远程监控电脑屏幕的方法,方法一使用mss和socket,方法二使用PyAutoGUI和Flask,每种方... 目录方法一:使用mss和socket实现屏幕共享服务端(被监控端)客户端(监控端)方法二:使用PyA

Spring Boot基于 JWT 优化 Spring Security 无状态登录实战指南

《SpringBoot基于JWT优化SpringSecurity无状态登录实战指南》本文介绍如何使用JWT优化SpringSecurity实现无状态登录,提高接口安全性,并通过实际操作步骤... 目录Spring Boot 实战:基于 JWT 优化 Spring Security 无状态登录一、先搞懂:为什

一文详解Java常用包有哪些

《一文详解Java常用包有哪些》包是Java语言提供的一种确保类名唯一性的机制,是类的一种组织和管理方式、是一组功能相似或相关的类或接口的集合,:本文主要介绍Java常用包有哪些的相关资料,需要的... 目录Java.langjava.utiljava.netjava.iojava.testjava.sql

在DataGrip中操作MySQL完整流程步骤(从登录到数据查询)

《在DataGrip中操作MySQL完整流程步骤(从登录到数据查询)》DataGrip是JetBrains公司出品的一款现代化数据库管理工具,支持多种数据库系统,包括MySQL,:本文主要介绍在D... 目录前言一、登录 mysql 服务器1.1 打开 DataGrip 并添加数据源1.2 配置 MySQL

Springboot中JWT登录校验及其拦截器实现方法

《Springboot中JWT登录校验及其拦截器实现方法》:本文主要介绍Springboot中JWT登录校验及其拦截器实现方法的相关资料,包括引入Maven坐标、获取Token、JWT拦截器的实现... 目录前言一、JWT是什么?二、实现步骤1.引入Maven坐标2.获取Token3.JWT拦截器的实现4.

linux ssh如何实现增加访问端口

《linuxssh如何实现增加访问端口》Linux中SSH默认使用22端口,为了增强安全性或满足特定需求,可以通过修改SSH配置来增加或更改SSH访问端口,具体步骤包括修改SSH配置文件、增加或修改... 目录1. 修改 SSH 配置文件2. 增加或修改端口3. 保存并退出编辑器4. 更新防火墙规则使用uf

一文解析C#中的StringSplitOptions枚举

《一文解析C#中的StringSplitOptions枚举》StringSplitOptions是C#中的一个枚举类型,用于控制string.Split()方法分割字符串时的行为,核心作用是处理分割后... 目录C#的StringSplitOptions枚举1.StringSplitOptions枚举的常用

一文详解Python如何开发游戏

《一文详解Python如何开发游戏》Python是一种非常流行的编程语言,也可以用来开发游戏模组,:本文主要介绍Python如何开发游戏的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、python简介二、Python 开发 2D 游戏的优劣势优势缺点三、Python 开发 3D

java程序远程debug原理与配置全过程

《java程序远程debug原理与配置全过程》文章介绍了Java远程调试的JPDA体系,包含JVMTI监控JVM、JDWP传输调试命令、JDI提供调试接口,通过-Xdebug、-Xrunjdwp参数配... 目录背景组成模块间联系IBM对三个模块的详细介绍编程使用总结背景日常工作中,每个程序员都会遇到bu

Java服务实现开启Debug远程调试

《Java服务实现开启Debug远程调试》文章介绍如何通过JVM参数开启Java服务远程调试,便于在线上排查问题,在IDEA中配置客户端连接,实现无需频繁部署的调试,提升效率... 目录一、背景二、相关图示说明三、具体操作步骤1、服务端配置2、客户端配置总结一、背景日常项目中,通常我们的代码都是部署到远程