43/70 ssh常规用法详解

ssh 算是 linux 下最常用的工具之一,虽然用了很多次但对它并不是很了解,本文将查找一些资料并总结自己使用的 ssh ,希望能够通过这篇文章,帮助理解和使用 ssh。

最早的时候,互联网通信都是明文通信,一旦被截获,内容就暴露无疑。1995 年,芬兰学者Tatu Ylonen设计了 ssh 协议,将登录信息全部加密,成为互联网安全的一个基本解决方案,迅速在全世界获得推广,目前已经成为 linux 系统的标准配置。

ssh 是一种网络协议,用于计算机之间的加密登录。如果一个用户从本地计算机,使用 ssh 协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露。需要指出的是,ssh 只是一种协议,存在多种实现,既有商业实现,也有开源实现。

基本用法

假定你要以用户名 user,登录远程主机 host,如:ssh user@host;SSH的默认端口是 22,也就是说,你的登录请求会送进远程主机的 22 端口。使用 p 参数,可以修改这个端口,如:ssh -p 2222 user@host

ssh 登录同样可以使用密码登录,输入用户名后,输入密码即可完成登录,但一般我们不这么做,我们使用 ssh 的目的就是防止密码被截取,因此一般我们采用秘钥对的形式来验证本地主机和目标机是否可以配对。我们将公钥放在目标机器上,然后登录目标机器时,本地机器的私钥能够和目标机器的秘钥配对,则验证通过,否则验证失败。

值得注意的是,公钥并不需要特别在意,它往往是公开的,即便被别人获取也无法产生威胁,真正重要的是私钥。我们可以将公钥比作你的用户名,私钥则是你的密码。密码的重要性不言而喻,因此私钥一旦丢失往往会造成很严重的后果,我们往往需要更改私钥的存放位置,或者给私钥再设置一个使用密码。

本地SSH配置

  • 首先我们需要检查你电脑上现有的 ssh key:
$ cd ~/.ssh 检查本机的ssh密钥

如果提示:No such file or directory 说明你是第一次使用 git。

  • 生成新的SSH Key:
ssh-keygen -t rsa -C "邮件地址@youremail.com"

此处的邮箱地址,你可以输入自己的邮箱地址;注意2: 此处的「-C」的是大写的「C」

  • 然后系统会要你输入密码:
Enter passphrase (empty for no passphrase):<输入加密串>
Enter same passphrase again:<再次输入加密串>

在回车中会提示你输入一个密码,这个密码会在你提交项目时使用,相当于二次的加密,如果为空的话提交项目时则不用输入。这个设置是防止别人往你的项目里提交内容。个人嫌麻烦一般不会再设定密码,本身ssh的访问就属于本地自动加密认真,就比较安全,除非你秘钥丢失,否则一般不会出问题,

  • 看到这样的界面,就成功设置了本地的 ssh key了:

  • ~/.ssh/id_rsa.pub 就是需要使用的公钥,将该公钥加入到其他系统上面或者支持ssh服务的软件上面即可实现访问。

将本地公钥上传到远程linux服务器

不同的 Linux 之间 copy 文件常用有3种方法:

  • 第一种就是 ftp,也就是其中一台 Linux 安装 ftp Server,这样可以另外一台使用 ftp 的 client 程序来进行文件的 copy。
  • 第二种方法就是采用 samba 服务,类似 Windows 文件 copy 的方式来操作,比较简洁方便。
  • 第三种就是利用 scp 命令来进行文件复制。

scp 是有Security的文件 copy,基于 ssh 登录。操作起来比较方便,比如要把当前一个文件 copy 到远程另外一台主机上,可以如下命令。

scp /home/daisy/full.tar.gz root@172.19.2.75:/home/root

然后会提示你输入另外那台 172.19.2.75 主机的 root 用户的登录密码,接着就开始 copy 了。如果想反过来操作,把文件从远程主机 copy 到当前系统,也很简单。

scp root@/full.tar.gz 172.19.2.75:/home/root/full.tar.gz home/daisy/full.tar.gz
  • 我们将原始机的公钥拷贝到目标服务器的 .ssh 目录下,且命名为 authorized_keys。
scp /home/git/.ssh/id_rsa.pub git@ubuntu_server:/home/git/.ssh/authorized_keys

注意,ubuntu_server 为 ip 对应的名称,这边可以改成 ip 地址,git 为用户名。修改实体机(本地机而不是服务器)的 ip 配置文件 /ect/hosts,加入如下行:192.168.18.202 ubuntu_server, ubuntu_server 是你的虚拟机的主机名称,而 ubuntu_server 以后将代替 192.168.18.202 出现。如果你的虚拟机名不是 ubuntu_server,可以修改 /etc/hostname 中的名称。

注意:ssh在使用时无法通过VPN,需要人为手动做一些修改,这边主要是通过将需要ssh访问的ip地址直接经过网卡而不经过vpn。详细内容参见linux 下 ssh 通过VPN推送失败文章。**

windows 下使用 ssh

windows 使用 ssh 一般可以通过 putty 或者 secureCRT,这两款软件都是自带 ssh 服务的,一般你安装他们后,windows 上就可以使用 ssh 了。如果需要秘钥登录的话,需要手动加载秘钥位置,如:secureCRT 的秘钥在 tools 下的 manage agents keys -> add,具体的一些位置需要自己去查找,这边不再详细讨论。

windows 下除了 ssh 登录外,使用 git 时也会需要加载私钥,git 官方版回去默认位置找私钥,默认位置一般为当前用户目录下的 .ssh 文件夹下。对于 linux 就是 ~/.ssh/ 目录下,而 windows 则是 C:/users/当前登录用户/.ssh/ 目录下。

使用 WinSCP 时,也可以使用 scp 复制文件,注意该软件只能读 ppk 格式的秘钥,如果其采用的不是 openSSH 的秘钥,则需要通过工具转换以下,步骤为:

  • 工具->运行 PuTTYgen->load你的秘钥->save private key 保存转成 ppk 格式 (如果直接通过 WinSCP 生成秘钥对的话,可以在 PuTTYgen 中直接 点解 generate 生成新的秘钥对)
  • 工具->运行pageant->add key 将刚刚生成的秘钥载入进来

http://cnfeat.com/blog/2014/05/10/how-to-build-a-blog/
http://www.cnblogs.com/hitwtx/archive/2011/11/16/2251254.html
http://blog.csdn.net/hunanchenxingyu/article/details/40544513
http://www.ibm.com/developerworks/cn/linux/l-cn-sshforward/
http://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html
http://www.ruanyifeng.com/blog/2011/12/ssh_port_forwarding.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,884评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,347评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,435评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,509评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,611评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,837评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,987评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,730评论 0 267
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,194评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,525评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,664评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,334评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,944评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,764评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,997评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,389评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,554评论 2 349

推荐阅读更多精彩内容

  • 1、远程连接服务器 远程连接服务器对于管理员来说,是一个很有用的操作。它使得对服务器的管理更为方便。不过方便归方便...
    Zhang21阅读 39,487评论 0 20
  • SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group...
    shuff1e阅读 1,765评论 1 11
  • 目录 sshssh是什么ssh安装使用ssh登录远程主机退出登录使用ssh执行单条指令密钥验证详细操作 scp r...
    gustplus阅读 16,236评论 1 15
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,633评论 18 139
  • SSH 是常用的远程登录协议/工具。无论是管理远程主机,混 GitHub,上BBS,还是折腾自家的路由器,都离不开...
    ButteredCat阅读 4,378评论 0 3