목록본격 SE업무이야기 (19)
지니워의 일상다반사
저번에 이어 sendmail에 대하여 포스팅을 해보겠다. 서버에서 직접 메일을 발송하는 방법으로는 저번에 언급했던 telnet을 이용한 방법이 있다.(글 보러가기) telnet은 최근에 간단한 테스트를 진행하는 이외의 용도에는 크게 사용되고 있지 않은 추세이기도 하고 워낙 오래된 프로그램이기도 하기에(Linux 설치시 기본패키지에 포함되지 않는 경우가 많다.)생소한 유저들도 많을 것이다. 사용 방법도 번거롭기도 하고...그래서 메일을 발송하는 또다른 방법을 이번 포스팅에서 다뤄볼까 한다. * shell에서 mail 쉽게 보내기 - shell에서 'man mail'을 치면 mail의 옵션값에 대한 세세한 설명들을 볼 수 있다...라고 하지만 그 내용이 상당히 많고 지금 당장 불필요한 내용들도 많기 때문에,..
리눅스에서 주로 사용하는 메일 패키지는 sendmail이다. sendmail은 널리 쓰이는 만큼 취약점도 해커들에게 많이 노출이 되어있다. 그 때문에 보안 부분이 강화 된 qmail도 쓰인다고 하지만 아쉽게도 qmail을 직접적으로 접해보지는 못했다. sendmail 처음 접했을 때는 가볍게 접근할 수 있지만 알면 알수록 어려운 프로그램임에 틀림없다. 설정파일인 sendmail.cf를 열어보면 default 값으로 설정파일의 Line이1838이나 되며 직접적으로 서비스를 이용하는데 큰 불편은 없지만 해킹에 대한 대비라던가 보안관련하여 세팅값을 바꾼다던가 하는등의 세세한 설정값들이 많은 편이기 때문에 숙련된 SE라도 sendmail의 세부세팅에 관해서는 잘 모르는 경우가 많다. 현업에서 sendmail을 ..
CentOs에는 ls 명령어에 time-style라는 옵션이 있다.(5.x의 버전에도 있는 것으로 보아 생긴지는 오래된 듯 하다.) 이 옵션은 옵션명에서도 느껴지듯이 파일의 날짜와 시간이 출력되는 방식을 설정할 수 있다. 자세한 것은 man ls 명령어로 찾을 수 있지만 귀차니즘이 있는 분들을 위해 아래에 적어놓겠다. --time-style=STYLE with -l, show times using style STYLE: full-iso, long-iso, iso, locale, +FORMAT. FORMAT is interpreted like ??date??; if FORMAT is FORMAT1FORMAT2, FORMAT1 applies to non-recent files and FORMAT2 to re..
개발자에게서 crontab 등록 요청이 왔다. php파일을 주기적으로 실행해 달라는 요청이었는데 솔직히 이 부분을 잘 몰라서 살짝 고민했으나 구글링의 도움으로 해결했다. ================================================================================ * 서버에서 php 실행하기 - php 관련 패키지 중 php-cli라는 패키지가 있다. 이는 php-CommandLine, 즉 command line에서 php를 실행할 수 있게끔 해주는 패키지로써 이 패키지가 설치되어 있다면 crontab에 php 'php파일 절대경로' ex) php /home/good/script.php 로 설정해주면 된다. ==========================..
약 3일전부터 마스터 DB쪽에서 실행되는 쿼리들의 이상현상이 보이면서 회사가 발칵 뒤집어졌다. 원인을 찾아보기위해 이것저것 찾아보고 뜯어보고 고민해보고, 최후의 수단으로 서비스를 잠시 중단하고 서버 자체를 재부팅했음에도 불구하고 이상증상이 계속 되었던 것이다. (자세한 이야기는 차후 포스팅에서 이야기하겠다.) 여차저차해서 서비스의 메인을 담당하고 있는 서버 한대를 재설치하게 되었다. 직접적으로 서비스에 관계되는 서버인지라 IDC에 연락하여 급하게 os 재설치를 요청했고 재설치가 완료되자마자 서버설정에 들어갔다. "어라?" yum update가 되지 않는다. 뿐만 아니라 ping 테스트도 아웃바운드 ping이 안되는 것이다. yum update를 실행하면 pycurl error 6 - couldn't re..
authentication : 입증 웹서버를 다뤄본 사람이라면 친근한 단어일 것이다. 풀신텍스는 아니더라도 'auth'라는 단어는 꽤 익숙한 단어일 것이다. authentication(이하 줄여서 auth)는 웹 상에서 특정경로나 파일에 접속하려고 할 때 거쳐야 하는 인증과정이라고 볼 수 있다. auth는 다음과 같은 경우에 자주 쓰인다. web root는 /home/public_html이고 /home/public_html/admin 에는 관리자 권한이 있는 유저들만이 접근이 가능해야 한다. 이럴 경우 인증과정을 거쳐서 관리자 권한이 있는 유저들이 접근 가능하게 해주는 것이 바로 auth이다. nginx의 auth설정 방법은 아파치와 비슷하지만 .htaccess 파일을 생성하는 과정이 없기 때문에 오히려..
어제 두대의 서버를 새로 입고하여 설치를 진행했다. 웹서버와 DB서버였는데 두대의 세팅을 고객사의 요청에 따라 세팅을 마무리했다. 그중 웹서버에 대한 추가 요청이 들어왔는데 ftp서버를 구축해 달라는 것이었다. 흐음... 그러고보니 난 리눅스에서 ftp서버를 따로 구축해 본적이 없다. 이미 서비스가 구축되어 있는 서버에 ftp client를 이용하여 사용만 해봤을 뿐, 직접 구축해 본적이 없었기 때문에 "전 ftp 서버를 구축할 줄 모르니 이 요청은 거부하겠습니다." 라고 대답했...다면 아마 백수가 되었을 것이다. 몰라도 어쩌겠는가?하라면 해야지. 일단 구글에서 검색을 해보니 리눅스에서 vsftpd를 최근에 많이 사용한다고 한다. 그리고 친절하게 설치하는 방법이랑 간단한 세팅방법까지.(사실 세팅 방법이..
이번 포스팅은 제목 그대로 DNS가 헷갈린 이야기다. 엄밀히 이야기해서 DNS의 개념에 대해 헷갈린 이야기라고 할까? 이번에 관리하는 서버가 늘어나고 관리영역 또한 신규로 늘어나는 부분이 생겼다. 그에 맞추어 어제 DNS 설정에 대한 지시를 받았는데 내가 알고 있던 DNS의 개념과 약간은 다른듯해서 의문점이 생겼다. 서버단에서 DNS설정이란 간단하게 이야기해서 nameserver를 설정하는 것으로 /etc/resolv.conf에서 설정하는 값을 이야기한다. bind를 설치하고 어쩌고 저쩌고는 뒤로 하고서라도 간단하게나마 저런 개념으로 알고 있었는데 이 아이피를 이 도메인으로 연결되게 하라는 등의 이야기가 나와서 좀 당황했다. 모르는게 있으면 검색하고 그래도 모르면 업무지시자에게 물어보라. 배움에는 부끄러..
뭐에 홀린듯이 그간 잘 쓰던 테스트용 가상 리눅스 OS를 날려먹었다. VM으로 쓰던 Virtual Box를 버전업 하는 과정에서 vdi파일을 다른 곳으로 옮겨두기 위해서 잘라내기 & 복사하기를 했는데 복사가 되는 과정에서 esc를 눌러버렸다. vdi 파일은 증발 ^^...... ㅁㄴ이ㅏㅓ리ㅏㅓㄴ이ㅏ러미나ㅓ리ㅏㅁ니라ㅓ 허허허헝 ㅠㅠ 혹시나 하는 마음에 쓰레기통도 찾아봤지만 보이지 않았다. 에휴... VM(Virtual Machine)으로 주로 Virtual Box를 쓰는데 Vmware보다 가볍기도 하고 사용법이 간단하다. 하지만 이번에 버전업을 하면서 의아하게 느꼈던 점이 있는데 최신 버전(2013년 12월 3일 현재4.3.4)64bit OS에 대한 지원을 하지 않는 다는 것이다. 혹시나 싶어서 몇단계에 ..
어제 밤, 잠이 안와서 이리저리 뒤척이다가 새벽 세시쯤이 되어서야 잠이 들었는데 잠들고 얼마 있지 않아 slave server 중 한대에서 장애가 발생했다. 모니터링 하시는 분들이 대표님께 연락을 했고 대표님께서 일단 서버가 제대로 돌아가게끔 조치는 해두고 주무셨단다. 출근해서 db server의 log부터 살펴보았다. 이런 저런 error message들이 많이 나타나고 있었는데 인과관계를 잘 따져 이 error들이 나오게 된 근본문제를 찾기 시작했다. 발견. 서버를 재부팅하거나 mysql을 재시작 직후 event scheduler 를 실행하지 못했다는 로그를 발견했다. 이걸 단서로 원인을 찾기 시작. 1. DB에 접속한 다음 mysql 변수 중 event scheduler과 관련된 것이 있는지 찾아보..