zoukankan      html  css  js  c++  java
  • JTA(java telnet/ssh client)不能telnet/ssh远程机器问题与解决 规格严格

    最近公司在使用一个java ssh client(JTA http://javassh.org/space/start)来做为web页面中远程telnet/ssh机器的客户端,但是在使用jta提供的applet的时候总是不能telnet/ssh,但是在下载了源码包之后,直接使用源码包中的测试页面是可以访问的,后来查了一下资料,看了一下jta的日志发现是因为jta的applet里使用了Socket去连接远程机器的,而在applet里使用Socket是会有安全问题的,默认是不允许的,对于这个问题其实是有两个解决办法的,第一个是修改每个客户端的java.policy文件,添加对Socket访问允许的配置;另一个是对applet的jar文件做数字签名,这样就客户端就不需要做任何修改,只是在用浏览器访问applet出现提示的时候选择信任这个签名的applet就可以了。下面就对两种方法做个说明:

    1. 修改本地策略文件

      在本地的以下两个文件

      {JAVA_HOME}/jre/lib/security/java.policy

      {JRE_HOME}/jre/lib/security/java.policy

      在其中grant部分添加

      permission java.security.AllPermission;

      然后重新启动浏览器再次访问applet就可以访问远端机器了

    2. 添加数字签名

      1) 下载最新的jta包,这里假定使用的是jta26.jar

      2) 运行 keytool -genkey -keystore jta26.store -alias jta26

      3) 运行 keytool -export -keystore jta26.store -alias jta26 -file jta26.cert

      4) 运行 jarsigner -keystore jta26.store jta26.jar jta26

      5) 然后重新启动浏览器再次访问applet就可以访问远端机器了

    参考资料:

    http://www-personal.umich.edu/~lsiden/tutorials/signed-applet/signed-applet.html

  • 相关阅读:
    POJ
    使用composer 显示错误美化
    swoft配置连接池
    PHP 超级全局变量 $_GET
    phpstorm 注解路由插件
    swoft实现自动重启服务 转
    MySql添加字段命令
    团队博客12
    团队博客11
    团队博客10
  • 原文地址:https://www.cnblogs.com/diyunpeng/p/2317234.html
Copyright © 2011-2022 走看看