自动"yes"到 Popen SSH 命令
Automate "yes" to Popen SSH command
嗨,我正在编写一个C++程序,以使用popen
函数自动连接到 AWS 实例。
void initiate_ssh(char ip[100]){
char ssh[250];
FILE* fp;
strcpy(ssh,"ssh -i theKey.pem ec2-user@");
strcat(ssh,ip);
fp=popen(ssh,"w");
if(fp){
// respond yes automatically
}
pclose(fp);
}
我已经搜索了许多线程,但我只能在 python 中找到类似的情况,但我对 python 不太熟悉。因此,我需要自动通过管道将"yes"传送到popen
,以便访问对实例的远程访问。
这里我们看到一个"XY问题"。您希望自动接受主机密钥(这是"X"(。您认为可以通过在提示符下自动键入"是"(这是"Y"(来做到这一点。你被困在上面,所以你问如何做Y。但是有一种更简单的方法可以做X。
以下是执行 X 的方法:
将选项-o StrictHostKeyChecking=no
添加到 SSH 命令。
strcpy(ssh,"ssh -o StrictHostKeyChecking=no -i theKey.pem ec2-user@");
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^
我假设ssh
缓冲区已经足够长,可以包含这个额外的选项。
相关文章:
- 从命令行c++发送文本文件名
- 如何使用 < 和 > 命令获取 c++ 中的输入和输出?
- 为cl.exe(Visual Studio代码)指定命令行C++版本
- 如何在OMNET++中指定与命令行参数组合的输出文件名
- SSH通过/sbin/SSH无法读取RSA密钥文件(从控制台运行)
- 使用QProcess执行命令,并将结果存储在QStringList中
- 数组长度,为什么从命令行获取时不能使用它?
- LibGit2 SSH身份验证失败
- 如果用户输入无效,如何使用字符串变量-C++重复输入命令
- clang整洁10忽略了我的NOLINT命令
- 在子目录中使用target_sources()命令时用于单元测试(qtest)的项目结构
- 如何处理linux终端中带有负号(-)的C++中的命令行参数
- VS Code "command":"make"与终端窗口中的命令行"make"不同
- 自动"yes"到 Popen SSH 命令
- 在字符串流的 SSH 命令中转义 bash 脚本中的引号
- 如何避免在 c++ 中使用 libssh scp 命令压缩从远程 ssh 下载的图像、音频和视频文件?
- 如何在命令中传递多个参数,以使用C/C 和SSH在远程Linux计算机上执行EXE
- ssh 使用系统(char * 命令)远程登录到服务器,并执行命令
- 日志telnet/ssh命令但绕过密码字段c/c++ socket编程
- 在C++中通过 ssh 远程发送 shell 命令