posted by 은이종 2014. 7. 8. 19:22


ssl 설정시 아파치를 가동하면 비밀번호를 묻게 된다.
비밀번호 입력없이 실행되게 하기 위해서는 비밀번호를 파일로 생성후 파일을 읽어들여 구동되도록 변경한다.

# 비밀번호 파일 생성
[root@localhost home]# vi /usr/local/apache/conf/ssl/passwd.sh

#!/bin/sh
echo "비밀번호"


chmod 700 /usr/local/apache/conf/ssl/passwd.sh

위와 같이 입력후 httpd.conf 파일을 수정한다.

# httpd.conf 파일 수정 (혹은 extra/httpd-ssl.conf)
[root@localhost home]# vi /usr/local/apache/conf/httpd.conf

<IfModule mod_ssl.c>
..
..
# SSLPassPhraseDialog  builtin
SSLPassPhraseDialog  exec:/usr/local/apache/conf/ssl/passwd.sh
</ifModule>

httpd.conf 파일 내용중
SSLPassPhraseDialog builtin을 위에서 저장한 비밀번호 파일 경로로 변경한다.
SSLPassPhraseDialog exec:/usr/local/apache/conf/ssl/passwd.sh


변경 완료후.. 아파치 실행 테스트
/usr/local/apache/bin/apachect1 startssl


1. apache 비밀번호를 파일로 생성
2. apache 구동시 비밀번호를 파일에서 입력되도록 변경
3. apache 실행 확인.

최근 이슈가 되고있는 Openssl 업데이트 후에는 apache 재구동해야하는데
보통 사용하고있는 apachectl graceful로는 적용이 안되니, 필히 stop / start 로 재구동해야한다
 


SSL 인증서 멀티 패스워드 입력 방법

) 패스워드 스크립트 파일을 pass.sh 라고 설정했을시 해당 파일을 열어서 편집

vi pass.sh

  www.aaa.com:      443)          echo "aaaaa";;  

   도메인 부분       포트부분      패스워드 부분


+20170308 추가분

현재 Apache 2.2 버전 이상부터는 SNI지원으로
443 Port 1개에 2개이상의 도메인이 가능한 상황
그래서



등의 형태도 가능하니 꼭 설정할때 httpd-ssl.conf Port 확인



Copy&Paste 용

#!/bin.sh
case $1 in
 www.aaa.com:443) echo "aaaaa";;
 www.bbb.com:444) echo "bbbbb";;
esac

exit0

==================================================================================== 

#!/bin.sh
case $1 in
 www.aaa.com:443) echo "aaaaa";;
 www.bbb.com:443) echo "bbbbb";;
esac

exit0
====================================================================================


Nginx SSL 설정

nginx.conf
-------------------------------------------------------
  server {

        listen 443;
        server_name ur.domain.name;

        ssl on;
        ssl_certificate /etc/nginx/ssl/ur_domain_name.crt.cat;
        ssl_certificate_key /etc/nginx/ssl/ur_domain_name.key;

        location / {
            root /var/www/html;
        }
    }

 ---------------------------------------------------------

 참고로
Nginx 는 Apache와 다르게 SSLPassPhraseDialg 기능이 없다
비밀번호 자동입력은 불가능하고 방법은

아래처럼 인증서 비밀번호 자체를 제거해야한다.
(Private 인증서나, 상용 인증서 둘 다 가능)

cp ur_domain_name.key ur_domain_name.key.bak

openssl rsa -in  ur_domain_name.key.bak -out ur_domain_name.key

 


 

'Web/WAS > Apache' 카테고리의 다른 글

Apache socket_timeout , reply_timeout 설정  (0) 2015.12.30
Apache pagespeed 설치  (0) 2015.03.18
Apache method 설정  (0) 2014.11.25
Apache 멀티 Redirect시 주의점  (0) 2014.11.05
apache 재시작 스크립트  (0) 2013.05.24
posted by 은이종 2014. 7. 8. 13:46
패스워드 없이  SSH나 scp 연결할 때, 
또는 Hadoo Cluster 설정 시 SSH Trust login 설정이 필요하다.

A > B 로 Trust설정

1. B 서버 sshd conf  허용설정

/etc/ssh/sshd_config 주석제거
---------------------------------------------------------------------------
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      .ssh/authorized_keys

PasswordAuthentication yes
---------------------------------------------------------------------------

+ 특정한 경우에 (해당 계정만, 특정IP만 허용시킬 때)

AllowUsers
 memex@127.0.0.1 memex@IP

--------------------------------------------------------
sshd 재시작

service sshd restart
 

2. A 서버
 
su - memex
scp /app/memex/.ssh/scp id_dsa.pub memex@172.21.0.142:/app/memex/.ssh/authorized_keys



*. 유의점

authorized_keys
id_dsa.pub
 
파일 그룹권한에 W 권한이 있으면 안된다

700이나 750으로 설정해야함

 




'Linux' 카테고리의 다른 글

SSL 인증서 만료 날짜 확인하기  (0) 2014.09.18
Linux DSR구조에서 Loopback 설정하기  (0) 2014.07.16
JDK와 JRE 구분  (0) 2014.04.24
hpacucli 간단한 명령어  (0) 2014.01.17
쉘, 명령어 창 기본세팅  (0) 2013.12.06