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

相关文章

CentOS7更改默认SSH端口与配置指南

《CentOS7更改默认SSH端口与配置指南》SSH是Linux服务器远程管理的核心工具,其默认监听端口为22,由于端口22众所周知,这也使得服务器容易受到自动化扫描和暴力破解攻击,本文将系统性地介绍... 目录引言为什么要更改 SSH 默认端口?步骤详解:如何更改 Centos 7 的 SSH 默认端口1

一文带你搞懂Python中__init__.py到底是什么

《一文带你搞懂Python中__init__.py到底是什么》朋友们,今天我们来聊聊Python里一个低调却至关重要的文件——__init__.py,有些人可能听说过它是“包的标志”,也有人觉得它“没... 目录先搞懂 python 模块(module)Python 包(package)是啥?那么 __in

Android实现两台手机屏幕共享和远程控制功能

《Android实现两台手机屏幕共享和远程控制功能》在远程协助、在线教学、技术支持等多种场景下,实时获得另一部移动设备的屏幕画面,并对其进行操作,具有极高的应用价值,本项目旨在实现两台Android手... 目录一、项目概述二、相关知识2.1 MediaProjection API2.2 Socket 网络

一文详解如何在Python中从字符串中提取部分内容

《一文详解如何在Python中从字符串中提取部分内容》:本文主要介绍如何在Python中从字符串中提取部分内容的相关资料,包括使用正则表达式、Pyparsing库、AST(抽象语法树)、字符串操作... 目录前言解决方案方法一:使用正则表达式方法二:使用 Pyparsing方法三:使用 AST方法四:使用字

电脑死机无反应怎么强制重启? 一文读懂方法及注意事项

《电脑死机无反应怎么强制重启?一文读懂方法及注意事项》在日常使用电脑的过程中,我们难免会遇到电脑无法正常启动的情况,本文将详细介绍几种常见的电脑强制开机方法,并探讨在强制开机后应注意的事项,以及如何... 在日常生活和工作中,我们经常会遇到电脑突然无反应的情况,这时候强制重启就成了解决问题的“救命稻草”。那

kali linux 无法登录root的问题及解决方法

《kalilinux无法登录root的问题及解决方法》:本文主要介绍kalilinux无法登录root的问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,... 目录kali linux 无法登录root1、问题描述1.1、本地登录root1.2、ssh远程登录root2、

一文详解JavaScript中的fetch方法

《一文详解JavaScript中的fetch方法》fetch函数是一个用于在JavaScript中执行HTTP请求的现代API,它提供了一种更简洁、更强大的方式来处理网络请求,:本文主要介绍Jav... 目录前言什么是 fetch 方法基本语法简单的 GET 请求示例代码解释发送 POST 请求示例代码解释

Ubuntu中远程连接Mysql数据库的详细图文教程

《Ubuntu中远程连接Mysql数据库的详细图文教程》Ubuntu是一个以桌面应用为主的Linux发行版操作系统,这篇文章主要为大家详细介绍了Ubuntu中远程连接Mysql数据库的详细图文教程,有... 目录1、版本2、检查有没有mysql2.1 查询是否安装了Mysql包2.2 查看Mysql版本2.

springboot security验证码的登录实例

《springbootsecurity验证码的登录实例》:本文主要介绍springbootsecurity验证码的登录实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录前言代码示例引入依赖定义验证码生成器定义获取验证码及认证接口测试获取验证码登录总结前言在spring

一文详解SpringBoot响应压缩功能的配置与优化

《一文详解SpringBoot响应压缩功能的配置与优化》SpringBoot的响应压缩功能基于智能协商机制,需同时满足很多条件,本文主要为大家详细介绍了SpringBoot响应压缩功能的配置与优化,需... 目录一、核心工作机制1.1 自动协商触发条件1.2 压缩处理流程二、配置方案详解2.1 基础YAML