Linux环境tomcat、nginx启用https

Linux环境tomcat、nginx启用https

0x00 准备环境

tomcat nginx
主机名 CentOS7-1 CentOS7-3
IP地址 192.168.12.134 192.168.12.136

0x01 部署tomcat、nginx服务器

详见:Linux部署nginx+tomcat集群

0x02 tomcat启用https

一、证书导出

  • 进入jdk1.8.0_251\bin目录下

    # 进入java的bin路径下
    cd /usr/local/jdk1.8.0_181/bin/
    
    # 生成证书
    keytool -genkeypair -alias "tomcat" -keyalg "RSA" -keystore "/usr/local/tomcat.keystore" 
    
    • 根据提示填写信息,可随意填写但密码需要记住
    • 系统会提示建议使用专用格式,根据提示输入命令即可

二、应用证书

  • D:\apache-tomcat-8.0.47\conf\server.xml中修改配置文件

    # 进入tomcat的server.xml进行配置
    cd /usr/local/apache-tomcat-8.5.83
    vim conf/server.xml
    
    
    <Connector port= " 8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
    	maxThreads="150" SSLEnabled= "true" scheme="https" secure="true"
    	clientAuth= "false" sslProtocol="TLS"
     />
                   
    
    keystoreFile="/usr/local/tomcat.keystore" keystorePass="123456"
    
  • 注释掉下面字段

    
    

0x03 nginx启用https

  • 需要安装http_ssl_module模块

    # 进入源码包
    cd /usr/src/nginx-1.20.2/
    
    # 安装http_ssl_module,有模块可以跳过
    # 配置信息 重装需要这命令
    ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
    # 不重装需要这只需要安装模块
    ./configure --with-http_ssl_module
    
    # 编译并安装
    make 
    make install
    
    # 重启
    /usr/local/nginx/sbin/nginx -s reload
    
    
  • 生成证书

    # 新建目录crt
    cd /usr/local/nginx/conf/
    mkdir crt
    cd crt
    
    # 生成key 输入密码后记住!!!
    openssl genrsa -des3 -out server.key 1024
    
    # 生成证书
    openssl req -new -key server.key -out server.csr
    
    #备份key
    cp server.key server.key.org
    
    openssl rsa -in server.key.org -out server.key
    
    openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
    
  • 配置nginx

    # 配置nginx.conf
    vim nginx.conf
    

    将下面字段的注释拿掉并修改为

    server {
        listen       443 ssl;
        server_name  localhost;
    
        ssl_certificate      /usr/local/nginx/conf/crt/server.crt;
        ssl_certificate_key  /usr/local/nginx/conf/crt/server.key;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2; 
        ssl_prefer_server_ciphers on;
    }
    
  • 重启

    # 关闭nginx
    ./sbin/nginx -s stop
    
    # 开启nginx
    ./sbin/nginx
    

你可能感兴趣的:(服务器部署,tomcat,nginx,linux)