본문 바로가기

Server Story....

ssh ssh brute force attack ssh 임의 암호로 인한 공격방지 기본. ssh brute force attack이란 흔한 사용자 이름과 암호로 ssh를 계속 접속해서 해킹을 시도하는 방법으로, 여러가지 피해를 끼칩니다. 1. 정말로 약한 암호를 사용하는 사용자가 있을 경우 해당 계정이 해킹당할 수 있으며, 이 해킹당한 계정으로 로컬 커널 익스플로잇 등을 사용해서 루트를 빼앗길 수도 있습니다. 2. 그렇지 않더라도, 사용자 인증 로그(auth.log)에 짧은 시간 내에 수많은 실패 로그가 쌓여 다른 로그를 보는 데 방해가 될 수 있습니다. 3. 접속을 받는 동안 ssh 대몬이 암호학적 계산을 해야 하므로 시스템 자원을 소모합니다. iptables 는 리눅스 커널에 기본적으로 포함되어 있는 방화벽으로, 아주 다양한 방화벽 규칙을 만들 수 있으며, iptables 모듈을 사용해서.. 더보기
ubuntu update Server Change /etc/apt/sources.list # deb http://de.archive.ubuntu.com/ubuntu/ lucid main restricted # deb http://de.archive.ubuntu.com/ubuntu/ lucid-updates main restricted # deb http://security.ubuntu.com/ubuntu lucid-security main restricted # See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to # newer versions of the distribution. deb http://de.archive.ubuntu.com/ubuntu/ lucid main res.. 더보기
DB 자동저장 스크립트 DB 자동저장 스크립트 /etc/cron.daily 에 파일을 만들어 두거나 crond 에 등록해서 사용하시면 됩니다. [기능요약] 1.root 계정으로 전체 디비를 디비별로 백업 가능함 2.옵션으로 테이블 별 백업 가능함. 3.보존 설정 기간 이후 자동 삭제 -------------------------------------------- source---------------------------------------------------------- #!/bin/sh ########################################################################### # # # By 질주본능 2009/06/03 # # V 2.0 # # 데이터 베이스별 혹은 테이블 별.. 더보기
DDOS 방지를 위한 apache2 설정 DOSHashTableSize 3097 DOSPageCount 100 DOSSiteCount 100 DOSPageInterval 1 DOSSiteInterval 1 DOSBlockingPeriod 10 DOSLogDir "/var/log/apache2/mod_evasive.log" 위의 내용이 설정값. 즉, 1초에 100 번 동일 신호 등이 오면 로그 남기고 아웃 10초간 블럭 sudo apt-get install libapache2-mod-evasive 우리서버 설정 내용 DOSHashTableSize 3097 DOSPageCount 3 DOSSiteCount 50 DOSPageInterval 1 DOSSiteInterval 1 DOSBlockingPeriod 10 설정 DOSHashTableSize .. 더보기
php 프로그램으로 대량 메일 발송하기. 1시간에 10만건.???? http://www.erury.com/hots/community/bbs/board.php?bo_table=share91&wr_id=1053&sfl=&stx=&sst=wr_datetime&sod=asc&sop=and&page=8 위에서 퍼옴 일반적으로 php 프로그래밍은 길어봐야 수초 내에 끝나는 것이 대부분이다. 하지만, 메일을 보낸다거나 할 경우에는 소스 상단에 set_time_limit(0); 를 추가해서 보내는 경우가 있다. 물론 돈이 많거나, 실력이 뛰어난 프로그래머라면, 좋은 발송기를 사거나, 좋은 프로그램을 짜서 보내면 되지만, 나와 같이 허접한 실력의 프로그래머라면, php로 해결하는 수 밖에 없다 ^^;;; 보통의 경우... 대량 메일을 보내기 위해서는 서버단 설정을 먼저해야 한다. 요즘 .. 더보기
apache 이미지 캐쉬 mod_expires 설정 =============================== 설정 사례 ====================================== httpd.conf ExpiresActive On ExpiresDefault "access plus 1 month" ExpiresByType /home/tbo/game/de1/image/png "access plus 1 month" ExpiresByType /home/tbo/game/de1/image/gif "access plus 1 month" ExpiresByType /home/tbo/game/de1/image/jpg "access plus 1 month" ExpiresActive On ExpiresDefault "access plus 1 month" Expires.. 더보기
리눅스 snmp 설정 및 세션 스크립트 예) /etc/snmp/snmpd.conf # sec.name source community # 192.168.1.1 아이피를 가진 클라이언트에서 my이라는 커뮤니티로 접근가능하다. com2sec myhome 192.168.1.1 my # sec.model sec.name # 읽기만 가능(MyRWGroup으로 설정하면 쓰기도 가능해진다. 쓰기권한까지 설정할때는 신중하게 생각해서 해야한다.) group MyROGroup v1 myhome group MyROGroup v2c myhome group MyROGroup usm myhome # incl/excl subtree # snmp클라이트에서 모든 값을 접근 할 수 있다. view all included .1 # context sec.model sec.lev.. 더보기
Find 명령어 정리 및 찾은후 삭제 관련 건 아주 유용하지만 엄청난 옵션에 입이 따~악 벌어지는 find 군! 몇가지 만 알면 수십줄의 코딩을 한줄로 끝낼 수도 있는 find의 옵션을 정리해 봅니다. 기본사항 1. * : 모든 것을 의미한다. 2. $ 와 같이 쉘에서 의미를 갖는 문자를 검색할 경우 앞에 "\"를 붙인다. 3. 단어를 검색할 경우 반드시 single quotation(')을 앞뒤에 붙여서 검색한다. 4. 각 옵션은 혼합하여 사용할 수 있다. 5. 숫자 옵션 +n : n 이상인 파일 검색 -n : n 이하인 파일 검색 n : 정확하게 n과 일치하는 파일 검색 파일명 검색 -name 예) 파일명에 "php"가 들어간 파일 검색 # find . -name '*php' 용량 검색 -size 예) 용량이 100KBytes 이상인 파일 검색 .. 더보기
mysql 백업 및 자동삭제 스크립트 [Linux] 자동 백업 스크립트, DB백업, 복구 ################################## ################# 로그파일 삭제 ######### ################################## #!/bin/sh #delete Log File find /var/log/au* -ctime +3 -exec rm -f {} \; find /var/log/apache2/err* -ctime +3 -exec rm -f {} \; find /var/log/sys* -ctime +3 -exec rm -f {} \; find /var/log/cro* -ctime +3 -exec rm -f {} \; find /var/log/daem* -ctime +3 -exec rm -f.. 더보기
우분투 8.04 mysql에서 DB파일의 위치를 변경 방법 [ 우분투 8.04 mysql에서 DB파일의 위치를 변경 방법 ] : 우분투 8.04 mysql의 DB파일 기본위치는 /var/lib/mysql 입니다. : 이 위치를 만약 /export/mysql 로 바꾸고자 한다면... 1. /etc/init.d/mysql stop (mysql 을 중지합니다.) 2. mv -R /var/lib/mysql /exprt/ (DB 디렉토리를 원하는 곳으로 옮깁니다.) 3. /etc/mysql/my.cnf 파일을 열어서 아래 항목을 수정합니다. datadir = /var/lib/mysql => 한줄 수정 datadir = /export/mysql 4. /etc/apparmor.d/usr.sbin.mysqld 을 열어서 아래 항목을 수정합니다. /var/lib/mysql/ r.. 더보기