阿里云ECS官网域名映射及Tomcat配置调整,最终使用HTTPS和域名直接访问

本文涉及的产品
云服务器 ECS,每月免费额度200元 3个月
云服务器ECS,u1 2核4GB 1个月
云服务器(按量付费),48vCPU 186GiB
简介: 该篇文章重点说明如何调整Tomcat配置,与域名映射一致,并采用HTTPS访问

在另一篇文章中,已经讲述了怎么在ECS(Ubantu版)上安装docker和Tomcat,并顺利启动和访问,该篇文章重点说明如何调整Tomcat配置,与域名映射一致,并采用HTTPS访问
一、进行ECS服务器域名备案
操作步骤:开通ECS服务器后,进入备案管理,先申请备案服务号,再到ICP备案中,按要求填写有关信息,并填写要备案的域名,例如:www.xxxx.net.cn
如下图所示:
image

后续会按阶段提交和验证一些信息,如手机核实法人及网站负责人,上传备案委托书、备案幕布拍照等,初审通过后,提交到信管局后,需要等17天左右
二、修改Tomcat的配置信息
进入tomcat容器
docker exec -it 容器名字或者id /bin/bash
如下图所示,先使用 docker ps 查看容器名字、ID,然后使用上述命令
image

输入vim命令,显示该命令未找到,先安装
命令行: sudo apt-get install vim,如下图所示,先安装,再重新进入Tomcat容器
image

重新进入还是不行,网上搜索了下,对镜像有了更深入的理解,镜像就是一个静态的安装包,而容器才是动态的可用服务,如果我们使用vim在容器中修改文件,镜像并没有改变,如果再次启动容器,又是按之前的镜像启动,原来修改就又恢复了,这种办法不是解决问题的根本办法,那么参照挂载的方式,只有把容器中的镜像配置文件,复制到Ubantu的文件夹中,然后进行修改,修改完成后,再进行配置文件挂载,则可以从根本上解决问题,以下是具体的操作步骤:
1、使用cp的命令,进行配置文件复制:
image

命令行:docker ps           查看当前的容器,获取 {容器ID},放置到下一个命令行中替换   {容器ID}
命令行:docker cp {容器ID}:/user/local/tomcat/conf  /opt/software/tomcat-conf
两个部分说明:
/user/local/tomcat/conf        为Tomcat容器的Tomcat镜像的位置
/opt/software/tomcat-conf       为新建立存放Tomcat配置文件的位置
以上两端路径,中间使用空行隔开
2、然后使用FileZilla 连接ECS的Ubantu服务器,可以看到在对应路径下,已经有复制过来的配置文件
image

此处主要对server.xml进行修改,故把server.xml复制到本地,然后进行修改
3、server.xml的修改内容包括三个部分:
(1)8080端口设置为80端口,直接映射80端口,为了省略浏览器访问时候输入端口号:8080
image

(2)把webapps下的hostname改为备案的域名:www.xxxx.net.cn,并把context指向webapps下的项目,我们此处用的是website
image

   
为增加的一行,其他的均为直接在原文件位置做修改
(3)配置HTTPS访问
image

在上述修改基础上,再把8443改为443,同时增加配置,非80端口的也跳转至443
image

