亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 服務器 > Web服務器 > 正文

詳解在Ubuntu上的Apache配置SSL(https證書)的正確姿勢

2024-09-01 13:56:11
字體:
來源:轉載
供稿:網友

首先看一下阿里云官方的教程:

文件說明:

1. 證書文件xxxxxx.pem,包含兩段內容,請不要刪除任何一段內容。

2. 如果是證書系統創建的CSR,還包含:證書私鑰文件xxxxxxxx.key、證書公鑰文件public.pem、證書鏈文件chain.pem。

( 1 ) 在Apache的安裝目錄下創建cert目錄,并且將下載的全部文件拷貝到cert目錄中。如果申請證書時是自己創建的CSR文件,請將對應的私鑰文件放到cert目錄下并且命名為xxxxxxxx.key;

( 2 ) 打開 apache 安裝目錄下 conf 目錄中的 httpd.conf 文件,找到以下內容并去掉“#”:

#LoadModule ssl_module modules/mod_ssl.so (如果找不到請確認是否編譯過 openssl 插件)#Include conf/extra/httpd-ssl.conf

( 3 ) 打開 apache 安裝目錄下 conf/extra/httpd-ssl.conf 文件 (也可能是conf.d/ssl.conf,與操作系統及安裝方式有關), 在配置文件中查找以下配置語句:

# 添加 SSL 協議支持協議,去掉不安全的協議SSLProtocol all -SSLv2 -SSLv3# 修改加密套件如下SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUMSSLHonorCipherOrder on# 證書公鑰配置SSLCertificateFile cert/public.pem# 證書私鑰配置SSLCertificateKeyFile cert/xxxxxxx.key# 證書鏈配置,如果該屬性開頭有 '#'字符,請刪除掉SSLCertificateChainFile cert/chain.pem

( 4 ) 重啟 Apache。

( 5 ) 通過 https 方式訪問您的站點,測試站點證書的安裝配置,如遇到證書不信任問題,請查看幫助視頻。

然而這只能參考。在Ubuntu下面,我是用apt安裝的Apache,但是它沒有httpd.conf,只有一個apache2.conf,好吧,其實這個文件和httpd.conf差不多,它里面是這樣注釋的:

# It is split into several files forming the configuration hierarchy outlined# below, all located in the /etc/apache2/ directory:## /etc/apache2/# |-- apache2.conf# | `-- ports.conf# |-- mods-enabled# | |-- *.load# | `-- *.conf# |-- conf-enabled# | `-- *.conf# `-- sites-enabled# `-- *.conf#

這個版本的Apache把配置文件分散到了其他小文件中,結構就是上面那樣子的。你要是愿意的話,也可以自己寫一個httpd.conf然后include進去。

重點講一下https的配置,第一步,你要保證你外部環境的443端口是打開的。

第二步確保你安裝了ssl_module。沒有就apt-get install openssl ,可能還需要一些依賴,但是都是小問題。

然后打開ports.conf,以下幾句是不可少的:

<IfModule ssl_module> Listen 443</IfModule> <IfModule mod_gnutls.c> Listen 443</IfModule>

接著打開mods-available,找到ssl.conf和ssl.load

ssl.load長這樣:

