大家都知道,一个悠久的历史故事,使用SSH密钥对就可以不用密码登陆远程计算机。经典资料也是不少,不过那些资料对新学者可是有点太不象人话了,不好理解。所以本文试图用更人性一点的语言解释,并演示如何在Mac之间实现。
不得已,还得先说说术语。SSH密钥对,说白了就是一对锁和钥匙。密钥对之所以说是"对",那是因为它是由叫做公有和私有两个密钥组成,而且是一对一的一对,它们最初是由随机产生的一对质数生成的-具体深度的技术细节要牵扯到数学,头大的很。目前来说,针对世界上99.99%的盗贼,基本是不可能破解的,也就是无法通过共有密钥,来反推出私有密钥的内容。总之吧,记住:公有密钥是可以公开给任何人的,而私有密钥是要自己保存好的;所以,把它们当作一把钥匙开一把锁。
通过工具,可以制作一把钥匙(私有密钥)和一把锁(公有密钥),这个锁只能使用这一把把钥匙打开,在计算机这个可以自由复制的世界里,钥匙和锁都可以复制,如果你好好保管,不把钥匙丢失/公开,那么锁做多少把都无所谓,反正就是这一把钥匙可以开,也就是说,咱可以给要控制的所有计算机都安装这把锁的复制品,那么用这一把钥匙就可以控制这些计算机了。有的时候为了安全,你还可以给这把钥匙加上一个暗号(passphrass),暗号不对,这把钥匙也没法使用。
计算机系统就如同一座防卫森严的城堡,它的围墙根,有个正门(登录窗口服务),是让人们正常进入的通道,那儿有个门卫(登陆验证程序)让你出示证件(用户名和密码);有时,门卫需要打电话给大管家,确认你的身份(网络用户登陆),因为通行证/路牌可以被盗/泄露,但是城墙内的那个管家只有一个,它认识所有被准许进入的人,管家一看,Ok就是这个人了,门卫才让你进,如果电话故障不通,你也从来没有来过留下指纹,就不让你进;有的时候一看就是本地熟人(本地帐户),打声招呼欧了,就让你进门去了;而本地熟人这个路数很容易出现问题,门卫可能被收买或者易容术骗过门卫。
为什么要用SSH密钥就可以不用密码登陆其它计算机呢?那是因为,你或者任何有足够权利的人(大管家自己或者大管家的替身)-在那个计算机的一面墙(ssh服务)上,安装了一道门(authorized_keys),在这个门上安装了锁,这个锁就是你的公有密钥,你拿着自己的那把钥匙-私有密钥,如果这把钥匙设置了暗号,那么在使用钥匙时你先要对上暗号-嘛哩嘛哩哄,打开这把锁,推开门就进去了。另外一个人-如果又足够权限,也可以安装自己的一个门和锁,用自己的钥匙开锁也可以进去。
一般来说,开SSH进去的路,都是区区弯弯的小路,不象正门,大道两旁灯火通明的,有会客室,有大厅,有厢房,人来人往的,你动动嘴就有衙役跟班的帮你四处行走,把事给办了;而SSH的小路,办什么事都要自己亲自去做,比较累,不过有些事情只要是mo men办起来也特别顺利,。
所以,计算机是否安全不能光看墙有多高,布满电网,拉着带刺铁丝网的,看上去挺吓人的。笨的去剪铁丝网,扛着大炮轰(暴力破解),巧的的找窍门,找到门就好说了。所以是否安全,主要看你墙上有多少门,每个门和门锁是否都足够安全。话说远了。
分享到:
相关推荐
部署SSH密钥脚本。 可在Linux、OSX系统中运行。 Usage: ./upload_key.sh <HOST> <PORT> [USER]
提供-osx OSX 的配置细节使用前GitHub 请务必生成新的 SSH 密钥以用于 GitHub。 ssh-keygen -t rsa -b 4096 -C " your.github.email@domain.com "ssh-add -K /path/to/generated/keypbcopy < /path/to/generate/...
OSX 下的 ssh 代理工具 SSHMole.zip,osx的ssh动态转发工具。
ssh-copy-id-for-OSX, 快速macosx端口有用的unix实用程序ssh副本 id 用于OSX的 ssh-copy-id实用的unix实用工具 ssh-copy-id的快速端口注意:现在,macOS Sierra在 /usr/bin 中包括一个板载的ssh-copy-id安装git ...
cmus-osx将轨道更改通知和媒体密钥支持添加到 (仅适用于macOS )。 安装 macOS会在媒体按键时自动启动iTunes。 建议安装 ,以防止这种情况的发生。 pip3 install cmus-osx cmus-osx install cmus-osx本机支持...
ros-install-osx:在OS X上安装ROS
Docker-OSX:Docker中的Mac! 在Docker中的本机OSX-KVM附近运行! X11转发!
installme-osx:我的个人脚本,用于设置新的OSX
ubuntu-usb-osx:在Mac上制作Ubuntu USB棒安装程序的Makefile
vagrant-osx:Mac OS X的Vagrant设置
设置OSX 在新安装的OSX上设置的第一件事。编码酿酒师/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" brew tap homebrew/cask brew tap homebrew/cask-...
archey-osx:漂亮的macOS终端美化脚本
fish-shell-setup-osx:教程:Fish,Fisher,Powerline字体+ iTerm2
为此,您需要在终端上启动以下命令: xcode-select --install 之后,您需要在github上连接并添加您的SSH密钥,如果您不再使用它,则可以使用以下命令生成它: # Look at the user folder if you have an .ssh ...
为Mac OSX安装FTK Imager git clone git@github.com:MrMugiwara/FTK-imager-OSX.git cd FTK-imager-OSX chmod +x ftkimager ./ftkimager --help如何在MAC OSX上使用FTK Imager Usage: ./ftkimager ...
docker-host使用Vagrant提供类似于的体验,并用作通过主机操作系统与进行交互的无缝层。 docker-host都有一个称为非常简单ansible剧本docker-host.yml了配置泊坞窗守护住在docker-host以及建立一个无缝的专用网络与...
OSX的扁平图标(但不仅限于此)预览 不要犹豫,要求您喜欢的应用程序图标,或留下您的反馈意见:)安装安装应用程序,文件夹,卷使用 。您必须才能在默认osx应用上安装图标好东西CODA-右键单击“ Coda应用程序”>...
关闭MyMac-OSX OSX 应用程序使用 Bonjour 与 iOS 设备通信远程关闭 mac。 还需要关闭 iOS 应用程序。 获取执照麻省理工学院
coreos-osx:用于macOS的本地开发dockerrkt CoreOS VM App非常简单
microsoft-todo-osx:适用于MacOS的非官方Microsoft ToDo应用