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

相关文章

nginx 负载均衡配置及如何解决重复登录问题

《nginx负载均衡配置及如何解决重复登录问题》文章详解Nginx源码安装与Docker部署,介绍四层/七层代理区别及负载均衡策略,通过ip_hash解决重复登录问题,对nginx负载均衡配置及如何... 目录一:源码安装:1.配置编译参数2.编译3.编译安装 二,四层代理和七层代理区别1.二者混合使用举例

一文详解SpringBoot中控制器的动态注册与卸载

《一文详解SpringBoot中控制器的动态注册与卸载》在项目开发中,通过动态注册和卸载控制器功能,可以根据业务场景和项目需要实现功能的动态增加、删除,提高系统的灵活性和可扩展性,下面我们就来看看Sp... 目录项目结构1. 创建 Spring Boot 启动类2. 创建一个测试控制器3. 创建动态控制器注

一文详解Git中分支本地和远程删除的方法

《一文详解Git中分支本地和远程删除的方法》在使用Git进行版本控制的过程中,我们会创建多个分支来进行不同功能的开发,这就容易涉及到如何正确地删除本地分支和远程分支,下面我们就来看看相关的实现方法吧... 目录技术背景实现步骤删除本地分支删除远程www.chinasem.cn分支同步删除信息到其他机器示例步骤

Linux中SSH服务配置的全面指南

《Linux中SSH服务配置的全面指南》作为网络安全工程师,SSH(SecureShell)服务的安全配置是我们日常工作中不可忽视的重要环节,本文将从基础配置到高级安全加固,全面解析SSH服务的各项参... 目录概述基础配置详解端口与监听设置主机密钥配置认证机制强化禁用密码认证禁止root直接登录实现双因素

一文详解Java Stream的sorted自定义排序

《一文详解JavaStream的sorted自定义排序》Javastream中的sorted方法是用于对流中的元素进行排序的方法,它可以接受一个comparator参数,用于指定排序规则,sorte... 目录一、sorted 操作的基础原理二、自定义排序的实现方式1. Comparator 接口的 Lam

CSS3打造的现代交互式登录界面详细实现过程

《CSS3打造的现代交互式登录界面详细实现过程》本文介绍CSS3和jQuery在登录界面设计中的应用,涵盖动画、选择器、自定义字体及盒模型技术,提升界面美观与交互性,同时优化性能和可访问性,感兴趣的朋... 目录1. css3用户登录界面设计概述1.1 用户界面设计的重要性1.2 CSS3的新特性与优势1.

一文深入详解Python的secrets模块

《一文深入详解Python的secrets模块》在构建涉及用户身份认证、权限管理、加密通信等系统时,开发者最不能忽视的一个问题就是“安全性”,Python在3.6版本中引入了专门面向安全用途的secr... 目录引言一、背景与动机:为什么需要 secrets 模块?二、secrets 模块的核心功能1. 基

一文详解MySQL如何设置自动备份任务

《一文详解MySQL如何设置自动备份任务》设置自动备份任务可以确保你的数据库定期备份,防止数据丢失,下面我们就来详细介绍一下如何使用Bash脚本和Cron任务在Linux系统上设置MySQL数据库的自... 目录1. 编写备份脚本1.1 创建并编辑备份脚本1.2 给予脚本执行权限2. 设置 Cron 任务2

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热

一文全面详解Python变量作用域

《一文全面详解Python变量作用域》变量作用域是Python中非常重要的概念,它决定了在哪里可以访问变量,下面我将用通俗易懂的方式,结合代码示例和图表,带你全面了解Python变量作用域,需要的朋友... 目录一、什么是变量作用域?二、python的四种作用域作用域查找顺序图示三、各作用域详解1. 局部作