zoukankan      html  css  js  c++  java
  • 单点登录配置问题

    cas sso配置大致步骤:

    1.生成服务器证书;

        keytool -genkey -alias tomcat -keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore -validity 3600

    2.导出证书命令

        keytool -export -trustcacerts -alias tomcat -file server.cer -keystore  server.keystore -storepass changeit

    3.证书导入JDK的信任证书库中

        keytool -import -trustcacerts -alias tomcat -file server.cer -keystore %JAVA_HOME%/jre/lib/security/cacerts -storepass changeit

    4.修改tomcat的配置文件 /conf/server.xml (/为tomcat根目录)

       <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
                   maxThreads="150" scheme="https" secure="true"
                   keystoreFile="D:\apache-tomcat-7.0.14\server.keystore"
                   keystorePass="changeit"
                   clientAuth="false" sslProtocol="TLS" />

        访问https://localhost:8443/出现安全证书问题就说明配置成功了。

    sso解决方案遇到的问题:

        1.生成证书时填写名字和姓氏时要填 localhost 或者是自己的计算机名。

        2.按照 keytool -genkey -alias sjc -keyalg RSA -keystore c:/store/mykey来生成证书时必须先创建c:/store文件夹,否则不能生成证书。

        3.导入JDK的信任证书库中时,如果JDK安装在Program Files下,cmd命令就会返回不能找到 Files ...文件,看了下网上的说法,都说要在路径名上加引号,为了保险起见,我还是重装了一下JDK,反正就一会的事。

        4.JDK的信任证书库的路径是是JAVA_HOME的jre目录下,而不是跟JDK同级的jre目录下的。

        5.按照keytool -import -keystore D:/jdk1.5.0_12/jre/lib/security/cacerts -file c:/store/server.crt -alias sjc来导入JDK中时,密码是默认的changeit,而不是之前设置的密码。

        6.最后的问题,也是最大的问题,前面的证书生成、导出、导入都已经完成之后,还是不能打开https://localhost:8443/。 参照网上的做法,

            a.查看Host文件,c:\windows\system32\drivers\etc\hosts,打开hosts这个文件,看看127.0.0.1和localhost是不是在一行;

            b.查看局域网设置,是否用了代理服务器上网,选中“对于本地址不使用代理服务器”。

            我一一试了,发现都是无用的,这两种设置本来就都是符合的。

            后来我又查看了tomcat的日志信息,发现端口8080和8009都是正常的,而新释放的端口8443产生了错误信息:

            Failed to initialize end point associated with ProtocolHandler ["http-apr-8443"] ...

            又搜索了一下,很多关于8080端口被占用的问题也会报出这种错误,那只需要改一下端口号就行了,可是我这8443端口不大可能被占用吧。

            接着搜索,最后终于发现了有牛人说要把server.xml中的下面一段注销掉,不然就会报出上面的错误:

          <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />

          注销,重启tomcat,打开https://localhost:8443/,搞定。

  • 相关阅读:
    重建二叉树
    数值的整数次方
    二维数组查找
    二进制中1的个数
    LRU算法的精简实现(基于Java)
    华为18.9.5校招笔试题AK
    避免反射和序列化来破坏单例
    Markdown图片存储解决方法-利用阿里云OSS
    基于Java反射的map自动装配JavaBean工具类设计
    多态与类初始化的底层原理
  • 原文地址:https://www.cnblogs.com/hamfy/p/2616805.html
Copyright © 2011-2022 走看看