windows使用python脚本实现ssh-copy-id免密钥ssh登录linux
2021/8/16 7:07:37
本文主要是介绍windows使用python脚本实现ssh-copy-id免密钥ssh登录linux,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1 windows 安装openssh
2 打开cmd,运行命令行 ssh-keygen -t rsa
3 进入用户名/.ssh文件夹
4 使用ptyhon 同步 公钥 id_rsa.pub至linux服务器
python ssh-copy-id.py -i :c:/users/{根换自己当前登录用户}/.ssh/id_rsa.pub root@192.168.56.101
5 按提示要求输入linux密码2次就可以完成windows授权,再次使用 ssh root@192.xx.xx.xx 就可以直接登录了
ps:如果直接 python ssh-copy-id.py root@192.168.56.101 会提示找不到公钥文件
"""ssh-copy-id for Windows. Example usage: python ssh-copy-id.py ceilfors@my-remote-machine This script is dependent on msysgit by default as it requires scp and ssh. For convenience you can also try that comes http://bliker.github.io/cmder/. """ #ssh-copy-id.py import argparse, os from subprocess import call def winToPosix(win): """Converts the specified windows path as a POSIX path in msysgit. Example: win: C:\\home\\user posix: /c/home/user """ posix = win.replace('\\', '/') return "/" + posix.replace(':', '', 1) parser = argparse.ArgumentParser() parser.add_argument("-i", "--identity_file", help="identity file, default to ~\\.ssh\\idrsa.pub", default=os.environ['HOME'] + "\\.ssh\\id_rsa.pub") parser.add_argument("-d", "--dry", help="run in the dry run mode and display the running commands.", action="store_true") parser.add_argument("remote", metavar="user@machine") args = parser.parse_args() local_key = winToPosix(args.identity_file) remote_key = "~/temp_id_rsa.pub" # Copy the public key over to the remote temporarily scp_command = "scp {} {}:{}".format(local_key, args.remote, remote_key) print(scp_command) if not args.dry: call(scp_command) # Append the temporary copied public key to authorized_key file and then remove the temporary public key ssh_command = ("ssh {} " "mkdir ~/.ssh;" "touch ~/.ssh/authorized_keys;" "cat {} >> ~/.ssh/authorized_keys;" "rm {};").format(args.remote, remote_key, remote_key) print(ssh_command) if not args.dry: call(ssh_command)
这篇关于windows使用python脚本实现ssh-copy-id免密钥ssh登录linux的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-12如何创建可引导的 ESXi USB 安装介质 (macOS, Linux, Windows)
- 2024-11-08linux的 vi编辑器中搜索关键字有哪些常用的命令和技巧?-icode9专业技术文章分享
- 2024-11-08在 Linux 的 vi 或 vim 编辑器中什么命令可以直接跳到文件的结尾?-icode9专业技术文章分享
- 2024-10-22原生鸿蒙操作系统HarmonyOS NEXT(HarmonyOS 5)正式发布
- 2024-10-18操作系统入门教程:新手必看的基本操作指南
- 2024-10-18初学者必看:操作系统入门全攻略
- 2024-10-17操作系统入门教程:轻松掌握操作系统基础知识
- 2024-09-11Linux部署Scrapy学习:入门级指南
- 2024-09-11Linux部署Scrapy:入门级指南
- 2024-08-21【Linux】分区向左扩容的方法