`
snoopy7713
  • 浏览: 1149099 次
  • 性别: Icon_minigender_2
  • 来自: 火星郊区
博客专栏
Group-logo
OSGi
浏览量:0
社区版块
存档分类
最新评论

Jetty web强制https连接

阅读更多

 

解决方案:
Java Keytool生成数字证书:
keytool -genkey -alias webmin.com -keyalg RSA
 -keystore /home/demo/webminkey -validity 365
中,RSA-非对称加密- validity 365:证书有效期为365天,keytool默认生成的有效期为90天。

Jetty服务器配置config.xml:
<MetaData xmlns="http://www.osgi.org/xmlns/metatype/v1.0.0">
    <OCD name="%configurationName" id="server.config" description="%configurationDescription">
        <AD id="http.enabled" type="Boolean" default="true"/>
        <AD id="http.port" type="Integer" default="0"/>
        <AD id="http.host" type="String" cardinality="1"/>
        <AD id="https.enabled" type="Boolean" default="false"/>
        <AD id="https.port" type="Integer" default="0"/>
        <AD id="https.host" type="String" cardinality="1"/>
        <AD id="ssl.keystore" type="String" cardinality="1"/>
        <AD id="ssl.password" type="String" cardinality="1"/>
        <AD id="ssl.keypassword" type="String" cardinality="1"/>
        <AD id="ssl.needclientauth" type="Boolean" cardinality="1"/>
        <AD id="ssl.wantclientauth" type="Boolean" cardinality="1"/>
        <AD id="ssl.protocol" type="String" cardinality="1"/>
        <AD id="ssl.algorithm" type="String" cardinality="1"/>
        <AD id="ssl.keystoretype" type="String" cardinality="1"/>
        <AD id="context.path" type="String" cardinality="1"/>
        <AD id="context.sessioninactiveinterval" type="Integer" cardinality="1"/>
        <AD id="other.info" type="String" cardinality="1"/>
    </OCD>
    <Designate pid="org.eclipse.equinox.http.jetty.config.designate" factoryPid="org.eclipse.equinox.http.jetty.config" bundle="*">
        <Object ocdref="server.config"/>
    </Designate>
</MetaData>
  在java配置文件configuration/config.ini中添加参数:
# enable ssl
org.eclipse.equinox.http.jetty.https.enabled=true
org.eclipse.equinox.http.jetty.http.enabled=false
org.eclipse.equinox.http.jetty.ssl.keystore=webminkey
org.eclipse.equinox.http.jetty.ssl.password=administrator
org.eclipse.equinox.http.jetty.ssl.keypassword=webmin

# set ssl port (defaults to 443)
org.eclipse.equinox.http.jetty.https.port=443
#org.eclipse.equinox.http.jetty.http.port=8088
 
测试:
浏览器中输入url: https://localhost/
分享到:
评论

相关推荐

    服务器证书配置指南之Jetty-61-CNNIC.pdf

    8. **HSTS(HTTP Strict Transport Security)**:为了强制客户端始终使用HTTPS,可以在服务器端设置HSTS响应头,告知浏览器只通过HTTPS连接,避免降级攻击。 9. **OCSP Stapling**:启用OCSP Stapling可以提高证书...

    SSL双向验证范例

    在你的Web应用的web.xml配置文件中,可能需要配置Servlet或Filter以处理SSL连接。例如,添加一个`filter`和`filter-mapping`来强制所有请求都通过HTTPS: ```xml &lt;filter-name&gt;sslFilter &lt;filter-class&gt;org....

    Servlet3.0微框架

    10. **安全增强**:Servlet3.0加强了安全方面的支持,比如增加了HTTP方法限制、强制HTTPS连接等。 对于“依赖包”,这可能是指为了实现Servlet3.0功能而需要引入的相关库,如Tomcat或Jetty的嵌入式版本,或者其他...

    jsp基于Web的可维护的数据库浏览器(源代码+文档).rar

    8. **部署与运行**:需要了解如何在Tomcat、Jetty等应用服务器上部署和运行JSP应用,以及配置web.xml文件。 通过分析这个项目,开发者不仅可以学习到JSP的基本语法和使用,还能深入理解Web应用的开发流程,以及...

    websocket客户端和服务器端

    服务器也可以在必要时强制关闭连接。 在实际开发中,WebSocket客户端和服务器端的实现各有特点: - **客户端**:通常使用JavaScript的WebSocket API来创建和管理连接。例如,通过new WebSocket()构造函数指定服务器...

    struts2 Https 配置

    1. **配置服务器**:首先,你需要在服务器端(如Tomcat、Jetty等)启用HTTPS。这通常涉及到修改服务器的配置文件(如Tomcat的`server.xml`),添加一个监听443端口的SSL连接器。你需要提供一个有效的SSL证书,这可以...

    JavaWeb传智书城项目源码.zip

    8. **Web容器**:JavaWeb应用需要运行在Web容器中,如Tomcat、Jetty等。这些容器负责加载和运行Servlet,处理HTTP请求和响应。 9. **前端技术**:除了后端的JavaWeb组件,项目可能还涉及前端技术,如HTML、CSS和...

    servlet-4.1.34.jar包

    8. **MVC模式**:虽然Servlet本身并不强制使用特定的设计模式,但它常被用于Model-View-Controller(MVC)架构中,作为Controller部分,负责接收请求、处理业务逻辑,并转发到对应的View。 9. **依赖注入**:...

    抛弃框架的基于纯 Java Servlet 与 JSP的网站系统开发

    3. **基础架构**: 开发一个基于Servlet和JSP的系统,需要设置一个Web容器(如Tomcat或Jetty),它会加载并管理Servlet实例,处理HTTP请求,并将响应返回给客户端。此外,还需要理解MVC(Model-View-Controller)设计...

    Java+Servlet+API说明文档

    10. **WebSocket**: 随着Web应用的需求发展,Servlet API也扩展了对WebSocket的支持,允许建立持久化的双向通信连接,实现实时通信。 这份"Java+Servlet+API说明文档"是Java Web开发者的宝贵资源,它不仅包含...

    使用Kotlin和Spring Boot开发的教务系统

    - **嵌入式Web服务器**:如Tomcat或Jetty,无需额外部署,简化了开发流程。 - **Spring Boot Actuator**:提供了健康检查、监控、指标等功能,方便运维和调试。 3. **数据库集成:SQL Server** - **JDBC驱动**:...

    Major_Element:https

    6. **HTTPS连接器(Connector)配置**:对于Java Web应用,需要在应用服务器配置文件中设置HTTPS连接器,包括设置端口号、SSLContextFactory、证书路径等。 7. **安全最佳实践**:学习如何避免常见的安全风险,如...

    JSP编写飞行器小项目

    10. 测试与部署:理解如何进行单元测试,如JUnit,以及如何将应用部署到Tomcat、Jetty等Web服务器上供用户访问。 通过这个"JSP编写飞行器小项目",初学者可以深入理解JSP技术及其与其他Web开发技术的结合,同时也能...

    jsp论谈系统代码及实现

    9. **部署与运行**:这个JSP应用需要在支持Java Web的服务器上部署,如Tomcat、Jetty等。部署过程包括配置web.xml文件,将JSP和相关的Java类打包到WAR文件,然后上传到服务器的webapps目录下。 通过深入学习和分析...

    lybJSP留言板

    9. **部署与配置**:该留言板系统需要部署在支持Java EE的Web服务器上,如Tomcat、Jetty等。部署文件通常包括JSP页面、Java源代码、配置文件(如web.xml)等。 10. **用户体验**:为了提供良好的用户体验,系统可能...

    采用jsp技术的留言板系统

    这个留言板系统作为WAR(Web Application Archive)文件,可以在任何支持Servlet和JSP的Web服务器(如Tomcat、Jetty)上部署。部署后,用户可以通过浏览器访问并交互。 通过分析这个基于JSP的留言板系统,我们可以...

    jsp客户信息系统(程序+代码)

    这个客户信息系统需要部署在支持JSP和Servlet的Web服务器上,如Tomcat、Jetty等。部署过程包括配置web.xml,打包为WAR文件,然后将其放入服务器的webapps目录下。 10. **学习资源** 对于初学者,理解JSP的关键...

    SpringBoot 44道面试题和答案.docx

    3. 内嵌容器:内建Tomcat、Jetty等Web服务器,无需额外部署。 4. 监控和健康检查:Actuator提供了应用监控和健康检查功能。 5. 外部化配置:支持YAML或Properties格式的外部配置文件,方便管理环境差异。 @...

    基于struts的图书管理系统,很好用,有现成的数据库

    5. **数据库连接和ORM**:系统有现成的数据库,很可能使用了Java的JDBC API或者ORM框架如Hibernate或iBatis来连接和操作数据库。ORM框架可以简化数据库操作,使代码更加面向对象。 6. **国际化和本地化**:对于一个...

    无涯教程网-Spring-Boot电子教程.pdf

    Spring框架最初被设计为一个轻量级的、非侵入式(不强制要求继承框架提供的类或实现特定接口)的容器。它的优势在于,它不仅可以用于任何Java应用程序,而且对构建基于Java企业版(Java EE)的应用程序提供了大量的...

Global site tag (gtag.js) - Google Analytics