gpt4 book ai didi

java - 带有私钥客户端的套接字

转载 作者:行者123 更新时间:2023-11-30 04:37:23 25 4
gpt4 key购买 nike

现在我有一个 Server.java 脚本正在等待与监听端口建立连接。它当前正在我的 Amazon 实例上运行。

我还有一个 Client.java 文件,它试图将数据发送到本地运行的服务器。

目前的问题是(如果您了解亚马逊云,您就知道这一点)亚马逊 Ubuntu 实例需要私钥来确认 RSA 身份验证。有什么办法可以用套接字做到这一点吗?我查看了构造函数,但找不到任何可以为键提供另一个参数的内容。

对于 SSH,我必须执行此操作,即:ssh -i key.pem root@server.amazonaws.com

客户端。 java

import java.io.PrintWriter;
import java.net.Socket;

class Client {
public static void main(String args[]) {
String data = "toobie ornaught toobie";
try {
Socket skt = new Socket("my ubuntu instance", 1235);
System.out.print("Server has connected!\n");
PrintWriter out = new PrintWriter(skt.getOutputStream(), true);
System.out.print("Sending string: '" + data + "'\n");
out.print(data);
out.close();
skt.close();
} catch (Exception e) {
System.out.print("Whoops! It didn't work!\n");
}
}
}

最佳答案

你很困惑。 TCP 套接字与 ssh 无关(除了 ssh 确实使用 TCP 套接字之外)。 SSH 需要 RSA key 。您只是打开一个普通的 TCP 套接字。 key 和其他身份验证内容不适用。您需要做的是允许您的端口号通过 EC2 实例上自动运行的防火墙。

关于java - 带有私钥客户端的套接字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13151004/

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