Computer/LINUX 48

ssh 접속 공격 막기

ssh의 무차별 공격을 막기위해 시스템의 로그를 자동분석하여 공격을 막아주는 스크립트를 소개합니다. 2005년 2월 8일에 작성한 스크립트로서 이에 관련해 제가 알기론 뻥좀보태서 세계에서 가장 빨리 작성되지 않았나 싶습니다. ㅋ 문자열치환은 스크립트로 치환하도록 하였습니다. (sed로 안에 포함시킬수 있지만 여러개 만들다 보면.. ) 아래의 스크립트를 /etc/cron.hourly에 넣으면 한시간에 한번씩 실행됩니다. 스크립트 생성후 chmod 700 /etc/cron.hourly/ssh_defense.sh 해주셔야 실행됩니다. 잘 쓰셔서 아주 단순한 기법에 해킹당하는 일이 없도록 하세요.. ㅋㅋ 그리고 패쓰워드는 항상 영문과 특수문자의 조합으로.. vi /etc/cron.hourly/ssh_defens..

Computer/LINUX 2012.08.10

snort

Snort 설치 및 운영 가이드 2001. 3. 28 정현철, hcjung@certcc.or.kr 1. 개요 침입차단시스템(Firewall)은 보안제품으로써 가장 널리 알려져 있으며, 국내에서도 많은 기관에서 침입차단시스템을 이용하여 보안을 강화하고 있다. 하지만 모든 보안제품을 100% 신뢰할 수 없는 것과 마찬가지로 침입차단시스템 만으로 완벽한 보안을 구축하였다고 장담할 수 없다. 보안은 방어(protect), 탐지(detect), 그리고 대응(react)으로 이루어진 defense-in-depth 접근법을 적용하여야만 한다고들 한다. 침입차단시스템만으로는 완전한 방어가 이루어질 수는 없으므로 침입시도나 침입에 대한 신속한 탐지와 대응이 동시에 이루어져야 한다. 이러한 공감대로 인해 최근 침입탐지시스..

Computer/LINUX 2012.08.10

pam_abl 을 통한 SSH 공격방어

pam_abl 을 통한 SSH 무작위 공격 방어 1. 소개 대부분의 유닉스, 리눅스서버를 관리하기 위해서 SSH 서비스를 사용하여 안전하게 원격지에서 서버로 접속을 합니다. 불행하게도, 악의적인 사용자가 무작위 SSH접속을 시도하여 비밀번호 획득을 시도합니다. 만약 쉬운 비밀번호 ( 예. 123456, aaaa, 계정과 같은 비밀번호)를 사용할 경우 공격자는 비밀번호를 획득하게 되고, 획득된 비밀번호로 서버에 접속하여 시스템을 파괴시키고는 합니다. 이런 공격을 막기 위해서, 특정 계정만 ssh 접속 가능하게 하고, 특정 IP로 ssh 접속을 제한하는 등의 보안 조치를 하게 됩니다. 하지만, 호스팅서버등에서는 불특정 가변 IP의 접속을 허용하여야 하기 때문에 불가능 한 일입니다. 호스팅사용자가 쉬운 비밀번..

Computer/LINUX 2012.08.10

PAM (착탈형 인증 모듈)

1. PAM(Pluggable Authentication Module: 착탈형 인증 모듈)이란? 사용자를 인증하고 그 사용자의 서비스에 대한 액세스를 제어하는 모듈화된 방법을 일컫는다. PAM은 관리자가 응용프로그램들의 사용자인증방법을 선택할 수 있도록 해준다. 즉 필요한 공유라이브러리의 묶음을 제공하여 PAM을 사용하는 응용프로그램을 재컴파일없이 인증 방법을 변경할 수 있다. 2. PAM의 목적과 동작 리눅스에서 PAM프로젝트의 목적은 권한을 부여하는 소프트웨어의 개발과 안전하고 적정한 인증의 개발을 분리하려는 데에 있다. 이것은 응용프로그램이 사용자 인증을 처리하기 위해 사용될 함수의 라이브러리를 제공함으로써 가능하다. PAM라이브러리는 /etc/pam.d(또는 /etc/pam.conf)에서 각 시스..

