`

Upgrade Jetty SSL

 
阅读更多

1. Upgrade JDK to 1.8

 

2. jetty-ssl.xml

<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">

<!-- =============================================================== -->
<!-- Configure SSL for the Jetty Server                              -->
<!-- this configuration file should be used in combination with      -->
<!-- other configuration files.  e.g.                                -->
<!--    java -jar start.jar etc/jetty-ssl.xml                        -->
<!--                                                                 -->
<!--  alternately, add to the start.ini for easier usage             -->
<!-- =============================================================== -->
<Configure id="Server" class="org.eclipse.jetty.server.Server">

  <!-- if NIO is not available, use org.eclipse.jetty.server.ssl.SslSocketConnector -->
  
  <New id="sslContextFactory" class="org.eclipse.jetty.http.ssl.SslContextFactory">
    <Set name="KeyStore"><Property name="jetty.home" default="." />/etc/keystore-2015</Set>
    <Set name="KeyStorePassword">OBF:1wua1u9d1vgv1l1g1wgi1xmk1xmq1wfg1kxm1vfz1uaxxxxxx</Set>
    <Set name="KeyManagerPassword">OBF:1wua1u9d1vgv1l1g1wgi1xmk1xmq1wfg1kxm1vfz1uaxxxxxx</Set>
    <Set name="TrustStore"><Property name="jetty.home" default="." />/etc/keystore-2015</Set>
    <Set name="TrustStorePassword">OBF:1wua1u9d1vgv1l1g1wgi1xmk1xmq1wfg1kxm1vfz1uaxxxxxxxx</Set>
	<!--
	<Set name="IncludeCipherSuites">
	  <Array type="String">
		  <Item>TLS_DHE_RSA.*</Item>
		  <Item>TLS_ECDHE.*</Item>
	  </Array>
	</Set>-->
	<Set name="ExcludeCipherSuites">
	  <Array type="String">
		<Item>.*NULL.*</Item>
		<Item>.*RC4.*</Item>
		<Item>.*MD5.*</Item>
		<Item>.*DES.*</Item>
		<Item>.*DSS.*</Item>
	  </Array>
	</Set>
	<Set name="ExcludeProtocols">
		 <Array type="java.lang.String">
			 <Item>SSLv3</Item>
		 </Array>
	</Set>
  </New>

  <Call name="addConnector">
    <Arg>
      <New class="org.eclipse.jetty.server.ssl.SslSelectChannelConnector">
        <Arg><Ref id="sslContextFactory" /></Arg>
        <Set name="Port">443</Set>
        <Set name="maxIdleTime">30000</Set>
        <Set name="Acceptors">2</Set>
        <Set name="AcceptQueueSize">100</Set>
      </New>
    </Arg>
  </Call>
</Configure>

 3. add System Property -Djdk.tls.ephemeralDHKeySize=2048

 

4. test it https://www.ssllabs.com/ssltest/index.html

 

 

info:

http://www.openssl.org/docs/apps/ciphers.html

 

 

BTW: jetty OBF password

@echo off 

call cd /d %~dp0

echo %JAVA_8%

call "%JAVA_8%\bin\java" -cp jetty-http-9.3.0.v20150612.jar;jetty-util-9.3.0.v20150612.jar org.eclipse.jetty.util.security.Password PASSWORD

pause

 

 

分享到:
评论

相关推荐

    web socket实例

    6. **服务器端实现**:WebSocket服务器端实现有多种选择,如Node.js的ws库、Java的Jetty WebSocket、Python的Tornado WebSockets等。 在实际应用中,WebSocket的使用可以大大提升用户体验,例如,在实时聊天应用中...

    WebSocket入门实战工程

    1. **服务器端实现**:服务器端需要支持WebSocket协议,可以使用Node.js的ws库,Java的Jetty或Tomcat,Python的Tornado或Flask-SocketIO等库来实现。 2. **客户端实现**:在前端,JavaScript是主要的实现语言,利用...

    websocket_for_linux.rar_educationcrz_linux WebSocket_websocket_w

    1. **握手(Handshake)**:WebSocket连接开始时,客户端会发送一个HTTP Upgrade请求到服务器,请求升级到WebSocket协议。服务器响应后,连接变为WebSocket连接。 2. **帧(Frames)**:WebSocket数据通过帧的形式...

    WebSocket1.0.zip

    在实际开发中,开发者可以使用各种WebSocket库,如JavaScript的Socket.IO、ws库,Python的 autobahn,Java的Jetty等。这些库简化了WebSocket的使用,提供了错误处理和兼容性支持。 总的来说,WebSocket是现代Web...

    websocket客户端和服务器端

    - **服务器端**:服务器端实现可以选择多种编程语言,如Node.js的ws库、Java的Jetty或Tomcat WebSocket API、Python的Tornado框架等。服务器端同样需要处理连接建立、数据接收、发送和关闭等逻辑。 在部署WebSocket...

    webs socket 集成

    5. **安全性**:WebSocket连接需要考虑安全性,如使用WSS(WebSocket over SSL/TLS)确保数据传输的安全,以及通过认证和授权限制访问。 6. **心跳与保活**:为了检测并处理长时间无数据交换导致的连接失效,通常会...

    webSocket 后端向前端推送消息

    4. **后端实现**:后端服务器通常使用特定的WebSocket库来处理WebSocket连接,例如Node.js中的ws库,Java的Jetty或Tomcat,Python的Tornado等。服务器端可以创建WebSocket服务器监听特定端口,当接收到新的连接请求...

    websocket.zip

    客户端首先发送一个Upgrade请求到服务器,其中包含"Upgrade: websocket"和"Connection: Upgrade"头,以及一个由WebSocket协议定义的Sec-WebSocket-Key头,用于验证连接。服务器回应一个101 Switching Protocols响应...

    demowebsocket.rar

    例如,Node.js有ws库,Python有Flask-SocketIO,Java有Jetty或Tomcat的WebSocket API。服务器端代码会监听WebSocket连接,处理接收到的数据,并发送响应。 2. **客户端实现**:在浏览器端,WebSocket API允许开发者...

    WebSocket消息实时提醒

    1. **WebSocket握手**:客户端通过发送一个`Upgrade`请求到服务器来建立WebSocket连接,这个请求包含了`Upgrade`头(值为`websocket`)、`Connection`头(值为`Upgrade`)以及`Sec-WebSocket-Key`和`Sec-WebSocket-...

    webscoket小demo

    6. **部署与配置**:WebSocket应用需要在支持WebSocket的服务器上运行,比如Tomcat、Jetty等。服务器配置可能涉及端口设置、SSL证书配置等。 这个"WebSocket小demo"是一个很好的学习资源,可以帮助开发者快速理解...

    websocketserver.rar 带log4.xml版

    4. **安全性**:WebSocket连接可以通过WSS(WebSocket over SSL/TLS)来提供加密和身份验证,确保数据在传输过程中的安全。 5. **扩展性**:WebSocket协议允许自定义扩展,以满足特定应用的需求,如压缩、心跳机制...

    WEBSOCKET.rar

    6. **安全性**:WebSocket可以通过WSS(WebSocket over SSL/TLS)提供安全连接,确保数据在传输过程中的安全。 在"WEBSOCKET"这个文件中,可能包含以下内容: - 一个WebSocket服务器的实现,可能是用Node.js、...

    文章《WebSocket服务端实现手法》中的源码

    2. **服务器框架选择**:在实际开发中,开发者可能会选择已有的WebSocket服务器框架,如Node.js中的`ws`库,Java中的`Jetty`或`Spring WebSocket`,Python的`Flask-SocketIO`等。这些框架提供了处理WebSocket连接、...

    WebSocket服务端实例

    2. **服务器初始化**:在服务端,我们需要创建一个WebSocket服务器,这通常涉及选择一个WebSocket库,如Node.js中的ws库或Java中的Jetty WebSocket API。服务器需要监听特定的端口,等待客户端的连接请求。 3. **...

    webSocket 服务器端的简单实现

    2. **服务器端实现**:WebSocket服务器通常使用特定的库或框架来创建,如Node.js的ws库,Java的Jetty或Tomcat,Python的WebSocket-Server等。这些库提供了处理WebSocket连接、接收和发送数据的方法。 3. **事件驱动...

    webSocket需要的所有Jar包

    2. **jetty-websocket.jar** 或 **tomcat-websocket.jar**:这两个是不同的Servlet容器(Jetty和Tomcat)提供的WebSocket实现。它们实现了WebSocket API,允许你在这些容器上部署WebSocket服务。 3. **slf4j-api....

    服务器端-客户端,websocket长连接实现Android消息推送

    3. **服务器端实现**:服务器端通常使用Node.js(例如使用Socket.IO库)、Java(如Jetty、Spring Boot的WebSocket支持)、Python(Tornado或Flask-SocketIO)等技术栈实现WebSocket服务。服务器端需要处理WebSocket...

    hiws_jarret_websocket_zip_

    在服务器端,开发者通常会使用像Jetty、Tomcat这样的服务器框架,它们支持WebSocket API。在客户端,JavaScript的WebSocket API提供了一种创建WebSocket连接、发送和接收数据的方法。 在实际使用WebSocket时,...

    WebSocketDemoService.rar

    7. **服务器实现**:服务器端实现WebSocket通常涉及选择合适的库,如Node.js的`ws`库,Java的`Jetty`或`Tomcat`,Python的`Autobahn`等。这些库简化了协议处理和连接管理。 8. **客户端实现**:在浏览器环境中,...

Global site tag (gtag.js) - Google Analytics