728x90 반응형 Linux90 한 대의 리눅스 서버에 두 개 이상의 버전이 다른 php(5.3/7.4)설치 php 5.3 이하 버전에서만 돌아가는 사이트 두 개를 호스팅 해야 할 일이 생겼다. 처음에는 서버 한 대를 더 세팅하려고 했는데... 소규모 홈페이지 두 개를 위해서 별도의 서버를 할당 한다는 것이 영 내키지 않았다. 무엇보다도 이 서버에서는 앞으로도 php 5.4 이상은 사용할 수 없다는 점은 낭비로 느껴졌다. 이를 해결할 방법을 찾다보니 도커(docker)와 php-fpm이 눈에 띄었다. 먼저 시도한 것은 php-fpm이었는데 php의 컴파일 과정(옵션)에 문제가 있었는지 db와의 커넥션에서 계속 발생하는 오류를 해결하지 못했다. 도커는....인터넷으로 자료를 찾아봤는데 결국에는 서적을 구매해서 시간을 두고 천천히 접근해 보기로 했다. 흥미롭고 유용한 기술인 것은 분명하지만 지금 내게 필요한 것은 .. 2020. 3. 26. 보안서버 구축 - Let's Encrypt의 와일드카드 인증서 작업중인 사이트가 거의 마무리 되어가는 이 시점에 SSL 인증서를 적용하기로 했다. 워드프레스는 미리 인증서를 적용해서 https로 만들어 놓은 후에 사이트 제작을 진행하는 것이 손이 덜 가는데 그누보드는 완료된 후에 http를 https로 전환해도 작업할 것이 많지 않다. [root@tki /]# certbot certonly --manual --preferred-challenges=dns --email harepius@gmail.com --server https://acme-v02.api.letsencrypt.org/directory --agree-tos -d *.careinfo.kr -d careinfo.kr Saving debug log to /var/log/letsencrypt/letsencry.. 2020. 3. 17. php 버전 변경 후 오류 (5.X <-> 7.X) php의 버전을 변경 한 후에 사이트가 정상작동이 안된다면 당연히 오류를 찾아내서 수정해야 한다. 하지만 사이트는 정상적으로 작동하고 있는데 서버에는 에러로그가 계속 쌓이고 있다면 빨리 찾아내기 어려울 수도 있다. php 5.6.x 버전을 7.3.x로 변경 후에 그누보드 5에서 다음과 같은 에러로그가 발생한다. PHP Warning: Use of undefined constant wr_9 - assumed 'wr_9' (this will throw an Error in a future version of PHP) 그 뒤에는 에러가 발생한 경로가 표시되어 있다. 위의 경우는 wr_9를 'wr_9'로 수정하면 해결되는 비교적 단순한 오류이며 그냥 두더라도 사이트의 운영에는 전혀 지장이 없다. 하지만 해결하지.. 2020. 2. 29. apache의 (internal dummy connection) 로그 apache의 access log 중에서 아래의 로그는 (apache가 스스로에게 http 요청을 보내는)지극히 정상적인 것으로 무시해도 된다. 무시해도 상관없는 로그라면 차라리 기록에 남기지 않는 것은 어떨까? (ip주소) - - [날짜.시간] "OPTIONS * HTTP/1.0" 200 - "-" "Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/버전 (internal dummy connection)" ip는 서버 자신의 주소이거나 루프백(loopback) 주소일 수 있다.(ipv4에서의 loopback address는 보통 127.0.0.1을 사용하고 ipv6에서는 ::1이다) httpd.conf에서 전체 설정을 할 수 있지만 ip주소로의 access에 대해서만 따.. 2020. 2. 23. let's encrypt SSL 와일드카드 인증서의 갱신 let's encrypt에서 발급 받을 수 있는 SSL 인증서 덕분에 보안서버를 무료로 구축할 수 있다. 지금 운영중인 사이트의 대부분은 사용자의 개인정보를 요구하지 않는 즉, 가입이나 온라인 상에서 결제가 이루어지는 사이트는 아니기에 보안서버는 필수가 아닌 선택이다. 마침 3개월전에 발급 받았던 와일드카드 인증서의 만료일이 코앞으로 다가왔다. 보통은 만료일이 한참 지난 후에야 재발급을 받곤 했는데 이번에는 인증서를 갱신했다. 간단하다 certbot renew! 도메인 뒤에 -0001이 붙은 것은 유효기간이 만료된 것으로 기억한다. certbot의 renew명령을 실행하면 위와 같이(가렸지만) 이전에 발급받았던 도메인이 모두 한꺼번에 갱신을 시도한다. 웹서버에서는 해당 도메인의 인증서 관련파일(cert,.. 2020. 2. 22. URL이 아닌 ip주소로 사이트가 열리는 것을 막고 싶다면... IP주소로 홈페이지에 접속하는 것을 차단해보자. 내가 리눅스로 웹서버를 구축할 때 가장 먼저 셋팅하는 것들 중의 하나가 바로 ip주소로 웹사이트가 열리는 것을 차단하는 것이다. ip주소로 사이트가 열린다는 것 자체가 보안상의 문제라고 생각하지는 않지만, 서버에 단 하나의 ip만 할당한 채로 다수의 홈페이지를 구동시키고 있다면 ip로 접근했을 때에 특정 홈페이지만 계속 노출될 수 있다. 실제로 ip주소로 사이트가 열리는 서버도 종종 보인다. (ex: 신천지 - 2020.02.25 수정) ip주소로 사이트에 접속하려는 시도는 항상 존재한다. 웹브라우저의 주소입력란에 URL이 아닌 IP를 입력하여 접근하는 방식이다. 대수롭지 않게 넘기긴 하는데 초당 3~4회씩, 10분 안팎의 접근 시도(매크로)는 불필요한 로.. 2020. 2. 16. 네임서버의 기본 보안 설정 - bind === bind의 로그파일 일부 === ----------------------------------------------------------------------------------------------- network unreachable resolving 'm90-134-80-80.cust.tele2.hr/NS/IN': 2a00:801:103:9::beef#53 network unreachable resolving 'm90-134-80-80.cust.tele2.hr/NS/IN': 2a00:801:103:a::f00d#53 network unreachable resolving 'm90-134-80-80.cust.tele2.hr/NS/IN': 2a00:801:103:b::f00d#53 network.. 2020. 2. 12. phpMyAdmin의 설치 및 상위버전으로의 업데이트 서버를 운영하면서 phpMyAdmin의 필요성을 느낀적은 없었다. 하지만 혼자 사용하는 서버가 아니다보니 가끔이기는 하지만 다른 사용자들이 특정 db의 초기화나 db의 추가 생성 등의 작업을 요구할 때가 있다. 최근에는 phpMyAdmin의 설치를 요구한다. 구글링을 해보니 예전의 몇몇 버전에서는 보안이슈도 있었고 일부 웹호스팅 업체에서는 보안상의 이유로 서비스를 제공하지 않는 것으로 보인다. 대안으로 비슷한 류의 프로그램도 있는 듯 하다. 일단 아래와 같이 yum으로 설치했다. 프로그램의 설치 후 웹에서의 접근을 허용하도록 설정을 바꾸지 않으면 HTTP 403 에러가 발생한다. 아파치(apache)를 웹서버로 사용하고 있다면 /etc/httpd/conf.d의 phpMyAdmin.conf를 열어보자. 버.. 2020. 1. 24. DNS 서버의 최소 보안설정에 대해서... 별다른 보안설정 없이 서버를 운영하다가 낭패를 보는 경우가 있다. 그러고 나서야 보안의 필요성을 실감한다. 네임서버에 대한 기본적인 방화벽이나 설정파일의 구문 오류는 제외하고 다음의 몇 가지 정도는 필수점검사항이 아닐까 생각한다.1. 네임서버 프로그램의 버전정보 노출 bind를 사용하고 있는 경우 프로그램의 버전까지 노출할 필요는 없다. 아래와 같이 option 구문에 한 줄 추가해서 노출을 막도록 하자. options { ........... version none; ........... 2. 네임서버의 Zone Transfer의 설정 네임서버를 두 개 이상 운영하고 있는 경우 이들 서버간의 데이터를 동일하게 유지(동기화)하기 위한 개념이.. 2020. 1. 23. 워드프레스, 그누보드로 만든 홈페이지(사이트)의 서버 이전 대략 1년 전 즈음에 서버를 통째로 옮겨야 하는 상황이 발생했다. A라는 IDC센터에 있던 서버를 B라는 센터로 옮기는 작업이었기 때문에 번거롭지만 사람이 직접 움직여야 했다. 변경되는 ip주소를 먼저 알 수 있다면(실제로 미리 알 수 있었다) 원격접속을 통해서 서버의 고정ip주소와 운영중인 도메인의 네임서버 등도 미리 변경설정 할 수는 있었지만, 무엇보다도 가장 큰 문제는 해당 도메인의 ip주소를 변경신청하면 적용될 때까지 사이트가 접속불능상태가 된다는 것이다. (그래봐야 10분 안팎이긴 하다) 하지만 예를들어 지금처럼 A 서버에서 운영중인 pius라는 사이트를 B 서버로 옮기는 작업은 사이트가 접속불능상태로 되는 일은 막을 수 있다. 두 서버 모두 정상적으로 운영되고 있다면 말이다. 우선 A 서버에서.. 2020. 1. 20. 이전 1 ··· 6 7 8 9 다음 728x90 반응형