2012년 9월 18일 화요일
2012년 9월 13일 목요일
Linux - Search and replace over multiple files.
예제.
위의 코드를 아래처럼 변경 하고 싶을 때.
확장자가 php인 파일에서 ../includes/style.css 를 admin.css 로 모든 부분 변경.
Linux - Search and replace over multiple files..
<link rel="stylesheet" type="text/css" href="../includes/style.css">
위의 코드를 아래처럼 변경 하고 싶을 때.
<link rel="stylesheet" type="text/css" href="admin.css">
perl -pi -w -e 's/\.\.\/includes\/style\.css/admin\.css/g;' *.php
확장자가 php인 파일에서 ../includes/style.css 를 admin.css 로 모든 부분 변경.
Linux - Search and replace over multiple files..
2012년 9월 10일 월요일
qmail queue 주기적 정리,삭제 기능.
많은 양의 메일이 큐에 쌓일경우 아래와 같이 설정해주시면
매번 큐를 삭제하지 않고도 주기적으로 큐 정리가 가능해집니다.
#touch /var/qmail/control/queuelifetime ->> 파일 생성
#echo "86400" > /var/qmail/control/queuelifetime -> 큐 대기시간 하루
/etc/init.d/qmail reload --> qmail 재로드
/var/qmail/bin/qmail-showctl | grep life --> 확인
queuelifetime 시간에 따른 재발송 회수
86400은 대략 6회정도.
How often does qmail retry to send email? |
Each message has its own retry schedule. The longer a message remains undeliverable, the less frequently qmail tries to send it. The retry schedule is not configurable. The following table shows the retry schedule for a message that's undeliverable to a remote recipient until it bounces. Local messages use a similar, but more frequent, schedule.
Delivery Attempt | Seconds | D-HH:MM:SS |
1 | 0 | 0-00:00:00 |
2 | 400 | 0-00:06:40 |
3 | 1600 | 0-00:26:40 |
4 | 3600 | 0-01:00:00 |
5 | 6400 | 0-01:46:40 |
6 | 10000 | 0-02:46:40 |
7 | 14400 | 0-04:00:00 |
8 | 19600 | 0-05:26:40 |
9 | 25600 | 0-07:06:40 |
10 | 32400 | 0-09:00:00 |
11 | 40000 | 0-11:06:40 |
12 | 48400 | 0-13:26:40 |
13 | 57600 | 0-16:00:00 |
14 | 67600 | 0-18:46:40 |
15 | 78400 | 0-21:46:40 |
16 | 90000 | 1-01:00:00 |
17 | 102400 | 1-04:26:40 |
18 | 115600 | 1-08:06:40 |
19 | 129600 | 1-12:00:00 |
20 | 144400 | 1-16:06:40 |
21 | 160000 | 1-20:26:40 |
22 | 176400 | 2-01:00:00 |
23 | 193600 | 2-05:46:40 |
24 | 211600 | 2-10:46:40 |
25 | 230400 | 2-16:00:00 |
26 | 250000 | 2-21:26:40 |
27 | 270400 | 3-03:06:40 |
28 | 291600 | 3-09:00:00 |
29 | 313600 | 3-15:06:40 |
30 | 336400 | 3-21:26:40 |
31 | 360000 | 4-04:00:00 |
32 | 384400 | 4-10:46:40 |
33 | 409600 | 4-17:46:40 |
34 | 435600 | 5-01:00:00 |
35 | 462400 | 5-08:26:40 |
36 | 490000 | 5-16:06:40 |
37 | 518400 | 6-00:00:00 |
38 | 547600 | 6-08:06:40 |
39 | 577600 | 6-16:26:40 |
40 | 608400 | 7-01:00:00 |
2012년 9월 8일 토요일
onmouseover 삭제
onmouseover 기능을 해제하려고 unbind,bind,off 기능을 무쟈게 해메이다 알게 됬다.
................
한편, <td onclick=”"> 와 같이 정적으로 onclick이 설정 된것은 unbind()로 해제할수 없는데
이 경우에는 $(‘.td’).removeAttr(“onclick”); 을 사용해서 해제 해야한다.
제길~!!! 내 1시간.....
출처
2012년 8월 16일 목요일
rename을 이용한 하위 디렉토리 포함 확장자 변경.
아래 명령어는 현재 디렉토리의 하위디렉토리까지 모두
jsp확장자를 모두 php확장자로 변환하는 명령어.
find와 rename을 이용한다.
jsp확장자를 모두 php확장자로 변환하는 명령어.
find와 rename을 이용한다.
find . -name "*.jsp" -exec rename .jsp .php {} \;
2012년 8월 10일 금요일
구글 톡 chatback 배지 안되네...
블로그에 구글 토크를 설치하여 방문자와 대화 할 수 있는 서비스인
구글 톡 chatback 배지 서비스가 제대로 동작 하지 않는다.
검색해보니 나만 그런게 아닌듯...
2012년 8월 9일 목요일
tmp 해킹툴 삭제 스크립트
서버의 트래픽이 갑자기 100M이상 늘어나는 현상이 있었다.
서버체크를 해보니 /tmp 디렉토리에 숨김파일로 공격툴이 심어져 있고,
다른 쪽으로 공격을 하고 있었다.
일단 해당 프로세스를 죽인후 해당 파일을 삭제처리 하였다.
tmp 해킹에 대해서 검색하여, tmp 디렉토에서는 실행할 수 없게끔 설정하였다.
문제는 /tmp/.hack 이렇게 경로로 실행을 하면 실행 되지 않지만,
sh /tmp/.hack 이런 식으로 주면 실행이 가능하다.
해당 공격툴의 소유자가 nobody 인 걸로 봐서 웹을 통한 해킹인 것으로 보이는 데,
해당 문제는 다른 이유로 만질 수 있는 상태가 아니다.
tmpwatch를 이용해서 /tmp 디렉토리에서 해킹툴을 지속적으로 삭제해주도록 걸어 놨다.
몇일 간 문제가 없어 보였으나 , 다시 트래픽이 쳐서 확인 해 보았다.
공격툴이 정상적으로 삭제 되어졌으나 문제는 메모리에 이미 로드 되어 실행이 되고 있는 상태인 것 같다.
프로세스를 확인 하면 [sh] <defunct> 이렇게 나오는 부분이 있는 데, 역시나 삭제된 해킹툴이다.
해서 /tmp 디렉토리에서 실행되는 프로그램은 죽여버리고, 삭제 시키는 스크립트를 만들었다.
----------------
해당 프로그램을 실행하면 5초 마다 실행 되도록 작성 해 놓았다.
부하는 그리 크지 않는 듯 하나, 루프를 돌리기 싫다면, while 부분을 삭제하고 크론으로 등록하여 사용해도 좋을 듯하다.
서버체크를 해보니 /tmp 디렉토리에 숨김파일로 공격툴이 심어져 있고,
다른 쪽으로 공격을 하고 있었다.
일단 해당 프로세스를 죽인후 해당 파일을 삭제처리 하였다.
tmp 해킹에 대해서 검색하여, tmp 디렉토에서는 실행할 수 없게끔 설정하였다.
문제는 /tmp/.hack 이렇게 경로로 실행을 하면 실행 되지 않지만,
sh /tmp/.hack 이런 식으로 주면 실행이 가능하다.
해당 공격툴의 소유자가 nobody 인 걸로 봐서 웹을 통한 해킹인 것으로 보이는 데,
해당 문제는 다른 이유로 만질 수 있는 상태가 아니다.
tmpwatch를 이용해서 /tmp 디렉토리에서 해킹툴을 지속적으로 삭제해주도록 걸어 놨다.
몇일 간 문제가 없어 보였으나 , 다시 트래픽이 쳐서 확인 해 보았다.
공격툴이 정상적으로 삭제 되어졌으나 문제는 메모리에 이미 로드 되어 실행이 되고 있는 상태인 것 같다.
프로세스를 확인 하면 [sh] <defunct> 이렇게 나오는 부분이 있는 데, 역시나 삭제된 해킹툴이다.
해서 /tmp 디렉토리에서 실행되는 프로그램은 죽여버리고, 삭제 시키는 스크립트를 만들었다.
----------------
#/bin/sh
while (( 1 ))
do
for f in `find /tmp/ -type f | grep -v "sess_*"`
do
if [ "$f" != "." ] && [ "$f" != ".." ] && [ "$f" != ".ICE-unix" ] && [ "$f" != ".font-unix" ]
then
if [ -e $f ]
then
#echo $f' is file'
lsof $f | sed '1d' | awk '{print $2}' | xargs kill -9
rm -rf $f
fi
fi
done
sleep 5
done
해당 프로그램을 실행하면 5초 마다 실행 되도록 작성 해 놓았다.
부하는 그리 크지 않는 듯 하나, 루프를 돌리기 싫다면, while 부분을 삭제하고 크론으로 등록하여 사용해도 좋을 듯하다.
라벨:
공격,
쉘스크립트(bash),
해킹,
LINUX
피드 구독하기:
글 (Atom)