ssh 是什么?怎么用?有哪些误区?
作者:cookcyq 发布时间:2023-08-06 00:04:05
前言
相信有少许人包括我曾经认为 ssh
就是用来免密登录的,其实不然,它可涉及到非常多的东西,像 sftp / scp / winscp / 等都离不开 ssh,下面我们开始进入正文。
ssh 是什么
ssh 是一种远程加密传输协议
,并不是所谓的免密登录这一作用,那只是它的一小部分,你可以理解它跟 https
一样,是一种加密协议,有助于提高安全性,这样是不是更好理解了?
另外 ssh 在许多系统中都内置了,如 window、linux、mac
ssh 有什么用
ssh 加强了远程应用程序,它代替了传统远程协议 ftp、pop 和 telnet,因为这些协议本质上都是不安全的,它们都是明文传输数据,极易遭到中间人窃取信息,而 ssh 协议则可以解决这些问题,它在远程传输时给这些数据做了一层加密防护,使得攻击者难以破解,这就是为什么后来出了 sftp / scp / winscp
等协议,它们都是基于 ssh
创建出来的,像sftp
就是传统远程文件协议 ftp
的安全版。
ssh 怎么用
个人更喜欢叫它 远程工具
,即通过 ssh 命令来登录远程服务器,然后帮忙传递本地主机与服务器主机之间的数据并进行加密。
一、口令登录
命令如下
// 格式
ssh user@host
// 案例
ssh root@111.222.333.333
输入后以上命令后,ssh 就会提示让你输入远程服务器密码,输入正确密码后就可以进入远程服务器开始交互了,另外,由于口令登录每次都需要输入服务器密码,所以基本都是采用第二种方式:公钥登录。
TIp: 口令登录其实是解决了以前的‘中间人'攻击问题,因为以前的 ssh 登录是直接输入密码就可以进入服务器的,但是由于中间人可以冒充服务器来与客户机交互骗取密码,然后拿这个密码去跟真正的服务器做交互,这就是所谓的‘中间人攻击',后来为了解决这个问题才出现了
口令登录
,它在第一次远程主机时会主动发送一个指纹
,这个指纹
是服务器那边的,此时你可以找找看服务器的指纹
跟这个指纹
是否一致,如果一致就直接输入 yes 即可,也就是说口令登录给你了一个选择权,让你自己辨别是不是真的服务器。
二、公钥登录
公钥登录的作用就是所谓的免密登录
,使用方式也很简单,就是将公钥放到服务器的 ~/.ssh/authorized_keys
文件里面,下次登录时就省去密码验证直接进入服务器了。
1、有公钥就必须得有私钥,是一对来着,也叫做秘钥,默认会放在 .ssh/
目录里面,生成秘钥命令如下
ssh-keygen -t rsa -C "你的邮箱"
生成过程会让你提示让你输入一个密码,此密码可以防止当你的秘钥被别人窃取时多一层保护,不需要此密码的话可以一路回车
Enter passphrase (empty for no passphrase):
之后会在 ~/.ssh 自动生成两个文件: id_rsa
私钥 / id_rsa.pub
公钥
2、将私钥 id_rsa
交给 ssh-agent 管理
ssh-agent ~/.ssh/id_rsa
ssh-agent 作用:当你的秘钥设置了 passhrase 后,每次登陆就需要输入这个密码了,这样会很麻烦,而
ssh-agent
就是来解决这个问题的,如果这个命令提示报错,可能你没有启动,可以在 git / linux 输入如下命令启动 ssh-agent
eval `ssh-agent`
3、将 id_rsa.pub
内容上传服务器~/.ssh/authorized_keys
上传方式1:借助 ssh-copy-id 工具
ssh-copy-id -i id_rsa user@host
上传方式2:手动命令上传
$ cat ~/.ssh/id_rsa.pub | ssh user@host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
以上命令将 user@host
替换你的即可,现在再去登录服务器就可以免密登录了。
ssh 重新纠正
ssh 不是专门实现免密登录,那只是它的冰山一角,ssh 更多的是用来远程操作。ssh 按照它提供的命令去与远程服务机进行交互,在这交互期间它会帮你加密传输,这种就叫做远程加密传输协议
,你可以理解为类似 https
,只不过比 https
多了个命令交互操作
来源:https://blog.csdn.net/cookcyq__/article/details/121966265
猜你喜欢
- 目录VMware BurpSuite一、虚拟机镜像和VMware安装和使用二、nmap安装和在虚拟机中使用1.nmap包含四项基本功能:2.
- 从最近几天吵得热火的Blogbus的“自频道”,到早些时候Feedsky低调推出的“我的博客圈”,再到更早之前的Google Reader的
- 执着就是做网站要不怕困难,坚持到底。网站发展过程中可能遇到资金紧张、对手竞争、黑客攻击等各种各样的困难。但我相信,有一种执着的精神,有不畏艰
- Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了II
- 常用组件主要包括Aspjpeg、Jmail、LyfUpload、动易、ISAPI_ReWrite等,本文就仅说这5种,其他类型组件可以根据需
- 首先要提到的是这里的内网是指一般我们网吧内部环境的内网,对局域网内网我没什么好说的,愿花钱的去DNS0755好了。一个基本条件:一个公网IP
- 会员注册信息主要在 dede_member 表中系统/SQL命令行工具查询表中有多少会员 select * from dede_member
- Linux中许多常用命令是必须掌握的,这里将我学linux入门时学的一些常用的基本命令分享给大家一下,希望可以帮助你们。这个是我将鸟哥书上的
- 如果你想做个站,然后通过点击广告来赚点钱的话,那你有没有想过哪个行业的关键字价格是比较高的呢?点击收入有时候不单要看你的有效点击
- 一、注册Google AdSense{$ggas_text$}单击申请按纽:开始注册:请在继续前确认所有信息都是正确的。在此之后不能更改付款
- 本来我想大喊一声“博客访问量就是狗屁”并将其作为本文标题,后来觉得似乎有“标题党
- 图为百度联盟贴片广告管理后台界面腾讯科技讯 4月12日消息,百度网盟推广近日正式宣布开通“贴片推广”业务,首批邀请的站点名单尚未公布,外界预
- 开设个人博客的朋友使用WordPress不在少数,那么也难免不了更换空间和域名的情况,由于笔者亲历了一次更换空间和域名的情况,将博客从AAA
- 一、Bridged(桥接模式)常用的虚拟机软件有VMware Workstations和VirtualBox等。在使用虚拟机软件的时候,很多
- 对于一个网络管理员来说,垃圾邮件的困扰并不是接收这些垃圾邮件,而是试图防止垃圾邮件发送者使用你的邮件服务器来进行中继转发,这项工作很关键,因
- 侧边栏的标签云(Tag Cloud)一直是 WordPress 2.3+ 以后的内置功能,一般直接调用函数 wp_tag_cloud 或者在
- 今天在使用Virtualbox中的Ubuntu虚拟机,想安装增强功能来实现更改分辨率,但是在安装时出错:未能加载虚拟光驱 VBoxsGues
- 由于ASP它本身是服务器提供的一贡服务功能,特别是最近由dvbbs的upfile文件出现漏洞以来,其高度的隐蔽性和难查杀性,对网站的安全造成
- Google App Engine是Google提供的可扩展系统上构建网络应用程序。每个 Google App Engine 应用程序都可使
- 国外站点网页访问速度慢,但下载速度令人非常满意,这到底是什么原因呢?至于美国站点访问慢就不用说了,但下载速度Blinux曾请人做过测试,速度