问题标签 [openssh]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1405 浏览

cygwin - 在 Cygwin 上构建 OpenSSH

我正在尝试在 Cygwin 上构建 OpenSSH 5.1。我正在使用以下配置命令:

配置命令运行正常,但是当我尝试 make 时出现此错误:

我有点卡住了。任何人都有任何想法。

0 投票
5 回答
3605 浏览

ssh - 如何编写程序(脚本)从 ~/.ssh/known_hosts 中删除过时的主机密钥?

我使用了一个由大约 30 台机器组成的集群,这些机器最近都重新配置了新的 OpenSSH 主机密钥。当我尝试登录一个时,我收到此错误消息(为简洁起见,删除了许多行):

我可以手动删除违规行,在这种情况下,我会收到关于 IP 地址的不同投诉,这需要手动删除另一行,并且我不想重复此练习 29 次。我想写一个程序来做到这一点。不幸的是,.ssh 文件中的行不再像在早期版本中那样以明文形式包含主机名和 IP 地址。

所以这是我的问题:

  • 给定主机名和 IP 地址,我如何编写程序来找出我的哪些行~/.ssh/known_hosts存储了该主机或 IP 地址的 SSH 主机密钥?

如果我能恢复这些信息,我想我可以自己做剩下的事情。


脚注:我更喜欢用 bash/ksh/sh 或 C 或 Lua 编写代码;我的 Perl 和 Python 非常生疏。


说明:

  • 我不想删除整个文件并重新填充它;它包含一百多个经过验证的密钥,我不想重新验证。

  • 无论我维护一个主副本还是多个副本,清除一大组过时主机密钥的问题仍然存在。

回答

这是我使用的 Lua 脚本ssh-keygen -F

0 投票
1 回答
2505 浏览

linux - 让 SSH 登录会话重定向到交互式 telnet 到 localhost

我正在为具有交互式 telnet 管理控制台的系统进行开发。要求要求我们禁用 telnet 访问并改为添加 SSH。将管理控制台更改为可用于 SSH 登录的独立程序需要供应商参与。我正在考虑一个更便宜的解决方案,就像这样:

  1. 阻止 telnet 管理控制台从外部访问,但让它运行可用于 localhost 连接。

  2. 编写一个充当代理的登录 shell(在 C++ 中,或者如果我幸运的话,也可以像这样简单)。登录 shell 将 telnet 到 localhost 并通过 telnet 发送它从用户接收到的所有命令,并将它从 telnet 服务器接收到的所有显示和提示发送回用户。

  3. 更改 /etc/passwd 以在用户通过 ssh 登录时启动此代理 shell。

我想的可能吗?是否有可怕的陷阱让我陷入困境?有更好的选择吗?我使用 OpenSSH 作为 ssh 守护进程。

0 投票
2 回答
865 浏览

c# - System.Diaganostics.Process(当一个进程在内部使用另一个时)

我一直在使用 C#System.Diagnostics.Process来监视命令行实用程序的输出。

我正在“内部”监控的进程会启动第二个进程,一旦启动,我就不会从进程对象收到更多输出。

令人沮丧的是,如果您使用 cmd.exe(手动)执行相同的命令(我使用 System.Diagnostics.Process 对象启动),控制台会输出我需要在 C# 应用程序中看到的每一行!

但是,如果我(出于测试目的)使用 System.Diagnostics.Process 对象启动 cmd.exe 并运行该命令,它仍然会在之前的同一点停止输出(直接启动 process1.exe);此时使用了 second.exe。我认为这个测试会整合所有相关流程的所有输出,但事实并非如此。如何将所有这些输出输入到我的 C# 应用程序中?

0 投票
9 回答
46786 浏览

windows-7 - Cygwin SSH (Windows 7) 的目录权限

我是 Linux 的粉丝,但由于 Linux 中的英特尔无线驱动程序不好,我不得不切换到 Windows 7。我已经在 Windows 中安装了 Cygwin,并想配置 SSH 以远程连接到我的笔记本电脑。

我用谷歌搜索并找到了在 Win 7 上安装 openssh 服务器的信息,但运行时出现以下错误ssh-host-config

此文件夹的权限显示为只读(仅适用于此文件夹),以灰色选中。我试图取消选中,但再次打开属性后,该框再次被选中。有没有办法改变这个文件夹的权限?

0 投票
1 回答
7095 浏览

macos - SSH 错误:权限被拒绝(公钥、gssapi-with-mic)

尝试通过 SSH 连接到 EC2 时,出现以下错误:

我完全不知所措。我还有其他几个实例可以毫无问题地连接。

0 投票
2 回答
203 浏览

terminal - 使用 DSA 密钥自动登录终端

我将如何在终端上执行此操作?

sftp 然后要求我输入密码。如何包含我的 DSA 密钥,这样我就不必使用密码了?

0 投票
1 回答
2706 浏览

session - 检索 SSH 唯一会话 ID

我想知道是否有任何方法可以为通过 ssh(OpenSSH)连接的服务器和客户端检索一些唯一的会话标识符(让它成为USID)。

这将用于限制特定(自定义)软件的执行(让它成为a.exe),因此它只能通过特定的 ssh session 执行,即使其他用户(可能是 root)可以访问该可执行文件:

  • 在从机器C(客户端)到机器S(服务器)打开 ssh 会话后,机器C(知道USID)将更新机器X(第三方服务器)上的记录,让它知道这个USID是“安全的”。
  • 机器S上的a.exe将在调用时检查当前会话的USID是否“安全”(此信息将由X提供),如果收到否定答案,将停止执行。

XCXS之间的通信通道是安全的,所以这里唯一的问题是检索该USID 无需编写我自己的 ssh 客户端和/或服务器。

有任何想法吗?

0 投票
3 回答
13218 浏览

git - 在 mac 上生成了用于 git 的公共 rsa 密钥,但找不到它?

我在 mac os X 上(它是新手),需要生成一个公共 rsa 密钥以与 git 一起使用(认为我做对了)。我按照这里的指示:

http://help.beanstalkapp.com/faqs/git/generating-and-adding-ssh-keys-on-mac-os-x

并在我的主目录中生成了名为 (id_rsa.pub) 的密钥,但是当我执行 ls 或通过文件资源管理器 gui 查看时,我看不到它。它像隐藏文件还是什么?我怎么能看到它?我需要将公钥通过电子邮件发送给某人,

谢谢

0 投票
21 回答
580026 浏览

ssh - 在一个客户端上使用多个 SSH 私钥的最佳方式

我想使用多个私钥连接到不同服务器或同一服务器的不同部分(我的用途是服务器的系统管理、Git 的管理以及同一服务器内的正常 Git 使用)。我尝试简单地堆叠id_rsa文件中的密钥无济于事。

显然,一个简单的方法是使用命令

那是相当麻烦的。

关于如何更轻松地执行此操作的任何建议?