tomcat https访问和使用域名访问网站

本文介绍如何在CentOS 6.5环境下为Tomcat 9.0配置HTTPS服务,包括使用keytool生成自签名证书、修改Tomcat配置文件以启用SSL连接、配置防火墙及访问测试等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

版本: centos 6.5 tomcat 9.0 java 1.8

1.首先使用keytool工具生成证书: keytool 命令的目录是:/usr/local/java/bin下 配置了java的环境就可以直接使用. keytool -genkeypair -alias "tomcat" -keyalg "RSA" -keystore "/usr/local/tomcat\tomcat.keystore"

相关参数解释: keytool 密钥和证书管理工具

命令: -certreq 生成证书请求 -changealias 更改条目的别名 -delete 删除条目 -exportcert 导出证书 -genkeypair 生成密钥对 -genseckey 生成密钥 -gencert 根据证书请求生成证书 -importcert 导入证书或证书链 -importpass 导入口令 -importkeystore 从其他密钥库导入一个或所有条目 -keypasswd 更改条目的密钥口令 -list 列出密钥库中的条目 -printcert 打印证书内容 -printcertreq 打印证书请求的内容 -printcrl 打印 CRL 文件的内容 -storepasswd 更改密钥库的存储口令

使用 "keytool -command_name -help" 获取 command_name 的用法

密钥库口令:123456(这个密码非常重要) 名字与姓氏:tomcat.loc(以后访问的域名或IP地址,非常重要,证书和域名或IP绑定) 组织单位名称:ljlj(随便填) 组织名称:ljlj(随便填) 城市:bj(随便填) 省市自治区:hd(随便填) 国家地区代码:dzs(随便填)

2.将证书应用到tomcat中: 修改conf/server.xml文件: <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="/usr/local/tomcat/tomcat.keystore" keystorePass="123456" />

3.重新启动tomcat: ./shutdown.sh ./startup.sh

4.防火墙配置重新启动服务: -A INPUT -m state --state NEW -m tcp -p tcp --dport 8443 -j ACCEPT service iptables restart

5.访问地址: https://tomcat.loc:8443/ali_pay/

但是这样的话,需要修改防火墙的配置,开通8443端口,希望使用https的默认端口访问.

1.修改tomcat中的配置文件server.xml: 1)<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="443" /> 2)<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="/usr/local/tomcat/tomcat.keystore" keystorePass="123456" /> 3) <Connector port="8009" protocol="AJP/1.3" redirectPort="443" />

2.修改防火墙: -A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT

3.重启防火墙和tomcat.

4.访问地址: https://tomcat.loc/ali_pay 但是这样的话,需要知道访问的项目目录在tomcat的webapps中目录的名称,希望直接使用域名访问项目:

  1. <Host name="tomcat.loc" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Context path="" docBase="ali_pay" reloadable="true"/> 2.如果有多个网址: 修要在<Engine> <Host name="pay.loc" appBase="webapps" unpackWARs="true" autoDeploy="true"> <Context path="" docBase="ali_pay" reloadable="true"/> </Engine>

转载于:https://my.oschina.net/WYU3CHEN/blog/895018

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值