4、配置SSL证书,开启https访问
 找到
     
         
          CLIENT-CERT
          Client Cert Users-only Area
     
     
         
         
          SSL
          /*
         
         
          CONFIDENTIAL
         
     
6、待以上server.xml和web.xml配置调整完成后,把server.xml、web.xml、pfx证书等三个文件,使用FileZilla传输到/opt/software/tomcat-conf  文件夹中替换当前文件,如下图所示:
image

7、把/opt/software/tomcat-conf   和  /user/local/tomcat/conf  进行挂载,并启动Tomcat
docker run -d -v /opt/software/tomcat-conf:/usr/local/tomcat/conf  -p 80:80 docker.io/tomcat 
 docker run -d -p 443:443 docker.io/tomcat 
8、重新启动容器,使用浏览器访问验证
当前备案正常进行中,进行上述配置后,域名映射和解析均为完成成功,只能等备案结果

三、iptables开放端口
1、# 检查并安装

检查

sudo whereis iptables

安装

sudo apt-get install iptables

查看防火墙配置

/sbin/iptables -L -n
image

2、新建规则文件

新建目录和文件

mkdir /etc/iptables & vi /etc/iptables/rules.conf
加入内容并保存:
*filter

默认INPUT 的策略是DROP 即拒绝所有的外来请求

:INPUT DROP [0:0]

一般情况下用不到FORWARD 可以配置为默认DROP

:FORWARD DROP [0:0]

本机对其他机器访问设置为默认ACCEPT

:OUTPUT ACCEPT [0:0]

允许已经建立和相关的连接

-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

允许icmp协议(即ping)

-A INPUT -p icmp -j ACCEPT

允许回环请求

-A INPUT -i lo -j ACCEPT

开放端口22 80(如果要开放其他端口 继续添加开放规则即可)

-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
COMMIT
按ESC键退出输入状态,SHIFT+冒号,弹出提示,输入   wq,退出并保存
3、使防火墙生效:
iptables-restore < /etc/iptables/rules.conf
4、创建文件,添加以下内容,使防火墙开机启动
vi /etc/network/if-pre-up.d/iptables

!/bin/bash

iptables-restore < /etc/iptables/rules.conf
4、添加执行权限:
chmod +x /etc/network/if-pre-up.d/iptables
5、查看规则是否生效:
iptables -L -n
image

6、在关闭容器后,出现如下问题:
image

按上图所示,出现错误信息为:
Error response from daemon: driver failed programming external connectivity on endpoint zealous_volhard (e4ebc07db12c56abfa13505e1bbd3b5462102b0864cd0a8f1b26a0a0361cd9b8):  (iptables failed: iptables --wait -t filter -A DOCKER ! -i docker0 -o docker0 -p tcp -d 172.17.0.2 --dport 80 -j ACCEPT: iptables: No chain/target/match by that name.
 (exit status 1))
该问题的解决办法为:重启docker服务,即可OK,如上图在错误信息下的操作
待备案成功后,在进行后续操作

相关实践学习
基于函数计算快速搭建Hexo博客系统
本场景介绍如何使用阿里云函数计算服务命令行工具快速搭建一个Hexo博客。
相关文章
|
3天前
|
弹性计算 监控 开发工具
【阿里云弹性计算】阿里云ECS的网络优化实践:VPC配置与网络性能提升
【5月更文挑战第29天】阿里云ECS通过虚拟私有云(VPC)提供高性能、安全的网络环境。VPC允许用户自定义IP地址、路由规则和安全组。配置包括:创建VPC和交换机,设定安全组,然后创建ECS实例并绑定。优化网络性能涉及规划网络拓扑、优化路由、启用网络加速功能(如ENI和EIP)及监控网络性能。示例代码展示了使用Python SDK创建VPC和交换机的过程。
27 3
|
3天前
|
弹性计算 运维 Linux
Docker环境如何配置?使用阿里云OOS一步搞定!
阿里云OOS简化了ECS上应用部署,提供Docker一键安装服务。支持多种操作系统,包括Alibaba Cloud Linux、CentOS、Ubuntu、Debian和Windows Server。要安装Docker,用户只需在OOS扩展程序中选择并确认实例,执行安装。OOS扩展程序还支持Java、Python等开发环境及宝塔面板、WordPress等应用的快速配置,提升运维效率,让云资源管理更便捷。
59 1
Docker环境如何配置?使用阿里云OOS一步搞定!
|
9天前
|
存储 固态存储 安全
租用阿里云服务器2核8G、4核16G、8核32G配置可选实例规格及价格参考
在租用阿里云服务器时,一般通用型实例规格的云服务器处理器与内存配比为1:4,而2核8G、4核16G、8核32G配置就是用户选择较多的配置,这些配置的云服务器一般可用于中小型数据库系统、缓存和各种Web应用,目前在阿里云的活动中经济型e、通用算力型u1、通用型g7、通用型g7a等实例2核8G、4核16G、8核32G配置有优惠,本文为大家介绍这些配置在阿里云目前的活动中可选的实例规格及具体价格和收费标准情况,以供参考。
租用阿里云服务器2核8G、4核16G、8核32G配置可选实例规格及价格参考
|
12天前
|
存储 弹性计算 监控
【阿里云弹性计算】深入阿里云ECS配置选择:CPU、内存与存储的最优搭配策略
【5月更文挑战第20天】阿里云ECS提供多种实例类型满足不同需求,如通用型、计算型、内存型等。选择CPU时,通用应用可选1-2核,计算密集型应用推荐4核以上。内存选择要考虑应用类型,内存密集型至少4GB起。存储方面,系统盘和数据盘容量依据应用和数据量决定,高性能应用可选SSD或高效云盘。结合业务特点和预算制定配置方案,并通过监控应用性能适时调整,确保资源最优利用。示例代码展示了使用阿里云CLI创建ECS实例的过程。
86 5
|
17天前
|
域名解析 弹性计算 Linux
阿里云购买云服务器、注册域名、备案及绑定图文教程参考
本文为大家介绍了2024年购买阿里云服务器和注册域名,绑定以及备案的教程,适合需要在阿里云购买云服务器、注册域名并备案的用户参考,新手用户可通过此文您了解在从购买云服务器到完成备案的流程。
阿里云购买云服务器、注册域名、备案及绑定图文教程参考
阿里云域名购买注册流程_创建信息模板_域名实名认证全流程
阿里云域名注册指南:访问[阿里云域名注册入口,查询并注册心仪域名,选择后缀,加入清单后结算。价格因后缀而异,如.com首年78元。创建域名信息模板完成实名认证,首次需上传资料。获取优惠口令并使用可享折扣
|
17天前
|
运维 JavaScript Java
Serverless 应用引擎产品使用之在阿里云函数计算中想为两个不同的服务分别开通自定义域名如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
8天前
|
域名解析 网络协议 安全
【域名解析DNS专栏】云服务中的DNS解析服务比较:阿里云、AWS、Azure大PK
【5月更文挑战第23天】此对比分析探讨了阿里云DNS、AWS Route 53和Azure DNS的服务特点。阿里云DNS以其智能解析和IPv6支持脱颖而出,适合中国地区用户;AWS Route 53凭借其强大的路由策略和与AWS生态的深度集成吸引高级用户;Azure DNS则以简洁管理和DNSSEC安全支持见长,与Azure平台集成良好。选择取决于具体需求,如功能、易用性、性能、安全性和成本。
【域名解析DNS专栏】云服务中的DNS解析服务比较:阿里云、AWS、Azure大PK
|
14天前
|
域名解析 网络协议 CDN
网站接入阿里云CDN实现域名加速全流程
阿小云网站已通过ICP备案在广州节点上线,但为提升全国用户访问速度,计划接入CDN。以下是4步CDN接入教程:1) 开通阿里云CDN服务;2) 添加加速域名;3) 使用DNS解析验证域名归属权;4) 配置CNAME实现域名与CDN节点关联。详细指南见阿里云CDN官方文档。
|
17天前
阿里云域名注册流程和备案流程(详细图文教程)
阿里云域名注册指南:访问[阿里云域名注册入口,查询并注册心仪域名,如.com/.cn,加入清单后结算。价格因后缀而异,如.com首年78元。创建信息模板进行实名认证,首次需上传资料。获取域名优惠口令并使用,详细步骤见文档。备案流程参照阿里云ICP备案系统。
209 2

热门文章

最新文章