我可以通过 ssh 转发环境变量吗?

2023-12-22

我使用多个不同的服务器,如果能够设置一些环境变量,以便当我通过 SSH 登录时它们在所有服务器上都处于活动状态,这将很有用。问题是,某些变量的内容包含敏感信息(散列密码),所以我不想把它留在 .bashrc 文件中——我只想将它保留在内存中。

我知道您可以使用 SSH 转发 DISPLAY 变量(通过 ForwardX11)或 SSH 代理进程(通过 ForwardAgent),所以我想知道是否有一种方法可以通过 SSH 连接自动转发任意环境变量的内容。理想情况下,我可以在 .ssh/config 文件中设置一些内容,以便它在我需要时自动运行。有任何想法吗?


可以,但是需要更改服务器配置。

阅读条目AcceptEnv in sshd_配置(5) http://unixhelp.ed.ac.uk/CGI/man-cgi?sshd_config+5 and SendEnv in ssh_配置(5) http://unixhelp.ed.ac.uk/CGI/man-cgi?ssh_config+5.

update:

您还可以在命令行上传递它们:

ssh foo@host "FOO=foo BAR=bar doz"

关于安全性,请注意,任何有权访问远程计算机的人都能够看到传递给任何正在运行的进程的环境变量。

如果您想对该信息保密,最好将其传递出去stdin:

cat secret_info | ssh foo@host remote_program
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我可以通过 ssh 转发环境变量吗? 的相关文章

随机推荐

  • 如何使用可变大小的缓冲区获取c类型结构中字段的值?

    import readboard import struct import ctypes as c def readbuffer data size struct unpack
  • 碰撞检测/从 ArrayList 中删除对象

    我目前正在尝试测试下落物体和盒子之间的碰撞 我了解基本的碰撞检测 但我的问题是我必须测试它是否有无限数量的下落物体 当这些对象 blossoms 被创建时 它们被存储在一个ArrayList中 ArrayList 处理画布上对象的绘制 使用
  • 通过ilasm更改可执行图标

    我有一个安装程序应用程序 其中嵌入了 resx 文件 其中包含一些信息 例如服务器名称 端口 密码等 我必须生成这个安装程序 这个过程是自动化的 并通过我们的网站完成 对于每个客户 这工作正常 我用ildasm用于反汇编程序并替换 resx
  • 来自浏览器的过时加密警告

    我已经启动了带有 Apache 2 4 和 SSL 的 Windows Server 当我连接时https www example com https www example com然后点击绿色锁 我有消息 您与网站的连接已使用过时的加密技
  • 使用 Python 将整个 JSON 转换为一个 SQLite 字段

    我有一个可能很简单的问题 我正在尝试从在线源中提取 JSON 并将其存储在 SQLite 表中 除了将数据存储在丰富的表中 对应于 JSON 中的许多字段 之外 我还想在每次拉取时将整个 JSON 转储到表中 该表看起来像 CREATE T
  • 实现接口的类列表

    有没有办法实现类似的东西 List
  • 在jquery中获取外部url的html

    如何使用 jquery 获取外部 URL 的 HTML 简短的回答是你不能 因为 AJAX 请求被限制在相同的 子 域和端口上 同源政策 https developer mozilla org En Same origin policy f
  • Robocopy 后,复制的目录和文件在目标驱动器上不可见

    我很高兴使用 robocopy 将我的计算机备份到外部 USB 驱动器 这很棒 因为它只复制已更改 更新 新的文件 我可以将外部驱动器带到任何机器上并查看它 就像它是计算机上的另一个驱动器一样 我最近购买了一个 750g 和另一个 1tb
  • CoreMotion 在后台状态更新

    借助最新 iOS 设备中的 M7 芯片 当用户使用 CMMotionActivityManager 从静止状态变为跑步 行走等时 可以通过编程方式获得通知 Stava 和 Runkeeper 都用过这个自动暂停 GPS 轮询 http gi
  • 如何从另一个页面控制viewPages页面

    我有一个ViewPager共 3 页listView在每个页面中 我想要动画listView以某种方式 当用户水平滑动下一页时 listView应该根据下一页的宽度来 即第一个项目应该完全推入 第二个应该是可见的一半 口渴应该是第二个可见的
  • 如何在 Material UI 5 中使用 useTheme?

    我刚刚开始使用 Material UI 5 0 4 带有styled components 我想访问组件中的主题 我在网上查了一下 看到useTheme 所以我检查了文档并found it https mui com styles adva
  • 自动实例化会话bean?

    我有一个会话 bean
  • 是否可以通过电子邮件地址进行 XSS 攻击?

    我想知道电子 邮件地址是否可以用于XSS攻击 假设有一个网站 人们可以在其中注册并提供他的电子邮件地址 如果有人想要攻击给定的网站 他或她可能会创建一个电子邮件地址 例如 stmpname com 然后使用该电子邮件地址攻击该网站 电子邮件
  • 编写 lisp emacs 键绑定并且无法指定 字符

    由于某种原因 我将向后杀字的默认 M del 键绑定映射到匹配括号的扫描 并且重置不起作用 所以我尝试在 lisp 中设置全局键绑定 所以我在 emacs d init el 中编写了 lisp 命令 全局设置键 kbd M h 向后杀字
  • XSD 和 WSDL 位于不同的目录中

    在我的工作中使用 jaxws maven plugin 进行代码生成 我有两个项目分别是 common 和 client 结构大致如下 app common resource some xsd client resource some ws
  • 在 Blazor Web Assembly 应用中显示本地计算机摄像头源

    我已将问题简化为样板 Blazor Web Assembly 应用程序 该项目直接来自向导 添加了以下代码 我已将 Index razor 页面更改为 page inject IJSRuntime JSRuntime using Syste
  • 多设备混合应用程序中未指定 NodeJs 的路径

    当我尝试构建项目时 我收到一条错误消息 例如 NodeJs 的路径尚未指定 文件名为 Microsoft MDA target 如何在其中指定node js路径 错误消息是 尚未指定 NodeJs 的路径 请在构建之前检查 NodeJs 是
  • 错误:模板可能不是“虚拟”

    我希望能够向基类 MCFormater 提供适用于不同类型 uint32 uint8 的格式化方法 class MCFormater public MCFormater virtual MCFormater virtual mcc t Ge
  • 如何访问 Doctrine2 中 PrePersist LifecycleCallback 的旧值

    我在 Doctrine2 中有一个实体 并将 HasLivecycleCallbacks 与 PrePersist 一起使用 一般来说 这工作得很好 但我只想在实体中的某些字段发生变化时更改版本 我有机会获得旧的价值观吗 还是只是更改了键值
  • 我可以通过 ssh 转发环境变量吗?

    我使用多个不同的服务器 如果能够设置一些环境变量 以便当我通过 SSH 登录时它们在所有服务器上都处于活动状态 这将很有用 问题是 某些变量的内容包含敏感信息 散列密码 所以我不想把它留在 bashrc 文件中 我只想将它保留在内存中 我知