Computer/LINUX 2012.08.10

mysql ssh 터널링

[서버운영] SSH 포트포워딩을 통한 원격지 데이터베이스 접속 mysql은 원격지 접속을 위해서 해당 사용자의 접속 호스트를 '%'로 변경하고 my.cnf의 설정을 바꿔야 합니다. 이렇게 하면 3306 포트가 열리고 mysql이 직접 3306 포트를 리스닝하게 되지요. 자주는 아니지만 원격지에서 편안하게 GUI 쿼리 툴로 mysql을 관리하고자 하려면 이런 필요가 생기기도 합니다. (phpmyadmin이나, 커맨드 라인 mysql client는 사용하기 불편하구요.) '열려진 포트는 최대한 적을 수록 좋다.' 라는 서버 운영 방침에 비추어 보자면, 이건 좀 찝찝한 문제가 아닐 수 없습니다. 아무래도 보안에 취약할 수 밖에 없구요. (물론 최근 버전의 mysql은 원격 접속시 ssl 연결을 지원합니다만....

Computer/LINUX 2012.08.10

iostat

Note: 다음 내용은 AIX V4.1 이상에서는 검증되지 않은 내용입니다. 다음에 설명되는 내용은 베리 사드(Barry Saad)씨가 /AIXtra(1) 1994 년 1/2월호에 기고한 "Performance Tuning: A Continuing Series -- The iostat Tool"의 내용에 기초한 것이다. 소개 여기서는 "iostat" 를 이용하여 I/O 부시스템과 CPU 의 병목을 어떻게 찾아내는가에 대한 내용을 설명할 것이다. "iostat" 는 커널의 주소공간을 표본추출하고, 매 시각 틱(2) 마다 새롭게 되는 여러 카운터들(3) 로부터 자료를 뽑아 작업을 한다. 이의 결과들-tty, CPU와 입출력 부시스템의 활동들을 망라함-은 매초단위로 보고되거나, 혹은 지정된 경과기간만큼의 단위..

Computer/LINUX 2012.08.10

freeSSHd 와 cwRsync 를 이용한 윈도우간의 파일 동기화 따라하기

윈도우의 파일 동기화 또는 백업을 위한 여러가지 방법이 있다. 그런데 현재 서버스 윈도우 서버는 SSH 22번 80번 3389번 외에는 막혀있으며 같은 네트웍이 아니라고 가정한다. 이런경우 윈도우 네트워크 환경을 통해 화일을 가져오기엔 효율적이지 못하다. 그래서 윈도우용 rsync 를 이용하여 ssh 를 통해 백업을 받아보려 한다. 원리상으로는 리눅스 환경에서와 동일하다. [테스트 환경] - 선행 참조 문서 http://ideaargo.devself.com/blog/103 - 서비스 Server OS : 윈도우2000 SSH Server : freeSSHd 1.2.1 Rsync Server : cwRsync_Server (ssh id : backup , ssh pass : backuppass 라 가정한다..

Computer/LINUX 2012.08.10

find

find 를 제법 잘 쓰는 사람은 다 아는 얘기일 것 같지만, 흔히들 사용하면서도 그 많은 옵션이 잘 안들어오는 사람들을 위해 정리하고자 글을 써본다. find의 철학은 그 이름에서 이미 감춰져 있다고 해도 과언이 아니다. find를 통해서 할 수 있는 것이 고작 원하는 이름의 혹은 원하는 속성을 가진 파일을 찾는 것이라 생각한다면 그것은 정말 누구나 사용할 줄 아는 방법으로서의 find 이다. find의 철학은 다음과 같다. 어디에 이런 글이 쓰여있는지는 나도 모르겠지만, 경험상 정리하자면, find 는 true/false에 의한 directory 탐색기이다. 신선한가? 그렇다면 계속 읽을 정도로 find라는 처녀 혹은 꽃미남에 대해 호기심을 가질 만한 사람이라 생각하시라. 우선 다들 그러하듯이 man..

Computer/LINUX 2012.08.10