실례적으로 httpd 가상 호스트의 설정과 https의 설정을 설명합니다

요구 사항:
1. httpd 서버 구축, 요구사항:
이름 기반 가상 호스트 두 개를 제공합니다.
(a)www1.stuX.com, 페이지 파일 디렉터리는/web/vhosts/www1입니다.오류 로그
/var/log/httpd/www1.err, 방문 로그는/var/log/httpd/www1.access
(b)www2.stuX.com, 페이지 파일 디렉터리는/web/vhosts/www2이다.오류 로그
/var/log/httpd/www2.err, 접근 로그는/var/log/httpd/www2.access
(c) 두 가상 호스트를 위한 각각의 홈 파일/index를 만듭니다.html, 내용은 각각 대응하는 호스트 이름
(d) www1을 통해.stuX.com/server-status에서 httpd 작업 상태에 대한 정보를 출력하고 장부만 제공할 수 있습니다
비밀번호를 입력해야 접근할 수 있습니다 (status:status)
2. 위의 두 번째 가상 호스트에 https 서비스를 제공하여 사용자가 https를 통해 이 웹 사이트에 안전하게 접근할 수 있도록 합니다.
(1) 인증서 인증, 인증서 사용 국가(CN), 주(Henan), 도시(Zhengzhou) 및 그룹 요구
뜨개질(MageEdu);
(2) 설정 부서는tech이고 호스트 이름은 www2.stuX.com, 메일박스[email protected]
구현 단계:
하나.
1) 필요한 디렉토리 파일 만들기
   mkdir -pv /web/vhosts/www{1,2}
   mkdir /var/log/httpd
   cd /var/log/httpd
   touch www{1,2}.{err,access}

2) 홈 페이지를 작성하여 각각의 내용을 문서화
   /web/vhosts/www1/index.html 내용은 다음과 같습니다.
 <h1>www1.stuX.com</h1>

  /web/vhosts/www2/index.html 내용은 다음과 같습니다.
 <h1>www2.stuX.com</h2>

3)/etc/httpd/conf/httpd를 구성합니다.conf, 내용은 다음과 같습니다.
NameVirtualhost 192.168.1.179:80
<VirtualHost 192.168.1.179:80>
Servername www1.stuX.com
DocumentRoot "/web/vhosts/www1"
ErrorLog /var/log/httpd/www1.err
CustomLog /var/log/httpd/www1.access combined
<Directory "/web/vhosts/www1">
Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<Location /server-status>
SetHandler server-status
Order deny,allow
Allow from all
</Location>
<Directory /server-status>
Options None
AllowOverride None
AuthType basic
AuthName "Admin Area"
AuthUserFile /etc/httpd/users/.htpasswd
 require user status
</Directory>
</VirtualHost>
<VirtualHost 192.168.1.179:80>
Servername www2.stuX.com
DocumentRoot "/web/vhosts/www2"
ErrorLog /var/log/httpd/www2.err
CustomLog /var/log/httpd/www2.access combined
</VirtualHost>

2.
1) 개인 cA 구축
  cd /etc/pki/CA
 (umask 077; openssl genrsa -out pirvate/cakey.pem 2048) # CA
 openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 2655 # 
    echo 01 > serial
    touch index.txt

2) 서버에 대한 인증서 생성
cd /etc/httpd/
mkdir certs
cd certs
(umask 077;openssl genrsa -out httpd.key 2048) #  
openssl req -new -key httpd.key -out httpd.csr -days 3655 # :  
openssl ca -in httpd.csr -out httpd.crt -days 3655

(3) httpd에서 디지털 인증서를 사용하도록 설정
주의: ssl 세션은 IP 기반으로만 만들 수 있습니다. 이것은 서버가 하나의 IP만 있으면 가상 호스트에만 https 서비스를 제공한다는 것을 의미합니다
 yum list mod_ssl
  cd ../conf.d/
  vim ssl.conf
  <VirtualHost _default_:443>
  DocumentRoot "/www/sslhost"
  ServerNmae www.magesu.com:443
 SSLCertificateFile /etc/httpd/certs/httpd.crt #  
SSLCertificateKeyFile /etc/httpd/certs/httpd.key# 

/etc/pki/CA/cacert 가져오기.pem을 cacert로 변경
검증: openssls_client -connect 192.1:443
openssl s_client -connect 192.1:443 -CAfile/etc/pki/CA/cecert.pem
openssl s_client -connect www.mageu.com -CAfile/etc/pki/CA/cecert.pem
GET/index.html HTTP/1.1
Host:192.168.1.179

좋은 웹페이지 즐겨찾기