Browse Source

[ADD] ssl connections

Gogs 7 years ago
parent
commit
08869f2626

+ 16 - 0
pom.xml

@@ -103,6 +103,22 @@
 							</resources>
 						</configuration>
 					</execution>
+					<execution>
+						<id>copy-resources2</id>
+						<phase>process-resources</phase>
+						<goals>
+							<goal>copy-resources</goal>
+						</goals>
+						<configuration>
+							<outputDirectory>${project.build.directory}/classes/resources</outputDirectory>
+							<resources>
+								<resource>
+									<directory>resources/</directory>
+									<filtering>false</filtering>
+								</resource>
+							</resources>
+						</configuration>
+					</execution>
 				</executions>
 			</plugin>
 		</plugins>

BIN
resources/jetty-util-9.4.7.v20170914.jar


+ 18 - 0
resources/jetty.csr

@@ -0,0 +1,18 @@
+-----BEGIN NEW CERTIFICATE REQUEST-----
+MIIC9DCCAdwCAQAwfzELMAkGA1UEBhMCUFkxFDASBgNVBAgTC0FsdG8gUGFyYW5h
+MRgwFgYDVQQHEw9DaXVkYWQgZGVsIEVzdGUxFjAUBgNVBAoTDUVpcnUgU29mdHdh
+cmUxETAPBgNVBAsTCFNvZnR3YXJlMRUwEwYDVQQDEwxSb2JlcnQgR2F1dG8wggEi
+MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCbLaxCR02sT935lhAfriAR68XF
++WcKUdTQnhG0L3JyPEhzP5tLO30S77fTD0PRkUxpCRMJlBSkc3Zq3Irv+itQSlSi
+PRp4ZspEeVMVsxfYFius+na9qltTtUdSFpsF4AvTAVS88oRq/Bp1ovff3krg8ser
+hTvgjbXfJZfEcg/fPzPjQnm9X7ZK8ijnL5p0g9Tf5IDGbENuaohpZaj1YgRoWcyh
+14rbsJrafMAD8s5YKJaOE4w8QhMe+DXx5goF0udw01JRD6bZOoRmx2MEupVWmEWf
+JerwB3T9O8UsymxKqqp0rTEmI+tW9SV1laZ3j2ROkk5mJVLKD8jdAg3P3R+/AgMB
+AAGgMDAuBgkqhkiG9w0BCQ4xITAfMB0GA1UdDgQWBBSkFC8ntYWtSR4GdrkQUlQp
+pi+/DDANBgkqhkiG9w0BAQsFAAOCAQEAiReL+yKfAtMSNTG8LqvPIN5CY+8kLB8S
+79sg+MlCBAtSEpZKBlgJJgWBL22MObyYssIADgCtRw6ZCIevLaWQJR0AJrop1WuZ
+EeSy+Fv8zJMlZPIxiy54hfBFmW9QCpGHHMKlF7sAGRUwN8IhHMhYjpzhK7/JJMZy
+RugrM2rJaRsYFT+svOIIaWC8ZC1qcvJuoA3oZwGGJ3dFbwqJXi+QeJbtqFJqsuAg
+fj5i+n+a1aAAXjGcZHobxLV0dNdROuK6cvSJKKS3Isu3VTIbeHTX8AzwwodnzAHz
+LQw0F+546IDzae9pmAngxcPuhOHpOdcuWTCY618mEpG5F5UuzuRpNQ==
+-----END NEW CERTIFICATE REQUEST-----

BIN
resources/keystore.jks


BIN
resources/keystore.jks.old


+ 19 - 2
src/main/java/org/robert/printer/ws/PrintersSocketServer.java

@@ -2,11 +2,14 @@ package org.robert.printer.ws;
 
 import java.util.concurrent.atomic.AtomicBoolean;
 
+import org.eclipse.jetty.http.HttpVersion;
 import org.eclipse.jetty.server.Connector;
 import org.eclipse.jetty.server.HttpConfiguration;
 import org.eclipse.jetty.server.HttpConnectionFactory;
 import org.eclipse.jetty.server.Server;
 import org.eclipse.jetty.server.ServerConnector;
+import org.eclipse.jetty.server.SslConnectionFactory;
+import org.eclipse.jetty.util.ssl.SslContextFactory;
 import org.eclipse.jetty.websocket.server.WebSocketHandler;
 import org.eclipse.jetty.websocket.servlet.WebSocketServletFactory;
 
@@ -63,9 +66,23 @@ public class PrintersSocketServer {
 	public void goUp() throws Exception {
 		this.server = new Server(this.getPort());
 
-		HttpConnectionFactory httpConnectionFactory = new HttpConnectionFactory(new HttpConfiguration());
+		HttpConnectionFactory httpConnection = new HttpConnectionFactory(new HttpConfiguration());
 
-		ServerConnector connector = new ServerConnector(this.server, httpConnectionFactory);
+
+		SslContextFactory sslContext = new SslContextFactory();
+
+		sslContext.setKeyStorePath(this.getClass().getResource("/resources/keystore.jks").toExternalForm());
+		sslContext.setKeyStorePassword("robert2206");
+
+		System.out.println("----------------------------------------------------");
+		System.out.println(sslContext.getKeyStoreType());
+		System.out.println(sslContext.isTrustAll());
+		System.out.println(sslContext.isValidateCerts());
+		System.out.println("----------------------------------------------------");
+
+		SslConnectionFactory sslConnection = new SslConnectionFactory(sslContext, HttpVersion.HTTP_1_1.asString());
+
+		ServerConnector connector = new ServerConnector(this.server, sslConnection, httpConnection);
 		connector.setHost(this.getHost());
 		connector.setPort(this.getPort() + 1);