gpt4 book ai didi

python - 通过 Python 脚本拒绝所有用户基于密码的 SSH 登录

转载 作者:行者123 更新时间:2023-12-04 18:33:13 25 4
gpt4 key购买 nike

我正在编写一个 Python 脚本来拒绝远程服务器(Ubuntu 18.04)的基于密码的 SSH 登录。我将在我的主机系统 (Windows) 中运行 Python 脚本。因此,我已经使用 paramiko 模块与远程主机建立了 SSH 连接并初始化了 SSH 客户端。
为了拒绝基于密码的 SSH 登录,我应该编辑 /etc/ssh/sshd_config文件并将“PasswordAuthentication yes”行更改为“PasswordAuthentication no”
请注意,我的远程系统允许无密码 sudo .我只需要在 sshd_config 中进行此替换即可文件。
下面给出的是我尝试过的命令:

ssh_client.exec_command("sed -i 's/PasswordAuthentication yes/PasswordAuthentication no/g' /etc/ssh/sshd_config")
我遇到了错误: couldn't open temporary file .sedVg2nV6: Permission Denied有没有人遇到过这个?
除了 sed 之外,还有其他方法可以替换配置文件的一部分吗? ?是 sed仅适用于 .txt文件?

最佳答案

我觉得你应该改变ssh_client.exec_command("sed -i 's/PasswordAuthentication yes/PasswordAuthentication no/g' /etc/ssh/sshd_config")ssh_client.exec_command("sudo sed -i 's/PasswordAuthentication yes/PasswordAuthentication no/g' /etc/ssh/sshd_config") (sed 命令将以 root 权限执行)。

关于python - 通过 Python 脚本拒绝所有用户基于密码的 SSH 登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65570100/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com