服务器开启https协议

开启Tomcat https服务

发布企业级应用的时候遇到一个问题,就是IOS7.1之后app的下载地址URL必须是https开头的协议,所以服务器必须支持https协议。

实验环境:Mac OSX 或者 win7,Tomcat 7.0,JDK 1.7

一.环境搭建
1. 安装tomcat
a.下载地址:http://tomcat.apache.org/download-70.cgi

b.下载你机器的Tomcat版本
2. 安装JDK

tomcat需要安装与其配套的JDK否则无法运行。

  1. 配置tomcatJDK路径
    4运行测试tomcat
    浏览器中输入:http://localhost:8080
    如果出现了tomcat的欢迎页面说明配置正确了,如果浏览器为空白说明你配置错误,你应该检查控制台输出的错误或警告信息,然后进行改正。
    5、安装vcredist_x86
    这个的东西是安装openssl的环境,安装oenssl前需安装此环境。
    6、安装openssL
    a网上搜索Win32OpenSSL-1_0_1g.exe,下载一个。
    一路下一步,选择安装路径进行安装 (我选择的是D:\OpenSSL-Win32\)

 

二、制作自签名 CA 证书(根证书)

CA 证书的制作有两个步骤:

1、创建一个私钥文件:

openssl genrsa -out myCA.key 2048

私钥文件名为 myCA.key。

2、然后创建根证书:

openssl req -x509 -new -key myCA.key -out myCA.cer -days 730 -subj /CN="My CustomCA"

根证书文件名为 myCA.cer,机构名称为 My Custom CA。

三、制作自签名 SSL 证书(叶证书)

1、首先创建一个私钥:

openssl genrsa -out server.key 2048

私钥文件名为 server.key。

2、然后创建 CSR:

openssl req -new -out server.req -key server.key -subj /CN=127.0.0.1/CN=192.168.31.128/CN=localhost

这里假设服务器的IP 为192.168.2.1。输出文件为 server.req。

3、然后用CSR 去创建 SSL 证书:

openssl x509 -req -in server.req -out server.cer -CAkey myCA.key -CA myCA.cer -days 36500 -CAcreateserial -CAserial server.serial

这里我们假设有效期为100年,输出文件为 server.cer,序号文件为 server.serial(撤销证书时使用)。

4、将 .key 和 .cer 文件导出为 .p12 证书:

openssl pkcs12 -export -in server.cer -inkey server.key -out server.p12 -name "server"

根据命令提示,需要输入两次证书密码。这里我们假设密码为 keypass。输出文件名为 server.p12。

5、将 .p12 文件导入到 java keystore 中:

keytool -importkeystore -v -srckeystore  server.p12 -srcstoretype pkcs12 -srcstorepass keypass -destkeystore server.keystore -deststoretype jks -deststorepass keypass

这里我们假设 keystore 文件名为 server.keystore,keystore 密码为 keypass。

四、使用 SSL 证书

将最后得到的 keystore 文件 (server.keystore) 放在 web 服务器上。例如 Tomcat 目录的 conf 目录下。

然后修改 server.xml:

<Connectorport="8443" protocol="org.apache.coyote.http11.Http11Protocol"SSLEnabled="true"

maxThreads="150" scheme="https" secure="true"

keystoreFile="D:/CA/server.keystore" keystorePass=" keypass "

clientAuth="false" sslProtocol="TLS" />

重启 Tomcat,通过以下地址访问 https 服务:

https://localhost:8443/ 或者 https://192.168.2.1:8443/。

转载于:https://www.cnblogs.com/liyy2015/p/5951483.html

### 阿里云服务器配置 HTTPS 教程 #### 一、安装 SSL 证书 为了在阿里云服务器上启用 HTTPS,首先需要获取并安装 SSL 证书。以下是具体操作: 1. **下载 SSL 证书** 登录到阿里云控制台,在 SSL 证书管理页面下载适合您使用的 Web 服务软件的证书文件。 2. **上传证书至服务器** 将下载好的证书文件上传到您的阿里云服务器指定目录。例如 `/etc/nginx/` 或者 `/etc/httpd/conf.d/` 中的一个子目录[^2]。 3. **编辑 Apache 的 `ssl.conf` 文件** 如果使用的是 Apache 作为 Web 服务器,则可以通过以下命令打开配置文件进行修改: ```bash vim /etc/httpd/conf.d/ssl.conf ``` 在此文件中添加或更新如下字段以加载证书: ```apache SSLEngine on SSLCertificateFile /path/to/certificate.crt SSLCertificateKeyFile /path/to/private.key ``` 4. **Nginx 下创建存储证书的文件夹** 对于 Nginx 用户来说,可以在 `/etc/nginx/` 路径下新建一个专门用来存放 SSL 证书的文件夹,并将证书复制进去。之后编辑 Nginx 主配置文件或者站点对应的虚拟主机配置文件,通常位于 `/etc/nginx/sites-available/default` 或类似的路径下,加入以下内容: ```nginx server { listen 80; server_name yourdomain.com www.yourdomain.com; location / { return 301 https://$server_name$request_uri; } } server { listen 443 ssl http2; server_name yourdomain.com www.yourdomain.com; ssl_certificate /path/to/fullchain.pem; ssl_certificate_key /path/to/private.key; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers HIGH:!aNULL:!MD5; } ``` #### 二、强制使用 HTTPS 为了让所有的 HTTP 请求都自动跳转为 HTTPS 请求,可以按照以下方法实现: 1. **Apache 设置重定向规则** 修改 `.htaccess` 文件或者直接在 VirtualHost 块内增加下面这行代码来完成从 HTTP 到 HTTPS 的永久重定向: ```apache RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] ``` 2. **Nginx 设置重定向规则** 如上述 Nginx 配置所示,已经包含了监听端口 80 并返回状态码 301 指向 HTTPS 版本的内容。这样当访问者尝试通过未加密的方式连接时会被立即引导到安全版本上去[^3]。 #### 总结 以上就是在阿里云服务器上部署 HTTPS 所需的主要步骤,包括但不限于购买和安装 SSL/TLS 数字证书、调整 Web Server (如 Apache 和 Nginx) 的相关设置以及确保所有流量都被正确地导向 HTTPS 协议之上。 ```python import os def check_ssl_config(): """简单检查是否存在特定配置文件""" apache_conf = "/etc/httpd/conf.d/ssl.conf" nginx_path = "/etc/nginx/" if os.path.exists(apache_conf): print(f"Found Apache's {apache_conf}.") elif os.path.isdir(nginx_path): print(f"Nginx directory exists at {nginx_path}. Check inside for certificate folder.") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值