ImageMagick 설치

ImageMagick 썸네일을 생성하는 php extension 이다.

자세한 설명은 요기 : http://ko.wikipedia.org/wiki/이미지매직

먼저 프로그램 설치를 한다. ‘ㅅ’a

한 20~여개가 의존성으로 깔리더라능.. ㄷㄷ..

 

이후에 아래 링크에서 패키지 다운로드를 받아 서버에 업로드 하고 설치 진행을 한다.

http://pecl.php.net/package/imagick

설치 진행은 /opt 폴더에서 진행하였다.

5, 6 번째줄은 자기서버의 php 경로에 따라 달라지겠다.

 

이후에 php.ini 에 해당 익스텐션을 불러오도록 설정한다.

php 에서 익스텐션을 정상적으로 불러오나 확인

그다음 아파치 재시작을 하면 바로 적용이 됩니다 🙂

 

CentOS 6.x 업데이트가 되지 않을때.

yum 을 이용해서 centos 는 쉽게 업데이트가 가능하다.

정말 간단하지 않은가 =ㅅ=a

 

CentOS 6.2 에서 yum 을 이용한 업데이트시 아래와 같이 에러가 발생하였다.

헐키 – -a 그러면서 업데이트가 안된다.

사유는 mahatari 가 보안 관련 이슈 때문에 삭제 / 대규모업데이트 가 된듯 하다.

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/6.3_Technical_Notes/matahari.html

 

그리하여 아래와 같이 삭제를 한뒤에 업데이트 한다.

mahatari 파이썬으로 만들어진 내부서비스 감시툴이다.

쓰는 사람이 있다면 업데이트 이후 재설치를 하시면 되겠다.(저는 쓰지 않습니다 ‘ㅅ’a)

CVE-2015-0204 취약점 – FREAK Attack

개요
-프랑스 국립 연구소(INRIA) 및 MS社에서는 SSL을 통해 강제로 취약한 RSA로 다운 그레이드 시킬 수 있는 취약점을 발견
※ CVE-2015-0204 : OpenSSL s3_clnt.c의 ssl3_get_key exchange 함수에서 발생하는 취약점으로 공격자가 MITM(Man In The Middle Attack)을 통해 512비트 RSA로 다운 그레이드 시켜 정보를 유출시킬 수 있는 취약점

해당 시스템
-영향을 받는 시스템
-Openssl 0.9.8 대 0.9.8zd 이전 버전
-Openssl 1.0.0 대 1.0.0p 이전 버전
-Openssl 1.0.1 대 1.0.1k 이전 버전

취약점 확인절차
-(시스템 운영자) 시스템 측면 취약점 확인
-아래의 명령어를 입력하여 취약점 유무 확인
-openssl  s_client  -connect  [web site명 입력]:433  -cipher EXPORT

 

1. 정상

2. 취약점 노출 화면 (CERTIFICATE 코드가 보인다.)

 

