1. 程式人生 > >給伺服器上的tomcat新增https協議

給伺服器上的tomcat新增https協議

生成SSL證書

筆者這裡用的是開源的Let's Encrypt的ssl證書是免費而且好用的

1.下載certbot

# wget  https://dl.eff.org/certbot-auto

2.把檔案移動到/usr/local/bin目錄下,並賦予執行許可權

# mv certbot-auto /usr/local/bin/
# chmod a+x /usr/local/bin/certbot-auto

3.執行下面的命令生成證書

# certbot-auto certonly --webroot -w /home/xx/tomcat6/webapps -d test.omgdba.com -m [email protected]

命令解釋:

–webroot 指定網站根目錄,certbot會在該目錄下生成一個檔案以確認域名對網站的所有權

-d 指定要生成證書的域名,如有多個域名,可使用-d xxx.com -d ex.xxx.com來指定

-m 設定通知郵箱,證書生成後會向該郵箱傳送一封郵件

證書生成後有以下提示

IMPORTANT NOTES:
– Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/test.omgdba.com/fullchain.pem
Your key file has been saved at:
/etc/letsencrypt/live/test.omgdba.com/privkey.pem
Your cert will expire on 2018-07-16. To obtain a new or tweaked
version of this certificate in the future, simply run certbot-auto
again. To non-interactively renew *all* of your certificates, run
“certbot-auto renew”
– If you like Certbot, please consider supporting our work by:

Donating to ISRG / Let’s Encrypt:     https://letsencrypt.org/donate
Donating to EFF:                                 https://eff.org/donate-le

證書生成成功後,會存在於/etc/letsencrypt/live/你的域名,這個目錄下,內容有


下面是在tomcat中配置ssl證書

1.tomcat配置pem證書,需要apr支援

//配置gcc依賴  
# yum install gcc  
  
//安裝openssl  
# wget  https://www.openssl.org/source/openssl-1.1.0f.tar.gz  
# tar -zxvf openssl-1.1.0f.tar.gz  
# cd openssl-1.1.0f  
# ./config --prefix=/usr/local/openssl  
# make && make install  
     
     
    
     
   //安裝apr  
# cd ..  
# wget http://mirror.bit.edu.cn/apache/apr/apr-1.6.2.tar.gz  
# tar -zxvf apr-1.6.2.tar.gz  
# cd apr-1.6.2  
# ./configure --prefix=/usr/local/apr  
# make && make install  
  
//安裝apr-util  
# cd ..  
# wget http://mirror.bit.edu.cn/apache/apr/apr-util-1.6.0.tar.gz  
# tar -zxvf apr-util-1.6.0.tar.gz  
# cd apr-util-1.6.0  
# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr  
# make && make install  
  
//安裝tomcat-native  
# cd ..  
# wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-connectors/native/1.2.12/source/tomcat-native-1.2.12-src.tar.gz  
# tar -zxvf tomcat-native-1.2.12-src.tar.gz  
# cd tomcat-native-1.2.12-src/native  
# ./configure --with-apr=/usr/local/apr --with-ssl=/usr/local/openssl  
# make && make install  
  
  
//配置環境變數  
# vi /etc/profile  
//在末尾新增  
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib  


使profile配置檔案生效
# source /etc/profile  

2.tomcat的配置