# Depends: setenvif mime socache_shmcbLoadModule ssl_module /usr/lib/apache2/modules/mod_ssl.sossl.conf長這樣:<IfModule mod_ssl.c>  # Pseudo Random Number Generator (PRNG): # Configure one or more sources to seed the PRNG of the SSL library. # The seed data should be of good random quality. # WARNING! On some platforms /dev/random blocks if not enough entropy # is available. This means you then cannot use the /dev/random device # because it would lead to very long connection times (as long as # it requires to make more entropy available). But usually those # platforms additionally provide a /dev/urandom device which doesn't # block. So, if available, use this one instead. Read the mod_ssl User # Manual for more details. # SSLRandomSeed startup builtin SSLRandomSeed startup file:/dev/urandom 512 SSLRandomSeed connect builtin SSLRandomSeed connect file:/dev/urandom 512  ## ## SSL Global Context ## ## All SSL configuration in this context applies both to ## the main server and all SSL-enabled virtual hosts. ##  # # Some MIME-types for downloading Certificates and CRLs # AddType application/x-x509-ca-cert .crt AddType application/x-pkcs7-crl .crl  # Pass Phrase Dialog: # Configure the pass phrase gathering process. # The filtering dialog program (`builtin' is a internal # terminal dialog) has to provide the pass phrase on stdout. SSLPassPhraseDialog exec:/usr/share/apache2/ask-for-passphrase  # Inter-Process Session Cache: # Configure the SSL Session Cache: First the mechanism  # to use and second the expiring timeout (in seconds). # (The mechanism dbm has known memory leaks and should not be used). #SSLSessionCache dbm:${APACHE_RUN_DIR}/ssl_scache SSLSessionCache shmcb:${APACHE_RUN_DIR}/ssl_scache(512000) SSLSessionCacheTimeout 300  # Semaphore: # Configure the path to the mutual exclusion semaphore the # SSL engine uses internally for inter-process synchronization.  # (Disabled by default, the global Mutex directive consolidates by default # this) #Mutex file:${APACHE_LOCK_DIR}/ssl_mutex ssl-cache   # SSL Cipher Suite: # List the ciphers that the client is permitted to negotiate. See the # ciphers(1) man page from the openssl package for list of all available # options. # Enable only secure ciphers: SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM  # SSL server cipher order preference: # Use server priorities for cipher algorithm choice. # Clients may prefer lower grade encryption. You should enable this # option if you want to enforce stronger encryption, and can afford # the CPU cost, and did not override SSLCipherSuite in a way that puts # insecure ciphers first. # Default: Off SSLHonorCipherOrder on  # The protocols to enable. # Available values: all, SSLv3, TLSv1, TLSv1.1, TLSv1.2 # SSL v2 is no longer supported SSLProtocol all -SSLv2 -SSLv3  # Allow insecure renegotiation with clients which do not yet support the # secure renegotiation protocol. Default: Off #SSLInsecureRenegotiation on  # Whether to forbid non-SNI clients to access name based virtual hosts. # Default: Off #SSLStrictSNIVHostCheck On </IfModule> # vim: syntax=apache ts=4 sw=4 sts=4 sr noet

之后就是站點的配置了,這里使用默認的default-ssl.conf:

