'ca'에 해당되는 글 1건
- 2008/05/25 우분투 8.04에서 아파치 2.2를 설치해 보아요.
먼저 아파치를 설치해 보아요.
역시 설치가 매우 간단하네요. 이런 게 우분투의 매력이겠죠? ^^;
sudo apt-get install apache2
아파치 2.2 버전이 깔리네요.
서브버전이나 파이썬 연동을 위해서 앞으로 다른 패키지들을 설치할 필요가 있겠지만, 지금은 딱 여기까지만 하면 돼요.
개인키와 공개키(인증서)를 만들어 보아요.
처음에 기본으로만 설치를 했더니 openssl도 설치되어 있지 않네요.
설치해 보죠.
sudo apt-get install openssl
개인키 파일과 인증서 파일을 만들죠.
다음에 나오는 3가지 방법 중 아무거나 해도 되네요.
(파일 이름은 kjunine.key, kjunine.crt로 만들께요.)
openssl genrsa -des3 -out kjunine.key 1024
openssl req -new -key kjunine.key -out kjunine.csr
openssl x509 -req -days 1825 -in kjunine.csr -signkey kjunine.key -out kjunine.crt
openssl x509 -req -days 1825 -in kjunine.csr -signkey kjunine.key -out kjunine.crt
openssl genrsa -des3 -out kjunine.key 1024
openssl req -new -x509 -nodes -sha1 -days 1825 -key kjunine.key -out kjunine.crt
openssl req -new -x509 -keyout kjunine.key -out kjunine.crt -days 1825
어떤 식으로 하든 결국 필요한 것은 개인키 파일(key 파일)과 인증서 파일(crt 파일)이구요.
중간에 입력하는 개인키의 비밀번호를 반드시 기억해야 해요.
그리고 가능하면 csr 생성 시에 Common Name에는 서버의 도메인 네임을 입력해야 해요.
중간에 입력하는 개인키의 비밀번호를 반드시 기억해야 해요.
그리고 가능하면 csr 생성 시에 Common Name에는 서버의 도메인 네임을 입력해야 해요.
다음 위치에 복사하도록 하죠. (굳이 어디에 있든 별로 상관은 없어 보이지만..)
sudo cp kjunine.crt /etc/ssl/certs/
sudo cp kjunine.key /etc/ssl/private/
아파치에서 SSL을 사용해 보아요.
우선 다음 명령어로 SSL 모듈을 가능하게 하죠.
sudo a2enmod ssl
위 명령어는 /etc/apache2/mods-available/ssl 파일을 /etc/apache2/mods-enable/ssl 파일에 링크시켜주는 것과 동일한 효과를 내어요.
그리고 default 사이트를 수정하죠.
sudo vi /etc/apache2/sites-available/default
NameVirtualHost *:80 <virtualhost *:80> ServerAdmin kjunine@kjunine.net ServerName dev.kjunine.net DocumentRoot /var/www/ ServerSignature On <directory> Options -Indexes -FollowSymLinks AllowOverride None Order deny,allow Deny from all </directory> <directory /var/www> AllowOverride None Order allow,deny allow from all </directory> ErrorLog /var/log/apache2/error.log LogLevel warn CustomLog /var/log/apache2/access.log combined </virtualhost>
그리고 ssl 사이트를 만들어 주어요.
sudo vi /etc/apache2/sites-available/ssl
<ifmodule ssl_module>
NameVirtualHost *:443
<virtualhost *:443>
ServerAdmin kjunine@kjunine.net
ServerName dev.kjunine.net
DocumentRoot /var/www/
ServerSignature On
SSLEngine on
SSLCertificateFile /etc/ssl/certs/kjunine.crt
SSLCertificateKeyFile /etc/ssl/private/kjunine.key
<directory>
Options -Indexes -FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
</directory>
<directory /var/www>
AllowOverride None
Order allow,deny
allow from all
</directory>
<location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from localhost ip6-localhost
Allow from 192.168.10.
</location>
ErrorLog /var/log/apache2/error.log
LogLevel warn
CustomLog /var/log/apache2/access.log combined
CustomLog /var/log/apache2/ssl_access.log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</virtualhost>
</ifmodule>
ssl 사이트를 사용 가능하게 하죠.
sudo a2ensite ssl
위 명령어는 /etc/apache2/sites-available/ssl 파일을 /etc/apache2/sites-enable/ssl 파일에 링크시키는 것과 동일한 효과를 내어요.
a2enmod, a2dismod, a2ensite, a2dissite 명령어는 우분투에서 모듈과 사이트를 사용 가능/불가능하게 변경하는 명령어에요.
Apache 설정 파일에 대해서는 여기서 설명하기는 힘드네요. 아파치 문서를 참고하세요.
Apache 설정 파일에 대해서는 여기서 설명하기는 힘드네요. 아파치 문서를 참고하세요.
아파치를 다시 시작해야 해요.
개인키 파일을 루트 권한으로만 읽을 수 있기 때문에 sudo 명령어를 사용해야 하네요.
sudo apache2ctl restart
리스타트가 잘 안 되면 일단 정지시켰다가 새로 시작하도록 해보아요.
sudo apache2ctl stop
sudo apache2ctl start
sudo apache2ctl start
다시 시작할 때 개인키 파일의 비밀번호를 입력해야 해요.
그러나..
서버를 재시작(reboot)할 때 비밀번호를 입력해야 하는데 불가능하다는 문제점이 있네요.
비밀번호가 안 걸려 있는 키 파일을 하나 만들어야 겠네요.
openssl rsa -in kjunine.key -out kjunine.key.for.apache2
새로 만든 키 파일을 /etc/ssl/private 디렉토리에 복사해 주어요.
sudo cp kjunine.key.for.apache2 /etc/ssl/private/
아시겠지만 /etc/ssl/private 폴더는 오직 루트 권한으로만 접근이 가능하답니다.
그리고 /etc/apache2/sites-available/ssl 파일을 수정해야죠.
sudo vi /etc/apache2/sites-available/ssl
아래 부분을..
SSLCertificateKeyFile /etc/ssl/private/kjunine.key
다음과 같이 고쳐 주세요.
SSLCertificateKeyFile /etc/ssl/private/kjunine.key.for.apache2
마지막으로 다시 서버를 재시작하면 되겠네요.
sudo apache2ctl restart
환경:
Ubuntu 8.04 Hardy Heron Server Edition - x86
Ubuntu 8.04 Hardy Heron Server Edition - x86
참고:
Ubuntu Server Guide
Ubuntu Server Guide - HTTPD - Apache 2 Web Server
Ubuntu Server Guide - Certificates
Apache HTTP Server Version 2.2 문서
Ubuntu Server Guide
Ubuntu Server Guide - HTTPD - Apache 2 Web Server
Ubuntu Server Guide - Certificates
Apache HTTP Server Version 2.2 문서
'개발 > 서버' 카테고리의 다른 글
| 우분투 8.04에서 톰캣을 설치해 보아요. (0) | 2008/05/27 |
|---|---|
| 우분투 8.04에서 트랙(trac)을 설치해 보아요. (0) | 2008/05/25 |
| 우분투 8.04에서 서브버전을 설치해 보아요. (1) | 2008/05/25 |
| 우분투 8.04에서 아파치 2.2를 설치해 보아요. (0) | 2008/05/25 |

Prev
RSS FEED
