@Override public HttpServerOptions setKeyStoreOptions(JksOptions options) { super.setKeyStoreOptions(options); return this; }
@Override public void start() throws Exception { NetServerOptions options = new NetServerOptions() .setSsl(true).setKeyStoreOptions(new JksOptions().setPath("server-keystore.jks").setPassword("wibble")); vertx.createNetServer(options).connectHandler(sock -> { // Create a pump Pump.pump(sock, sock).start(); }).listen(1234); System.out.println("Echo server is now listening"); } }
@Override public HttpServerOptions setKeyStoreOptions(JksOptions options) { super.setKeyStoreOptions(options); return this; }
@Test public void testNetServerInternalTLS() throws Exception { server.close(); server = vertx.createNetServer(new NetServerOptions() .setPort(1234) .setHost("localhost") .setSsl(true) .setKeyStoreOptions(Cert.SERVER_JKS.get())); testNetServerInternal_(new HttpClientOptions() .setSsl(true) .setTrustStoreOptions(Trust.SERVER_JKS.get()) , true); }
@Test public void testHostVerificationHttpsNotMatching() { server.close(); NetServerOptions options = new NetServerOptions() .setPort(1234) .setHost("localhost") .setSsl(true) .setKeyStoreOptions(new JksOptions().setPath("tls/mim-server-keystore.jks").setPassword("wibble")); NetServer server = vertx.createNetServer(options); NetClientOptions clientOptions = new NetClientOptions() .setSsl(true) .setTrustAll(true) .setHostnameVerificationAlgorithm("HTTPS"); NetClient client = vertx.createNetClient(clientOptions); server.connectHandler(sock -> { }); server.listen(ar -> { assertTrue(ar.succeeded()); client.connect(1234, "localhost", ar2 -> { //Should not be able to connect assertTrue(ar2.failed()); testComplete(); }); }); await(); }
@Test public void testHostVerificationHttpsMatching() { server.close(); NetServerOptions options = new NetServerOptions() .setPort(1234) .setHost("localhost") .setSsl(true) .setKeyStoreOptions(new JksOptions().setPath("tls/server-keystore.jks").setPassword("wibble")); NetServer server = vertx.createNetServer(options); NetClientOptions clientOptions = new NetClientOptions() .setSsl(true) .setTrustAll(true) .setHostnameVerificationAlgorithm("HTTPS"); NetClient client = vertx.createNetClient(clientOptions); server.connectHandler(sock -> { }); server.listen(ar -> { assertTrue(ar.succeeded()); client.connect(1234, "localhost", ar2 -> { //Should be able to connect assertTrue(ar2.succeeded()); testComplete(); }); }); await(); }
options.setIdleTimeout(idleTimeout); options.setSsl(ssl); options.setKeyStoreOptions(keyStoreOptions); options.setTrustStoreOptions(trustStoreOptions); options.addEnabledCipherSuite(enabledCipher);
@Override public MqttServerOptions setKeyStoreOptions(JksOptions options) { super.setKeyStoreOptions(options); return this; }
@Override public MqttServerOptions setKeyStoreOptions(JksOptions options) { super.setKeyStoreOptions(options); return this; }
@Override public MqttServerOptions setKeyStoreOptions(JksOptions options) { super.setKeyStoreOptions(options); return this; }
@Override public ProtonServerOptions setKeyStoreOptions(JksOptions options) { super.setKeyStoreOptions(options); return this; }
@Override public TelnetTermOptions setKeyStoreOptions(JksOptions options) { return (TelnetTermOptions) super.setKeyStoreOptions(options); }
assertEquals(options, options.setKeyStoreOptions(keyStoreOptions)); assertEquals(keyStoreOptions, options.getKeyCertOptions());
@Test public void testNetServerInternalTLS() throws Exception { server.close(); server = vertx.createNetServer(new NetServerOptions() .setPort(1234) .setHost("localhost") .setSsl(true) .setKeyStoreOptions(Cert.SERVER_JKS.get())); testNetServerInternal_(new HttpClientOptions() .setSsl(true) .setTrustStoreOptions(Trust.SERVER_JKS.get()) , true); }
@Test public void testHostVerificationHttpsNotMatching() { server.close(); NetServerOptions options = new NetServerOptions() .setPort(1234) .setHost("localhost") .setSsl(true) .setKeyStoreOptions(new JksOptions().setPath("tls/mim-server-keystore.jks").setPassword("wibble")); NetServer server = vertx.createNetServer(options); NetClientOptions clientOptions = new NetClientOptions() .setSsl(true) .setTrustAll(true) .setHostnameVerificationAlgorithm("HTTPS"); NetClient client = vertx.createNetClient(clientOptions); server.connectHandler(sock -> { }); server.listen(ar -> { assertTrue(ar.succeeded()); client.connect(1234, "localhost", ar2 -> { //Should not be able to connect assertTrue(ar2.failed()); testComplete(); }); }); await(); }
@Test public void testHostVerificationHttpsMatching() { server.close(); NetServerOptions options = new NetServerOptions() .setPort(1234) .setHost("localhost") .setSsl(true) .setKeyStoreOptions(new JksOptions().setPath("tls/server-keystore.jks").setPassword("wibble")); NetServer server = vertx.createNetServer(options); NetClientOptions clientOptions = new NetClientOptions() .setSsl(true) .setTrustAll(true) .setHostnameVerificationAlgorithm("HTTPS"); NetClient client = vertx.createNetClient(clientOptions); server.connectHandler(sock -> { }); server.listen(ar -> { assertTrue(ar.succeeded()); client.connect(1234, "localhost", ar2 -> { //Should be able to connect assertTrue(ar2.succeeded()); testComplete(); }); }); await(); }
options.setIdleTimeout(idleTimeout); options.setSsl(ssl); options.setKeyStoreOptions(keyStoreOptions); options.setTrustStoreOptions(trustStoreOptions); options.addEnabledCipherSuite(enabledCipher);
public TCPSyslogServer(int port, String clientAuth, String trustStorePath, String trustStorePassword, String keyStorePath, String keyStorePassword, Async async){ this.port = port; this.async = async; nsOptions = new NetServerOptions() .setReuseAddress(true) .setHost("localhost") .setClientAuth(ClientAuth.valueOf(clientAuth)) .setTrustStoreOptions(trustStorePath != null? new JksOptions(). setPath(trustStorePath). setPassword(trustStorePassword): null) .setKeyStoreOptions(keyStorePath != null? new JksOptions(). setPath(keyStorePath). setPassword(keyStorePassword): null) .setSsl(true); }
assertEquals(options, options.setKeyStoreOptions(keyStoreOptions)); assertEquals(keyStoreOptions, options.getKeyCertOptions());
public TCPSyslogServer(int port, String clientAuth, String trustStorePath, String trustStorePassword, String keyStorePath, String keyStorePassword, Async async){ this.port = port; this.async = async; nsOptions = new NetServerOptions() .setReuseAddress(true) .setHost("localhost") .setClientAuth(ClientAuth.valueOf(clientAuth)) .setTrustStoreOptions(trustStorePath != null? new JksOptions(). setPath(trustStorePath). setPassword(trustStorePassword): null) .setKeyStoreOptions(keyStorePath != null? new JksOptions(). setPath(keyStorePath). setPassword(keyStorePassword): null) .setSsl(true); }