<IfModule mod_ssl.c> <VirtualHost _default_:443> ServerName   ################加入你自己的站點配置##########    # Available loglevels: trace8, ..., trace1, debug, info, notice, warn, # error, crit, alert, emerg. # It is also possible to configure the loglevel for particular # modules, e.g. #LogLevel info ssl:warn  ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined  # For most configuration files from conf-available/, which are # enabled or disabled at a global level, it is possible to # include a line for only one particular virtual host. For example the # following line enables the CGI configuration for this host only # after it has been globally disabled with "a2disconf". #Include conf-available/serve-cgi-bin.conf  # SSL Engine Switch: # Enable/Disable SSL for this virtual host. SSLEngine on  # A self-signed (snakeoil) certificate can be created by installing # the ssl-cert package. See # /usr/share/doc/apache2/README.Debian.gz for more info. # If both key and certificate are stored in the same file, only the # SSLCertificateFile directive is needed. SSLCertificateFile /etc/apache2/cert/public.pem SSLCertificateKeyFile /etc/apache2/cert/xxxxxxx.key  # Server Certificate Chain: # Point SSLCertificateChainFile at a file containing the # concatenation of PEM encoded CA certificates which form the # certificate chain for the server certificate. Alternatively # the referenced file can be the same as SSLCertificateFile # when the CA certificates are directly appended to the server # certificate for convinience. SSLCertificateChainFile /etc/apache2/cert/chain.pem  # Certificate Authority (CA): # Set the CA certificate verification path where to find CA # certificates for client authentication or alternatively one # huge file containing all of them (file must be PEM encoded) # Note: Inside SSLCACertificatePath you need hash symlinks # to point to the certificate files. Use the provided # Makefile to update the hash symlinks after changes. #SSLCACertificatePath /etc/ssl/certs/ #SSLCACertificateFile /etc/apache2/ssl.crt/ca-bundle.crt  # Certificate Revocation Lists (CRL): # Set the CA revocation path where to find CA CRLs for client # authentication or alternatively one huge file containing all # of them (file must be PEM encoded) # Note: Inside SSLCARevocationPath you need hash symlinks # to point to the certificate files. Use the provided # Makefile to update the hash symlinks after changes. #SSLCARevocationPath /etc/apache2/ssl.crl/ #SSLCARevocationFile /etc/apache2/ssl.crl/ca-bundle.crl  # Client Authentication (Type): # Client certificate verification type and depth. Types are # none, optional, require and optional_no_ca. Depth is a # number which specifies how deeply to verify the certificate # issuer chain before deciding the certificate is not valid. #SSLVerifyClient require #SSLVerifyDepth 10  # SSL Engine Options: # Set various options for the SSL engine. # o FakeBasicAuth: # Translate the client X.509 into a Basic Authorisation. This means that # the standard Auth/DBMAuth methods can be used for access control. The # user name is the `one line' version of the client's X.509 certificate. # Note that no password is obtained from the user. Every entry in the user # file needs this password: `xxj31ZMTZzkVA'. # o ExportCertData: # This exports two additional environment variables: SSL_CLIENT_CERT and # SSL_SERVER_CERT. These contain the PEM-encoded certificates of the # server (always existing) and the client (only existing when client # authentication is used). This can be used to import the certificates # into CGI scripts. # o StdEnvVars: # This exports the standard SSL/TLS related `SSL_*' environment variables. # Per default this exportation is switched off for performance reasons, # because the extraction step is an expensive operation and is usually # useless for serving static content. So one usually enables the # exportation for CGI and SSI requests only. # o OptRenegotiate: # This enables optimized SSL connection renegotiation handling when SSL # directives are used in per-directory context. #SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire <FilesMatch "/.(cgi|shtml|phtml|php)$"> SSLOptions +StdEnvVars </FilesMatch> <Directory /usr/lib/cgi-bin> SSLOptions +StdEnvVars </Directory>  # SSL Protocol Adjustments: # The safe and default but still SSL/TLS standard compliant shutdown # approach is that mod_ssl sends the close notify alert but doesn't wait for # the close notify alert from client. When you need a different shutdown # approach you can use one of the following variables: # o ssl-unclean-shutdown: # This forces an unclean shutdown when the connection is closed, i.e. no # SSL close notify alert is send or allowed to received. This violates # the SSL/TLS standard but is needed for some brain-dead browsers. Use # this when you receive I/O errors because of the standard approach where # mod_ssl sends the close notify alert. # o ssl-accurate-shutdown: # This forces an accurate shutdown when the connection is closed, i.e. a # SSL close notify alert is send and mod_ssl waits for the close notify # alert of the client. This is 100% SSL/TLS standard compliant, but in # practice often causes hanging connections with brain-dead browsers. Use # this only for browsers where you know that their SSL implementation # works correctly. # Notice: Most problems of broken clients are also related to the HTTP # keep-alive facility, so you usually additionally want to disable # keep-alive for those clients, too. Use variable "nokeepalive" for this. # Similarly, one has to force some clients to use HTTP/1.0 to workaround # their broken HTTP/1.1 implementation. Use variables "downgrade-1.0" and # "force-response-1.0" for this. # BrowserMatch "MSIE [2-6]" / # nokeepalive ssl-unclean-shutdown / # downgrade-1.0 force-response-1.0  </VirtualHost></IfModule> # vim: syntax=apache ts=4 sw=4 sts=4 sr noet

發現了嗎,這是把阿里云教程里的配置項分散到了兩個配置文件里面。

