位置: 编程技术 - 正文
推荐整理分享Linux下实现SSH免密码登录和实现秘钥的管理、分发、部署SHELL脚本分享(linuxssh免密登录),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:linux使用ssh命令,linux使用ssh命令,linux sshkey,linux ssh工具 知乎,linux ssh gui,linux sshkey,linux ssh gui,linux服务器ssh如何配置免密码登录,内容如对您有帮助,希望把文章链接给更多的朋友!
环境:
ssh server: ... server.example.comssh client: ... client.example.com
通过root用户建立秘钥认证实现SHELL脚本管理,分发,部署
首先client端创建秘钥对,并将公钥分发给需要登录的SSH服务端
注:公钥相当于锁,私钥相当于钥匙,我们这里相当于在客户端创建一对钥匙和锁,想要做到SSH免密码登录,就相当于我们将锁分发到服务端并装锁,然后客户端就可以利用钥匙开锁。
一.建立秘钥认证
1.在客户端创建秘钥对:(ssh client)一路回车即可2.查看生成的秘钥对:(ssh client)秘钥生成完毕

3.将公钥(锁)分发到SSH服务端:(ssh client)注:若非root用户,以及自定义SSH端口,则格式为:输入yes,然后密码后回车:公钥分发完毕
4.服务端查看收到的分发文件:(ssh server)成功收到
5.客户端验证登陆:(ssh client)查看服务端IP地址:注:这里遇到警告提示“Address ... maps to bogon, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT!”。解决办法为修改客户端/etc/hosts文件,将服务端的ip地址与主机名对应关系写进去就可以了。重新查看无错误提示:查看服务端内存二.创建SHELL脚本实现批量管理:(ssh client)1.创建脚本:2.生成IP列表:(若有多台SSH服务端需要管理,这里以此类推即可)3.执行脚本:管理成功
三.创建SHELL脚本实现批量分发:(ssh client)
1.创建脚本:脚本IP列表已创建执行脚本:将本地/root下文件分发到SSH服务端主机分发成功
四.批量部署:
这里的部署就结合了SHELL脚本批量管理和分发两个功能。比如你要部署N台SSH服务端批量安装APACHE。
1.写好APACHE安装脚本。2.将安装脚本分发到SSH服务端。3.利用SHELL管理远端执行该脚本即可。这里就不做过多演示,有机会我整理下我的LAMP文档,写个APACHE脚本,在这里演示下。注:因为涉及风险操作。所以不推荐线上利用root用户进行批量管理操作。建议设置普通账户,再利用sudo提权操作。
通过普通用户建立秘钥认证并sudo提权进行管理,分发,部署注:默认三个回车完成创建输入密码,分发完毕验证:返回...端IP即表明秘钥验证成功。分发:注:客户端user用户现在可以免密码分发到服务端user所属文件夹,但若想分发到root所属文件夹,则需要sudo提权。1.服务端sudo提权:登录user账户查看账户信息:2.客户端先分发到服务端user用户家目录:2.连接服务端后执行sudo cp命令执行本地拷贝:拷贝成功注:是将/test1目录拷贝到/test2/目录下是将/test1目录下的所有文件拷贝到/test2/目录下-------大功告成--------
Shell正则表达式之grep、sed、awk实操笔记 最近一直在研究shell脚本这块,刚好闲下来整了下自己手头上比较好的资料中的一些范例,以下是我整理的鸟哥私房菜里面正则表达式里面比较基础的一
3个备份系统文件并邮件发送的Shell脚本分享 1.安装MUTT邮件客户端#yuminstallmutt-y2.创建脚本#vi/etc/rc.d/mail_to_bak_daily.sh版本一:#!/bin/bash#=========================================================#请输入,你想让备
CentOS 6.3下给PHP添加mssql扩展模块教程 如果在LINUX系统上需要使用PHP连接MicrosoftSQLServer数据库,我们常见的连接数据库方式是使用ODBC方式连接.FreeTDS为Linux系统提供了TDS协议的开源客户端。
上一篇:一个监控LINUX目录和文件变化的Shell脚本分享(linux监控程序)
下一篇:Shell正则表达式之grep、sed、awk实操笔记(shell正则表达式语法)