使用sudo运行命令时连接到SSH身份验证代理

安东尼·格乔根

我使用etckeeper将各种操作系统配置保持在版本控制之下。到目前为止,我很满意只使用本地Git存储库来跟踪更改,但是我发现我没有充分利用此功能,因此我决定配置远程存储库以保留副本会很有用这些存储库中的任何一个,以便/etc可以从其他计算机上获得配置。

在远程服务器上,我创建了一个裸仓库(确保只有git用户可以访问其内容):

sudo -u git -H git init --bare ~git/repos/anthony-etc.git
chmod -R 700 ~git/repos/anthony-etc.git/

在远程服务器上的SSH服务被配置为允许用户(包括git用户)只能使用密钥进行验证-和我已经上传了我的个人公钥到.authorized_keys了的git服务器上的用户。

在本地计算机上,我将其添加为远程存储库:

sudo git remote add origin [email protected]:/home/git/repos/anthony-etc.git/

由于只有超级用户才能修改/etc目录(包括其.git子目录)中的文件,因此所有Git命令都使用来运行sudo

在尝试使用SSH进行推送之前,我检查了是否可以使用当前的SSH身份验证代理:

$ sudo ssh-add -l
Could not open a connection to your authentication agent.

使用时,此操作失败sudo,我想知道如何配置sudo为与已经以非超级用户身份使用的SSH身份验证代理一起使用。

安东尼·格乔根

它不起作用的原因SSH_AUTH_SOCK是,当通过运行命令时,用于存储SSH代理的Unix域套接字文件名变量不在环境中sudo

默认情况下,该env_reset选项在sudo安全策略中处于启用状态,并且许多GNU / Linux发行版通过在/etc/sudoers配置文件中附带以下行来使其明确

Defaults    env_reset

这样可以确保命令在最小的环境中运行,并且在受限制的环境中删除了大多数调用用户的环境变量。

可以将特定变量列入白名单,以便将其保留在环境中。为了安全起见,我使用visudo命令来编辑sudoers配置文件。另外,/etc/sudoers没有直接修改,而是将自定义修改添加到/etc/sudoers.d/目录中的单独文件为此,我运行sudo visudo -f /etc/sudoers.d/custom以使配置包含以下行:

Defaults    env_keep += "SSH_AUTH_SOCK"

现在,运行sudo ssh-add -l显示我可以连接到身份验证代理,并且可以继续更新远程存储库:

sudo git push --set-upstream origin master

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

与Keepass + Putty一起使用SSH密钥身份验证时的sudo身份验证

来自分类Dev

使用GFTP连接到Amazon AWS(SSH使用密钥身份验证.pem)

来自分类Dev

无法使用公钥身份验证通过 SSH 连接到 Windows

来自分类Dev

如何使用Windows身份验证从命令提示符连接到SQL Server

来自分类Dev

MongoDB使用Shell命令连接到身份验证数据库

来自分类Dev

连接到MMS ReplicaSet时的Mongo身份验证错误

来自分类Dev

使用代理身份验证的twilio Java连接

来自分类Dev

尝试使用jdbc从Clojure连接到Postgresql时,密码身份验证失败

来自分类Dev

使用用户身份验证小牛连接到WPA2时出现问题?

来自分类Dev

在Linux上开始使用JMX身份验证时无法连接到JMX

来自分类Dev

使用身份验证连接到站点时,Swift 3 NSURLSession/NSURLConnection HTTP 加载失败

来自分类Dev

使用 JDBC 和 Kerberos 身份验证连接到 Hive 时出现异常

来自分类Dev

使用 ASP.NET MVC 连接到 SQL Server 时出现登录身份验证错误

来自分类Dev

是否可以使用HTTP基本身份验证通过Jest连接到Nginx代理的Elasticsearch?

来自分类Dev

Django使用证书身份验证连接到Postgresql

来自分类Dev

使用SQL身份验证连接到ReplicationServer的问题

来自分类Dev

使用DBeaver连接到SQL Server Windows身份验证

来自分类Dev

如何使用Java身份验证连接到Cassandra 5.1

来自分类Dev

无法使用通用身份验证连接到设备“192.168.1.17”

来自分类Dev

SSH通过身份验证需要代理

来自分类Dev

无法打开与身份验证代理的连接

来自分类Dev

使用代理时,Weblogic中断CXF证书身份验证

来自分类Dev

使用AD凭据时,在成功进行身份验证后SSH断开连接

来自分类Dev

ssh-agent / ssh-add错误:无法打开与身份验证代理的连接

来自分类Dev

具有凭据的WebProxy无需身份验证即可连接到代理

来自分类Dev

将pfsense Squid代理连接到带身份验证的父级Bluecoat

来自分类Dev

监控代理无法连接到启用身份验证的副本集

来自分类Dev

无法将生成的 ssh 密钥添加到 ssh 代理“无法打开与您的身份验证代理的连接”

来自分类Dev

ssh-add抱怨:无法打开与身份验证代理的连接

Related 相关文章

  1. 1

    与Keepass + Putty一起使用SSH密钥身份验证时的sudo身份验证

  2. 2

    使用GFTP连接到Amazon AWS(SSH使用密钥身份验证.pem)

  3. 3

    无法使用公钥身份验证通过 SSH 连接到 Windows

  4. 4

    如何使用Windows身份验证从命令提示符连接到SQL Server

  5. 5

    MongoDB使用Shell命令连接到身份验证数据库

  6. 6

    连接到MMS ReplicaSet时的Mongo身份验证错误

  7. 7

    使用代理身份验证的twilio Java连接

  8. 8

    尝试使用jdbc从Clojure连接到Postgresql时,密码身份验证失败

  9. 9

    使用用户身份验证小牛连接到WPA2时出现问题?

  10. 10

    在Linux上开始使用JMX身份验证时无法连接到JMX

  11. 11

    使用身份验证连接到站点时,Swift 3 NSURLSession/NSURLConnection HTTP 加载失败

  12. 12

    使用 JDBC 和 Kerberos 身份验证连接到 Hive 时出现异常

  13. 13

    使用 ASP.NET MVC 连接到 SQL Server 时出现登录身份验证错误

  14. 14

    是否可以使用HTTP基本身份验证通过Jest连接到Nginx代理的Elasticsearch?

  15. 15

    Django使用证书身份验证连接到Postgresql

  16. 16

    使用SQL身份验证连接到ReplicationServer的问题

  17. 17

    使用DBeaver连接到SQL Server Windows身份验证

  18. 18

    如何使用Java身份验证连接到Cassandra 5.1

  19. 19

    无法使用通用身份验证连接到设备“192.168.1.17”

  20. 20

    SSH通过身份验证需要代理

  21. 21

    无法打开与身份验证代理的连接

  22. 22

    使用代理时,Weblogic中断CXF证书身份验证

  23. 23

    使用AD凭据时,在成功进行身份验证后SSH断开连接

  24. 24

    ssh-agent / ssh-add错误:无法打开与身份验证代理的连接

  25. 25

    具有凭据的WebProxy无需身份验证即可连接到代理

  26. 26

    将pfsense Squid代理连接到带身份验证的父级Bluecoat

  27. 27

    监控代理无法连接到启用身份验证的副本集

  28. 28

    无法将生成的 ssh 密钥添加到 ssh 代理“无法打开与您的身份验证代理的连接”

  29. 29

    ssh-add抱怨:无法打开与身份验证代理的连接

热门标签

归档