해결방안
-(시스템 운영자) 해당 취약점에 영향 받는 버전 사용자
-OpenSSL 1.0.2 버전으로 업그레이드(http://www.openssl.org/source/)
-버전 업그레이드가 어려운 경우, OpenSSL ‘RSA_EXPORT Cipher Suites’를 지원하거나 클라이언트로 ‘RSA_EXPORT suite’를 전송할 수 있는 모든 기능을 비활성화 시킬 것을 권장

[참고사이트]
1. http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2015-0204
2. http://FreakAttack.com
3. https://mozilla.github.io/server-side-tls/ssl-config-generator/

출처 : http://www.krcert.or.kr/kor/data/secNoticeView.jsp?p_bulletin_writing_sequence=22573

————————————————————————————-

여튼 뭐 또 그렇단다 =ㅅ=a..

확인결과 yum update 가 아직 안나왔다.

때문에 extra/httpd-ssl.conf 파일중 SSLCipherSuite!EXPORT 추가를 해서 막는다.

 

ps. 2015 – 03 – 17 추가내용.

음 yum 이 나왔다.

 

설치 이후 체인지 로그에서 fix 가 된것을 확인할 수 있겠다.

 

umount 가 진행되지 않을 경우(device is busy)

umount 명령을 내렸을때

umount : device is busy

라는 에러가 발생하며 umount 가 안될때 사용할 수 있는 방법이다.

 

1. 먼저 해당 디바이스 사용자가 누구인지 확인.

 

2. 해당 마운트 지점을 사용하는 프로세스 kill

 

음~ 추가적으로  원격으로 작업할때는 일반적으로 자신도 user 로 붙어서 사용하기 마련인데.

만약 자신이 로그인한 아이디가 위의 /home 일경우 위 명령어로 프로세스 kill을 시키면

자신의 접속이 끊어지게 되겠다 ‘ㅅ’a

 

자신이 로그인한 계정의 home 디렉토리를 다른쪽으로 옴겨둔뒤에 umount 를 진행하자 ‘ㅅ’a

ps. 계정의 home 디렉토리를 수정하는 명령어.

 

mod_ruid2 의 사용.

mod_ruid2 는 suphp 와 같은 각 계정의 권한으로 실행되게 해주는 DSO 모듈이다.

suphp 는 DSO 가 아니고 apache 1.x 에서 동작하는데 이건 apache2 용이라고 보면 되겠다.

 

http://sourceforge.net/projects/mod-ruid

소스는 소스포지에서 & 설치는 매우 간단하다. ‘ㅅ’a

 

음 그냥 무난하고 설치도 빠르다. 그리고 설정도 간단하다.

 

엔드유져는 웹에서 생성한 파일을 ftp로 직접 수정을 할수 있고

퍼미션 변경등의 행위가 불필요 하기 때문에 매우 편리하다.

심지어 쉬운설치 를 지원하는 XE 혹은 wordpress 의 경우 Ftp 정보 입력없이 플러그인 이나

위젯 설치가 가능한 장점이 있다.

 

이보다 설정이 간단할수는 없지만 함정이 있다.

 

mod_security2 와 권한 문제로 충돌한다. 물론 apache 를 MPM_ITK 로 했을경우에도 충돌한다.

여기서 수 많은 삽질을 해보았다. 모드시큐리티는 해야하기 때문에 ‘ㅅ’a

아파치 8080포트 nginx 80 포트 로 리버스 프로시를 구성해서 nginx 에서 mod_security2 를 돌리고

프록시를 해서 아파치에서 웹서비스를 가동하는 방법 으로 구성은 했었지만 서비스 운용이

불가능하였다 (많은 문제가 있음 : nginx – mod_security2 가 안정적이지 않다.)

apache – apache(프록시)  를 구성해서 해결을 해볼수도 있겠다. 이건 시도하지 않았다.

다만 구성상 가능할것으로 판단 된다.

프록시를 한경우 mod_remoteip (아파치2.4 내장) 모듈로 프록시 되어온 실제 IP를 log로 남기는

작업을 별도로 할수 있다.

 

 

현재 어찌어찌 하여 하나의 아파치2.4 서버에 mod_ruid2 및 mod_security2 를 운영하고 있다.

현재 error_log에 문제가 발생하고 있지는 않지만 좀더 지켜본 뒤 정리해서 업데이트를 하도록 하겠다.

(안정화 테스트중…)

20150216_PicPick_163016

 

2015-11-10 추가 내용: ruid2 사용시 php.ini 의 session.gc_maxlifetime 에 의해 세션이 자동삭제가되지 않는 증상이 확인 되었고 이를 해결하기 위해 명령어를 주기적(cron등록)으로 실행하여 삭제를 합니다.
*- 세션처리를 file 형태가 아닌 memcached 등을 이용한경우 필요가 없음. -*

/tmp  <—— 세션 디렉토리 선언에 따라 변경할것.
-cmin +24  <—— 세션이 만들어진지 24분이 초과 한경우(필요시 변경)

사유: 폴더 안에 약 32000여개 이상의 파일이 만들어질 경우 해당 폴더에 접근하는 시간이 늦어질수 있음
(파티션종류에 따라 틀림) 즉 웹서버 성능저하가 올수 있음. 때문에 필히 필요한 부분 ‘ㅅ’a