Skip to content

TCP proxy ssh error #15

@losyn

Description

@losyn

`
public class VpsVerticle extends AbstractVerticle {
private static final Map<String, Vps> vps = new ConcurrentHashMap<>();

@Override
public void start(Promise<Void> promise) {
    vertx.createNetServer().connectHandler(server -> {
        System.out.println("PTO: " + server.remoteAddress());
        vertx.createNetClient().connect(22, "192.168.10.211", event -> {
            if (event.succeeded()) {
                vps.put("xxxxx", new Vps(server, event.result()).proxy());
            } else {
                event.cause().printStackTrace();
            }
        });
    }).listen(10022, tcp -> {
        if (tcp.succeeded()) {
            System.out.println("proxy:10022");
            promise.complete();
        } else {
            promise.fail(tcp.cause());
        }
    });
}

}

public class Vps implements Serializable {
private static final long serialVersionUID = -4212035958492348735L;
private final NetSocket server,client;

public Vps(NetSocket server, NetSocket client) {
    this.server = server;
    this.client = client;
}

public Vps proxy() {
    //转发到客户端
    server.handler(buffer -> {
        System.out.println("111==" + BytesHelper.string(buffer.getBytes()));
        client.write(buffer);
    });
    //转发给终端
    client.handler(buffer -> {
        System.out.println("222==" + BytesHelper.string(buffer.getBytes()));
        server.write(buffer);
    });
    //服务关闭
    server.closeHandler(v -> client.close());
    client.closeHandler(v -> server.close());
    //服务异常
    server.exceptionHandler(e -> {
        e.printStackTrace();
        close();
    });
    client.exceptionHandler(e -> {
        e.printStackTrace();
        close();
    }); return this;
}

private void close() {
    server.close();
    client.close();
}

}
`

`

ssh -p 10022 [email protected]

Bad packet length 1231976033.
ssh_dispatch_run_fatal: Connection to 10.21.101.149 port 10022: message authentication code incorrect
`

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions