通过JAVA连接到ec2实例

时间:2017-06-30 06:03:51

标签: spring spring-mvc spring-boot amazon-ec2 aws-sdk

我已经创建了REST API来使用提供的AWS JAVA SDK创建EC2实例。 现在我尝试连接到创建的EC2实例,然后需要通过java再次在实例中安装软件。我没有为此找到任何合适的文章。有没有办法做到这一点?我不想像putty一样使用SSH客户端..谢谢..

2 个答案:

答案 0 :(得分:0)

听起来你正在寻找一个java ssh客户端。 您应该设置密钥身份验证并使用java中的ssh客户端库为您执行安装。

请参阅此帖子:for a list of solutions

答案 1 :(得分:0)

public static void connectToEC2(){

    try{
        JSch jsch=new JSch();

        String user = "User-name";
        String host = "host";
        int port = 22;
        File directory = new File(".");
        String privateKey = directory.getCanonicalPath() + File.separator + "pem file path";

        jsch.addIdentity(privateKey);
        System.out.println("identity added ");

        Session session = jsch.getSession(user, host, port);
        System.out.println("session created.");
        java.util.Properties config = new java.util.Properties();
        config.put("StrictHostKeyChecking", "no");
        session.setConfig(config);

        session.connect();

        Channel channel=session.openChannel("shell");
        channel.setInputStream(System.in);
        channel.setOutputStream(System.out);
        channel.connect(3*1000);
    }
    catch(Exception e){
        System.out.println(e);
    }
}