更改tomcat下conf目錄下的server.xml(紅色的是修改部分

(1)該檔案的第一處更改(這個80,其實是8080,這樣是為了省略埠號):

<Connector port="80" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="443" />
    <!-- A "Connector" using the shared thread pool-->

(2)該檔案的第二處修改

<Connector port="443" protocol="org.apache.coyote.http11.Http11AprProtocol"
               maxThreads="150" SSLEnabled="true" URIEncoding="UTF-8">
        <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" />
        <SSLHostConfig>
            <Certificate certificateKeyFile="/etc/letsencrypt/live/你的域名/privkey.pem"
                         certificateFile="/etc/letsencrypt/live/你的域名/cert.pem"
                         certificateChainFile="/etc/letsencrypt/live/你的域名/chain.pem"
                         type="RSA" />
        </SSLHostConfig>
    </Connector>

(3)該檔案的第三處修改

<!-- Define an AJP 1.3 Connector on port 8009 -->
    <Connector port="8009" protocol="AJP/1.3" redirectPort="443" />
注意:SSL證書需要用到443埠,要保證443埠沒有被佔用

3.將http強制調轉到https

在tomcat的conf檔案下的web.xml配置檔案末尾的地方新增下面的程式碼

        <security-constraint>  
	    <!-- Authorization setting for SSL -->  
	    <web-resource-collection >  
	        <web-resource-name >SSL</web-resource-name>  
	        <url-pattern>/*</url-pattern>  
	    </web-resource-collection>  
	    <user-data-constraint>  
	        <transport-guarantee>CONFIDENTIAL</transport-guarantee>  
	    </user-data-constraint>  
	</security-constraint>

注意:如果證書生成失敗,則有可能是因為python的版本過低,ssl證書生成需要的python版本至少是2.7以上

下載&編譯&安裝新版本的python

1.首先通過下面這個命令檢查python版本(注意V是大寫的

# python -V
2.下載python版本,這個是下載地址:https://www.python.org/ftp/python/
# wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz

3.下載完解壓縮

# tar -zxvf Python-3.5.2.tgz

4.進入解壓縮後的目錄,安裝配置

# cd Python-3.5.2/
# ./configure 
注意:

執行 ./configure 時,如果報錯:

configure: error: no acceptable C compiler found in $PATH

說明沒有安裝合適的編譯器。這時,需要安裝/升級 gcc 及其它依賴包。

# yum install make gcc gcc-c++ 

完成之後,重新執行:

# ./configure 

5.配置完成後,就可以進行編譯了

# make 

6.最後就是安裝了

# make install 

安裝成功以後,就可以檢視 Python 的版本了:

# python -V
Python 2.7.5
# python3 -V
Python 3.5.2

你會發現有倆個python版本,

設定 3.x 為預設版本

檢視 Python 的路徑,在 /usr/bin 下面。可以看到 python 連結的是 python 2.6,所以,執行 python 就相當於執行 python 2.6。

# ls -al /usr/bin | grep python
-rwxr-xr-x.  1 root root      11216 12月  1 2015 abrt-action-analyze-python
lrwxrwxrwx.  1 root root          7 8月  30 12:11 python -> python2
lrwxrwxrwx.  1 root root          9 8月  30 12:11 python2 -> python2.6
-rwxr-xr-x.  1 root root       7136 11月 20 2015 python2.6

將原來 python 的軟連結重新命名:

# mv /usr/bin/python /usr/bin/python.bak

將 python 連結至 python3:

# ln -s /usr/local/bin/python3 /usr/bin/python

這時,再檢視 Python 的版本:

# python -V
Python 3.5.2

輸出的是 3.x,說明已經使用的是 python3了。

配置yum

升級 Python 之後,由於將預設的 python 指向了 python3,yum 不能正常使用,需要編輯 yum 的配置檔案:

# vi /usr/bin/yum

同時修改:(如果沒有,下面那個檔案,就不用修改)

# vi /usr/libexec/urlgrabber-ext-down

將 #!/usr/bin/python 改為 #!/usr/bin/python2.6,儲存退出即可。




相關推薦

伺服器tomcat新增https協議

生成SSL證書筆者這裡用的是開源的Let's Encrypt的ssl證書,是免費而且好用的1.下載certbot# wget https://dl.eff.org/certbot-auto2.把檔案移動到/usr/local/bin目錄下,並賦予執行許可權# mv cert

網站部署到Linux伺服器新增https證書

用的是Nginx伺服器 一、部署 將網站打包成war包 放到Linux的data/wwwroot/default目錄 解壓:jar -xvf novel.war 刪除war包:rm novel.w

Tomcat 使用https協議部署本地https伺服器

1、找到JDK安裝目錄,在bin下找到自帶的keytool.exe工具來建立Tomcat證書 2、使用快捷鍵win+R,輸入cmd開啟電腦上的命令視窗,然後輸入如下命名: keytool -genkeypair -alias "tomcat" -keyalg "RSA" -keys

Tomcat使用Https協議

rect 上線 color class pac 算法 res 配置 文件 背景: 在一個項目上線的過程中,采用了阿裏雲的負載均衡,而不是nginx的負載均衡,所以需要配置tomcat支持https協議 1、生成keystore 1 keytool -genkeypair

配置Tomcat使用https協議(配置SSL協議)

操作 method enable 安裝 文件的 chan 根據 域名 add 轉載地址:http://ln-ydc.iteye.com/blog/1330674 內容概覽: 如果希望 Tomcat 支持 Https,主要的工作是配置 SSL 協議 1.生成安全證書

配置 Tomcat 使用 https 協議

tomcat https centos一、生成證書 使用jdk 自帶工具keytool 生成證書 [[email protected] ~]# keytool -genkeypair-alias "tomcat" -keyalg "RSA" -keystore"/usr/local/src/apac

Tomcat 配置https協議

記錄一下為了使Tomcat容器支援https協議所做的配置步驟 1.首先部署Tomcat的環境,從apache官方網站上下載解壓版tomcat解壓後防止某個目錄即可,不再贅述 2.使用java自帶的工具生成安全證書 進入jdk安裝目錄下的bin資料夾,進入dos介面(資源管理器進入該

Tomcat部署HTTPS協議

1.生成證書; keytool -genkeypair -alias "tomcat" -keyalg "RSA" -validity 90 -keystore "D:\tomcat.keystore" “D:\tomcat.keystore” 生成的keystore位

伺服器Tomcat啟動慢的問題

找出問題 檢視Tomcat啟動日誌,使用命令 # $TOMCAT_HOME是Tomcat程式目錄 vim $TOMCAT_HOME/logs/catalina.out # vim G 跳到末尾 G # 高亮ms /ms 找到耗時最多的那一項,我的是這一項 30-Nov-2018 21:18:56

Linux下伺服器rzsz傳限制時如何伺服器傳檔案?

很多時候公司伺服器上傳檔案需要用到rzsz,但是檔案大小限制為4GB,這時候需要把一個大的檔案壓縮成幾個小檔案,解壓時候是一起解壓。 命令如下: 壓縮: 將大檔案或目錄打包、 壓縮並分割成制定大小的檔案,在Linux下可以通過組合使用tar,bzip2(或者gzip),

配置Tomcat支援https協議

1.通過JDK自帶的keytool生成證書 keytool -genkey -v -alias tomcat -keyalg RSA -keystore D:/tomcat.keystore -val

如何配置Tomcat使用https協議

配置Tomcat使用https協議 一.  建立tomcat證書   這裡使用JDK自帶的keytool工具來生成證書:   1. 在jdk的安裝目錄\bin\keytool.

配置Tomcat使用https協議

一.  建立tomcat證書 這裡使用JDK自帶的keytool工具來生成證書: 1. 在jdk的安裝目錄\bin\keytool.exe下開啟keytool.exe 2. 在命令列中輸入以下命令: keytool -genkeypair -alias "tomcat" -ke

jprofile 監控遠端linux伺服器tomcat 效能配置

前提條件: 1. 測試環境 伺服器:Linux X64;tomcat 7.0;jdk 1.7;jprofiler_linux_9_2.sh 客戶端:Windows10;jprofiler_windows-x64_9_2.exe 2. JProfiler軟體下載

linux伺服器tomcat執行遇到的問題

問題描述:當tomcat啟動成功後,訪問web伺服器,請求失敗。導致失敗的原因之一可能就是防火牆將8080埠或者其他埠攔截掉了,我們需要重新開放8080或者其他埠,不建議關閉防火牆。 1.安裝 iptables-services yum install iptables-servic

Tomcat配置https協議、以及http協議自動REDIRECT到HTTPS

在命令提示符視窗,進入Tomcat目錄,執行以下命令: keytool -genkey -alias tomcat -keyalg RSA -keypass changeit -storepass changeit -keystore server.keystore -va

Tomcat配置HTTPS協議的過程

    最近要寫一個微信小程式,現在要將前端與後臺連通起來。但是微信小程式只支援https協議,而Tomcat預設http協議。所以在這裡需要給Tomcat配置https協議。     然而在看過很多的教程後並嘗試了很多遍,總是出現問題,感覺每個教程似乎都不完整。因此為了不

tomcat新增https服務

1、配置檔案裡面配置https服務 <Connector port="443" protocol="org.apache.coyote.http11.Http11AprProtocol" SSLEnabled="true"       scheme="https" secure="true"     

配置Tomcat使用https協議(SpringMVC配置SSL協議)

一、生成安全證書 二、配置tomcat 伺服器 1、個人環境: jdk 1.8  tomcat 7 2、生成安全證書:在jdk的安裝目錄下的 D:\Program Files (x86)\Java\jdk1.8.0_131\bin 目錄下有keytool.exe

伺服器Tomcat執行jsp專案與伺服器tomcat域名解析外網訪問-史最詳細的

一:Java環境的配置 1. java環境的配置應該都學過吧,這裡簡單的講一下。 下載安裝java JDK,注意安裝的路徑,我們需要進行環境變數的配置。 2. 安裝完成以後,配置環境變數 環境變數的配置這裡就以win7為例:右擊計算機——屬性——高階系統設定-。 3.