然后在瀏覽器上使用https訪問,成功。(linux可以使用wget或curl測試)

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到服務器教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品亚洲第一区| 欧美巨乳在线观看| 欧美肥臀大乳一区二区免费视频| 亚洲一区二区三区香蕉| 久久99精品久久久久久噜噜| 久久久久一本一区二区青青蜜月| 91超碰中文字幕久久精品| 91精品国产自产在线| 精品呦交小u女在线| 亚洲国产高清自拍| 欧美激情区在线播放| 姬川优奈aav一区二区| 欧美成人精品不卡视频在线观看| 国产精品影院在线观看| 精品无人区乱码1区2区3区在线| 国产成人精品日本亚洲专区61| 日韩免费在线观看视频| 亚洲美女视频网| 欧美日韩另类在线| 成人在线精品视频| 亚洲综合国产精品| 欧美午夜片欧美片在线观看| 欧美专区国产专区| 国产在线精品一区免费香蕉| 精品电影在线观看| 中文字幕国产精品| 欧美亚洲午夜视频在线观看| 久久久av一区| 亚洲国产欧美一区二区三区同亚洲| 国产97人人超碰caoprom| 欧美成人国产va精品日本一级| 中文字幕日韩欧美在线视频| 欧美大胆在线视频| 欧美与欧洲交xxxx免费观看| 成人激情春色网| 8050国产精品久久久久久| 俺去了亚洲欧美日韩| 欧美激情性做爰免费视频| 色悠悠国产精品| 日韩成人中文字幕在线观看| 亚洲最大的网站| 亚洲一二三在线| 国产精品久久不能| 亚洲国产91精品在线观看| 日本成人黄色片| 26uuu另类亚洲欧美日本一| 日韩美女av在线| 欧美亚洲国产另类| 国产精品久久久久久av福利软件| 欧美日韩国产中文字幕| 欧美激情国产精品| 最新国产精品亚洲| 夜夜嗨av色一区二区不卡| 久久久久久久影院| 亚洲毛茸茸少妇高潮呻吟| 97视频在线观看视频免费视频| 久久99国产精品久久久久久久久| 91久久久久久国产精品| 久久精品美女视频网站| 91精品国产自产在线老师啪| 欧美日韩激情小视频| 中文字幕免费精品一区| 丝袜一区二区三区| 亚洲自拍小视频免费观看| 亚洲精品中文字| 成人黄色大片在线免费观看| 国产精品爱久久久久久久| 日韩中文字幕在线精品| 日韩精品在线视频美女| 国产精品 欧美在线| 午夜精品在线视频| 97久久精品视频| 9.1国产丝袜在线观看| 91欧美激情另类亚洲| 欧美一级淫片videoshd| 国产成人91久久精品| 国产精品入口免费视| 欧美激情第6页| 国产精品中文字幕久久久| 成人欧美一区二区三区在线湿哒哒| 裸体女人亚洲精品一区| 中文字幕视频在线免费欧美日韩综合在线看| 毛片精品免费在线观看| 国产情人节一区| 一区二区欧美日韩视频| 日韩在线免费观看视频| 欧美专区日韩视频| 亚洲成人激情视频| 国产精品视频自在线| 欧美日韩国产第一页| 国内揄拍国内精品| 91亚洲永久免费精品| 亚洲国产日韩欧美在线动漫| 亚洲国产99精品国自产| 亚洲精品福利在线观看| 青青草精品毛片| 成人网在线视频| 欧美激情高清视频| 亚洲图片在区色| 97精品在线视频| 久久夜色撩人精品| 中文字幕日韩精品有码视频| 美女久久久久久久| 国产精品美女www爽爽爽视频| 日韩中文字幕精品视频| 久久国产精品免费视频| 38少妇精品导航| 精品夜色国产国偷在线| 国产亚洲欧美一区| 97超视频免费观看| 91国产精品视频在线| 午夜精品久久久久久久男人的天堂| 亚洲美女喷白浆| 青青久久av北条麻妃黑人| 91色视频在线观看| 全亚洲最色的网站在线观看| 国产欧美欧洲在线观看| 欧美电影免费观看高清完整| 日本久久精品视频| 亚洲人精品午夜在线观看| 九九久久国产精品| 91九色国产视频| 2020欧美日韩在线视频| 国产精品视频永久免费播放| 久久天堂电影网| 4438全国成人免费| 国产视频精品va久久久久久| 社区色欧美激情 | 国产精品h片在线播放| 成人在线中文字幕| 日韩在线激情视频| 欧美一级在线播放| 97在线视频免费看| 欧美一级大片在线免费观看| 精品无人国产偷自产在线| 久久精品精品电影网| www.欧美三级电影.com| 91中文字幕在线观看| 在线播放日韩专区| 亚洲欧美激情在线视频| 亚洲综合精品一区二区| 国产一区二区在线免费| 久久久久国产精品免费| 久久视频在线免费观看| 国产精品美女久久久久久免费| 久久久久久久久久久网站| 亚洲国产精品美女| 最近2019中文字幕在线高清| 日韩亚洲精品视频| 精品欧美国产一区二区三区| 国产情人节一区| 国产精品美女主播在线观看纯欲| 亚洲精品自产拍| 亚洲人成网7777777国产| 蜜月aⅴ免费一区二区三区| 亚洲情综合五月天| 在线电影中文日韩| 欧美日韩在线视频首页| 亚洲女人天堂成人av在线| 色99之美女主播在线视频| 国产精品444| 欧美床上激情在线观看| 日韩动漫免费观看电视剧高清| 不卡中文字幕av|