关于ssh命令的几个使用小技巧(r11笔记第27天)

简介: ssh命令其实用了些日子了,但是感觉长进不大,主要原因是对它不够了解。 我想绝大多数的系统环境我还是使用ssh的方式会多一些,就这样看起来小米加步枪的工作方式,想想远离图形界面工具管理数据库也有好几年了。

ssh命令其实用了些日子了,但是感觉长进不大,主要原因是对它不够了解。

我想绝大多数的系统环境我还是使用ssh的方式会多一些,就这样看起来小米加步枪的工作方式,想想远离图形界面工具管理数据库也有好几年了。

    今天早上突然想起来有一个同事的工作环境需要我开更高一些的权限,没过多久,我就得到了一个IP列表,这些服务器都是需要开通较高的权限。因为我们使用的都是中控机器去免密码登录,所以我需要给他开通这些服务器的访问权限,看起来工作量还不小。

常规的思路是:

  1. 拷贝.ssh/id_rsa.pub到目标服务器,比如目标服务器是10.12.1.1,则命令为:

    scp .ssh/id_rsa.pub root@10.12.1.1:~

  2. 然后ssh登录到目标端,执行

    cat ~/id_rsa.pub >> ~/.ssh/authorized_keys

  3. 然后简单查看authorized_keys文件,验证一下是否连接正常

如果是多台服务器,这个操作就显得很繁琐。对于重复性的繁琐操作我很反感,没什么技术含量还耗费时间。所以我就停下来想,还有没有其他更好的方式,使用一个命令就能够搞定最好。

    果然还是磨刀不误砍柴工,经过一番摸索和网络的帮助,找到了以下的几种方式。

第一种方式是使用ssh-copy-id来完成,这个是linux字典的命令行工具。具体可以参考sskLinux命令ssh-copy-id (r10笔记第21天)

第二种方式是免脚本传输,直接在远程调用,使用管道的方式

比如

cat ~/.ssh/id_rsa.pub |ssh 10.12.1.1   "cat - >> ~/.ssh/authorized_keys"


第三种方式也是免脚本传输,和上面的命令略有一些差别.

ssh 10.12.1.1  "cat - >> ~/.ssh/authorized_keys" <  ~/.ssh/id_rsa.pub


上面三种方式都是经过检验还不错的方法,能简化繁琐重复的工作,本身就是生活质量的提高啊。大家有什么好的建议也希望一并提出来。

之前总结过的几篇关于命令的使用,希望对大家有所帮助。


一些极度危险的linux命令(r2笔记49天)

使用Linux命令发送邮件(r2笔记94天)

【非原创】完全用Linux工作(下)(r4笔记第86天)

巧用linux命令做图片下载器(r4笔记第7天)

一些“简单”的linux命令(r2笔记46天)

有趣的linux命令总结(78天)

linux过滤空文件的命令总结(r2笔记40天)

vi的补充学习(r4笔记第25天)

实用的top命令(r3笔记54天)





目录
相关文章
|
7月前
|
Linux 网络安全
Linux命令(124)之ssh
Linux命令(124)之ssh
78 2
|
网络安全 数据安全/隐私保护
ssh远程执行命令自动输入密码方式
ssh远程执行命令自动输入密码方式
2200 0
|
7月前
|
安全 Shell Linux
【Shell 命令集合 文件管理】Linux ssh 远程主机之间复制文件 scp 命令使用教程
【Shell 命令集合 文件管理】Linux ssh 远程主机之间复制文件 scp 命令使用教程
221 0
|
6月前
|
安全 Linux Shell
Linux中SSH命令介绍
Linux中SSH命令介绍
149 2
|
2月前
|
大数据 网络安全 数据安全/隐私保护
大数据-03-Hadoop集群 免密登录 超详细 3节点云 分发脚本 踩坑笔记 SSH免密 集群搭建(二)
大数据-03-Hadoop集群 免密登录 超详细 3节点云 分发脚本 踩坑笔记 SSH免密 集群搭建(二)
135 5
|
2月前
|
XML 大数据 网络安全
大数据-03-Hadoop集群 免密登录 超详细 3节点云 分发脚本 踩坑笔记 SSH免密 集群搭建(一)
大数据-03-Hadoop集群 免密登录 超详细 3节点云 分发脚本 踩坑笔记 SSH免密 集群搭建(一)
71 4
|
7月前
|
Ubuntu Shell Linux
使用sshpass工具通过SSH执行远程命令
`sshpass`是一个用于在脚本中自动输入SSH密码的工具 **在Debian/Ubuntu上安装sshpass:** ```bash sudo apt-get install sshpass ``` **在CentOS/RHEL上安装sshpass:** ```bash sudo yum install sshpass ``` **在Fedora上安装sshpass:** ```bash sudo dnf install sshpass ``` 安装完成后,你可以使用`sshpass`命令通过SSH执行远程命令。以下是一个示例: ```bash sshpass -p 'yo
682 0
|
4月前
|
安全 Linux Shell
SSH 命令完整实用指南 | Linux SSH 服务
【8月更文挑战第20天】
490 0
|
4月前
|
jenkins 网络安全 持续交付
Jenkins Pipeline 流水线 - 上传文件 Publish over SSH 执行命令
Jenkins Pipeline 流水线 - 上传文件 Publish over SSH 执行命令
249 0
|
7月前
|
安全 网络协议 Linux
Linux ssh 命令详解
Linux ssh 命令详解
198 0