在远程计算机上启用端口8443以进行https访问

时间:2012-04-05 09:18:06

标签: java client-server tomcat6 ubuntu-10.04 stunnel

有一个tomcat6服务器,可以在端口8443上启用https访问,并在server.xml文件的<connector>标记上进行设置。它如下所示:

<Connector port="8443" 
           SSLEnabled="true"
           maxThreads="150" 
           minSpareThreads="25" 
           maxSpareThreads="75"
           enableLookups="true" 
           disableUploadTimeout="true"
           acceptCount="100" 
           debug="0" 
           connectionTimeout="60000" 
           scheme="https" 
           secure="true"
           clientAuth="false" 
           sslProtocol="TLS"
           keystoreFile="/etc/tomcat6/.keystore"
           keystorePass="changeit"
/>

我试图通过java代码使用此服务器在远程计算机上使用https访问端口8443。我在catalina.out日志上收到java.net.ConnectException: Connection refused。此异常是在java代码的connection.getResponseCode();行上生成的。似乎端口未在远程计算机上打开。我能够访问服务器本身的端口8443,没有任何异常。远程机器没有安装tomcat。

我想在远程计算机上打开该端口,以便通过java代码访问https。我使用ubuntu服务器10.04 LTS作为服务器和远程机器。我不能使用防火墙(由于限制而使用ufw或iptables)。我可以在两台机器上使用stunnel4。

1 个答案:

答案 0 :(得分:0)

首先,请使用:sudo nmap -v -A localhost检查端口8443是否在远程计算机上打开。结果应该是这样的:

Starting Nmap 5.21 ( http://nmap.org ) at 2012-06-26 04:27 UTC
NSE: Loaded 36 scripts for scanning.
Initiating SYN Stealth Scan at 04:27
Scanning localhost (127.0.0.1) [1000 ports]
Discovered open port 22/tcp on 127.0.0.1
Completed SYN Stealth Scan at 04:27, 0.02s elapsed (1000 total ports)
Initiating Service scan at 04:27
Scanning 1 service on localhost (127.0.0.1)
Completed Service scan at 04:27, 0.01s elapsed (1 service on 1 host)

如果没有出现端口8443的信息,例如:

Discovered open port 8443/tcp on 127.0.0.1

这意味着端口8443未启用,您需要为此执行某些操作。