[CentOS7] Apache

Linux/CentOS / / 2015. 3. 18. 16:16
반응형

1. httpd, TLS, WSGI 관련 패키지 설치

# yum install httpd mod_ssl mod_wsgi


2. 디렉토리 생성

$ sudo mkdir -p /srv/webapp11/www


3. 애플리케이션을 새로운 홈 드렉토리로 복사

$ sudo cp ~/webapp.wsgi /srv/webapp11/www/


4. 새로운 디렉토리에 SELinux 컨텍스트 재설정

$ sudo restorecon -Rv /srv/webapp11

restorecon reset /srv/webapp11/www context unconfined_u:object_r:var_t:s0->unconfined_u:object_r:httpd_sys_content_t:s0
restorecon reset /srv/webapp11/www/webapp.wsgi context unconfined_u:object_r:var_t:s0->unconfined_u:object_r:httpd_sys_content_t:s0


5. TLS를 구성하는데 필요한 모든 인증서와 키를 다운로드

5.1 example.com CA 인증서를 /etc/pki/tls/certs에 다운로드

$ cd /etc/pki/tls/certs

$ sudo wget http://classroom.example.com/pub/example-ca.crt


5.2 webapp11.example.com 인증서를 /etc/pki/tls/certs로 다운로드

$ sudo wget http://classroom.example.com/pub/tls/certs/webapp11.crt


5.3 webapp11 개인키를 /etc/pki/tls/private로 다운로드하고 사용권한을 600로 지정

$ cd /etc/pki/tls/private

$ sudo wget http://classroom.example.com/pub/tls/private/webapp11.key

$ sudo chmod 600 webapp11.key


6. 다운로드 한 키와 인증서를 사용하여 https://webapp11.example.com에 대한 새로운 TLS 이름 기반 가상 호스트 구성

6.1 webapp11.conf 파일 생성

$ sudo vi /etc/httpd/conf.d/webapp11.conf

<VirtualHost *:443>
        ServerName webapp11.example.com
        SSLEngine on
        SSLProtocol all -SSLv2 -SSLv3
        SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5
        SSLHonorCipherOrder on
        SSLCertificateFile /etc/pki/tls/certs/webapp11.crt
        SSLCertificateKeyFile /etc/pki/tls/private/webapp11.key
        SSLCertificateChainFile /etc/pki/tls/certs/example-ca.crt
        WSGIScriptAlias / /srv/webapp11/www/webapp.wsgi
</VirtualHost>

<Directory /srv/webapp11/www>
        require all granted
</Directory>


7. 웹 서버 시작 및 부팅 활성화

$ sudo systemctl start httpd.service

$ sudo systemctl enable httpd.service


8. 방화벽 설정

$ sudo firewall-cmd --permanent --add-service=https

$ sudo firewall-cmd --reload


9. 클라이언트 설정

desktop$ wget http://classroom.example.com/pub/example-ca.crt
desktop$ firefox

Edit > Preferences > Advanced > Certificates > View Certificates > Import > example-ca.crt > Trust this CA to identify websites > OK

https://webapp11.example.com으로 접속하면 아래와 같은 결과를 호가인 할 수 있다(신뢰성 있는 페이지로 바로 접근 가능)

UNIX EPOCH time is now: 1426664395.25



반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기