BLOG main image
All (22)
Operating System (17)
Networking (1)
Security (2)
Photo (0)
ETC (2)
«   2008/11   »
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30            
63408 Visitors up to today!
Today 44 hit, Yesterday 47 hit
'Operating System'에 해당되는 글 17건
*1 *2
[ruo91, 2008/10/25 12:24, Operating System/Windows]

비정기 보안패치 안으면 해킹에 의한 시스템 완전 장악 가능

윈도우 사용자들은 긴급히 보안패치를 실행해 자신의 PC를 보호해야할 상황이다. 소프트런은 23일 MS에서 비정기 긴급 보안 패치를 발표했으며, 최대한 빠르고 신속하게 이 보안 패치가 설치되지 않으면 취약점을 통한 공격에 무방비로 노출된다고 24일 밝혔다.
월례 패치 데이인 매월 둘째 주 수요일(현지 시간으로 화요일)이 아닌 때에 패치를 공개하는 일은 매우 이례적인 일이며, 지난 1년 6개월 동안 이러한 비정기 보안 패치의 발표는 단 한 건도 없었다.
따라서 이번 발표는 그 중요도가 그만큼 높고 민감하다는 것으로 판단된다고 소프트런 측은 설명했다.
이번 패치는 윈도우 서버 서비스의 취약점과 관련된 것으로 공격자는 특수하게 조작된 RPC(Remote Procedure Call: 한 프로그램에서 네트워크의 다른 컴퓨터에 있는 프로그램의 서비스를 요청하는데 보내는 프로토콜)요청을 보내 이 취약점을 악용할 수 있다.
패치가 설치되지 않은 PC의 경우, 공격이 성공하면 시스템이 공격자에 의해 완전히 장악될 수 있어 그 피해가 클 것으로 예상된다.
RPC는 사용자의 사이트 방문을 통해 취약점에 노출되는 것이 아니라 켜져 있는 모든 컴퓨터를 대상으로 공격이 가능하기 때문에 더욱 심각한 문제가 발생할 수 있다.
이번 패치는 그 중요도가 가장 높은 ‘Critical(긴급)’에 해당하며 Window2000이상의 모든 운영체제에 신속한 적용이 요구된다.
뿐만 아니라 이번 취약점은 해외 보안 커뮤니티에 익스플로잇(공격 코드)이 이미 공개돼 중국 등 해외 해킹 공격 유발의 위험성이 특히 높다.
최성학 소프트런 연구소 소장은 “이번에 공개된 취약점은 Zero Day Attack 의 가능성을 유발할 수 있기 때문에 MS에서는 이를 사전에 방지하고자 패치를 긴급하게 제공한 것으로 판단된다”며 “특히 각 공공기관과 기업에서는 이번 패치를 즉시 전체PC에 적용함으로써 이러한 보안 위협에 즉각적으로 대처해 대형 보안 사고를 예방해야 한다”고 강조했다.
Server Service는 MS윈도우에서 파일, 폴더 및 주변 장치 등을 공유하기 위해 지원하는 기능으로 이와 관련된 보안 패치는 지난 2006년 8월 10일에 발표된 바 있다.

크리에이티브 커먼즈 라이센스
Creative Commons License
2008/10/25 12:24 2008/10/25 12:24
[ruo91, 2008/10/09 11:39, Operating System/Linux]
시스템 : 데비안, 우분투

evasive 모듈 설치
# apt-get install libapache2-mod-evasive

설치가 완료되면 자동으로 모듈이 올라가고 아파치가 재시작 됩니다.

모듈이 안올라갈 경우 심볼링크로 링크를 걸어 줍니다.

심볼링크 생성
# cd /etc/apache2/mods-enabled
# ln -s ../mods-available/mod-evasive.load ./mod-evasive.load
apache2.conf 맨 아래 추가

<IfModule mod_evasive20.c>
    DOSHashTableSize  3097
    DOSPageCount        5
    DOSSiteCount          50
    DOSPageInterval      1
    DOSSiteInterval        1
    DOSBlockingPeriod  30
    DOSLogDir              "/var/log/mod_evasive.log"
    DOSWhitelist            127.0.0.1
</IfModule>

추가 완료후 /etc/init.d/apache2 restart 로 아파치 재시작

mod_evasive 옵션

- DOSHashTableSize 
   각 자식 해쉬테이블 마다 탑레벨 노드의 수를 지정한다.
   수치가 높으면 높을수록 더 많은 퍼포먼스가 나타나지만 테이블스페이스에 메모리를 남기게 된다
   접속량이 많으면 이 수치를 높혀도 된다.
 
- DOSPageCount
    이것은 같은 페이지 또는 URI, 인터벌당 요청수에 대한 카운트 수이다.
    지정된 값이 초과되면 클라이언트에 대한 IP 정보가 블러킹리스트에 추가된다.

- DOSSiteCount
    지정된 시간동안 같은 페이지를 지정된 수 보다 초과될경우 IP 정보가 블러킹리스트에 추가된다.

- DOSPageInterval
    페이지 카운트 시발점, 디폴트는 1초이다.

- DOSSiteInterval
    사이트 카운트 시발점, 디폴트는 역시 1초이다.

- DOSBlockingPeriod
    클라이언트가 블랙리스트에 추가되어 블러킹되는 총 시간.
    이때 클라이언트는 403 (Forbidden) 에러를 출력하게 된다.

- DOSEmailNotify
    이 값이 지정되면, IP가 블러킹될때마다 지정된 이메일로 발동된다.
주의 : 메일러는 mod_dosevasive.c 에 정확하게 지정되야 한다. 디폴트는 "/bin/mail -t %s" 이다.

- DOSLogDir
   로그 파일 경로

- DOSSystemCommand
    이 값이 지정되면, 시스템은 아이피가 블러킹될때마다 명령행을 실행한다.

- DOSWhitelist
   차단에서 제외될 호스트

   DOSWhitelist    127.0.0.1
   DOSWhitelist    127.0.0.* - (와일드카드는(*) 필요하다면 최대 8진수(xxx.*.*.*)까지 사용할 수 있다.)
크리에이티브 커먼즈 라이센스
Creative Commons License
2008/10/09 11:39 2008/10/09 11:39
[ruo91, 2008/09/26 01:01, Operating System/FreeBSD]
vi /etc/rc.conf

# -- sysinstall generated deltas -- # Sat Sep 20 23:57:51 2008
# Created: Sat Sep 20 23:57:51 2008
# Enable network daemons for user convenience.
# Please make all changes to this file, not to /etc/defaults/rc.conf.
# This file now contains just the overrides from /etc/defaults/rc.conf.
# 기본 라우터 아이피 (기본 게이트웨이)
defaultrouter="192.168.1.1"
# 호스트네임 설정
hostname="freebsd.yongbok.com"
# le0 아이피 설정 , 넷마스크 설정
ifconfig_le0="inet 192.168.1.30  netmask 255.255.255.0"
keymap="us.iso"
linux_enable="YES"
sshd_enable="YES"

DNS 설정
vi /etc/resolv.conf

nameserver 168.126.63.1
nameserver 168.126.63.2
크리에이티브 커먼즈 라이센스
Creative Commons License
2008/09/26 01:01 2008/09/26 01:01
[ruo91, 2008/08/23 17:31, Operating System/FreeBSD]

일단 포트가 설치 되어 있는지 확인한다.

/usr/ports 디렉토리가 존재하지 않는다면.. ports를 설치하지 않은 것이다..
ruo91# /stand/sysinstall 해서
configure -> distributions -> ports 로 이동해 설치를 하면 된다.
ports 업그레이드를 위해서는 cvsup이라는 프로그램이 있어야 한다.
ruo91# cd /usr/ports/net/cvsup-without-gui/
ruo91#
make install clean
**cvsup-without-gui는 gui기능이 빠진 cvsup입니다..
설치후..
ruo91# cd /usr/share/examples/cvsup/
ruo91# ls -al
total 36
-rw-r--r--  1 root  wheel  1231 Oct 28 00:25 README
-rw-r--r--  1 root  wheel  4993 Oct 28 00:25 cvs-supfile
-rw-r--r--  1 root  wheel  2441 Oct 28 00:25 doc-supfile
-rw-r--r--  1 root  wheel  2301 Oct 28 00:25 gnats-supfile
-rw-r--r--  1 root  wheel  3705 Oct 28 00:25 ports-supfile
-rw-r--r--  1 root  wheel   329 Oct 28 00:25 refuse
-rw-r--r--  1 root  wheel  1858 Oct 28 00:25 refuse.README
-rw-r--r--  1 root  wheel  3845 Oct 28 00:25 stable-supfile
-rw-r--r--  1 root  wheel  3037 Oct 28 00:25 standard-supfile
-rw-r--r--  1 root  wheel  2376 Oct 28 00:25 www-supfile

ruo91# mkdir /etc/cvsup
ruo91# cp /usr/share/examples/cvsup/stable-supfile /etc/cvsup/
ruo91#
cp /usr/share/examples/cvsup/ports-supfile /etc/cvsup/

설정화일이 있는 디렉토리에서 stable-supfile 과 ports-supfile을 사용상의 편의를 위해 다른곳으로 복사하는겁니다.

ruo91# vi /etc/cvsup/stable-supfile
*default host=cvsup.kr.FreeBSD.org #1
*default release=cvs tag=RELENG_7 <== 7-stable 버전 #2
ruo91# vi /etc/cvsup/ports-supfile
*default host=cvsup.kr.FreeBSD.org #1
*default release=cvs tag=. <== current 버전
#2

#1
은 cvsup 서버를 골라 적어줄 부분입니다. 우리나라에는 아래 서버에서 미러 합니다.
맘에 드는곳을 골라서 CHANGE_THIS 부분을 변경해 주시면 됩니다.
CVSup 미러
cvsup.kr.FreeBSD.org: KT IDC 100Mb Dedicated, 주기 1H, KFUG
cvsup2.kr.FreeBSD.org: KT IDC 100M Dedicated, 주기 1H, Holynet
cvsup3.kr.FreeBSD.org: KT IDC 100M Dedicated, 주기 1H, SarangNet
cvsup4.kr.FreeBSD.org: GNG IDC 100M Dedicated, 주기 1H

#2 는 원하는 FreeBSD 버젼을 적어줄 부분입니다. tag는 아래 사이트를 참고하시고,
tag= 다음에 원하는 버젼을 적어주시면 됩니다.

http://www.freebsd.org/doc/en_us.iso885 ··· ags.html

예) FreeBSD 5.2로 업그레이드는 - RELENG_5_2
FreeBSD 4-stable로 업그레이드는 - RELENG_4
FreeBSD Current로 업그레이드는 - .

cvsup을 실행하여 system 소스코드와 ports 소스코드를 최신의 소스로 업그레이드 하려면..

ruo91# /usr/local/bin/cvsup -L 2 /etc/cvsup/stable-supfile
ruo91# /usr/local/bin/cvsup -L 2 /etc/cvsup/ports-supfile

참고로 release와 stable, current의 차이점은..

release
는 테스트후 안정성이 보장이 되었다 생각되어 더 이상 소스코드를 업데이트 못하도록 CVS 소스 트리를 동결하고 하나의 새로운 버전을 내놓는 단계이다.
보통 CD나 ftp로 배포되는 것들이 모두 이 release에 속한다.

stable
은 버그나 보안적인 문제로 인해 수정이 되거나 새로운 기능이 추가된 안정적으로 개발되는 버전이다.(기본 골격을 유지하면서 안정성을 확보하는 버전)

current
는 새로운 방식을 시도하고, 연구하는 버전이다.(기본 골격에서 탈피하려고 하며, 안정성 보장이 어렵다.)

크리에이티브 커먼즈 라이센스
Creative Commons License
2008/08/23 17:31 2008/08/23 17:31
[ruo91, 2008/08/15 21:58, Operating System/Linux]
우분투 환경 /etc/apache2/sites-available/default 수정
소스컴파일 환경에선 httpd.conf 또는 virtualHost.conf 라던지..거기서 설정...기억안남;;
# Apache 가상호스트 설정
#==================================================
# SetEnvIf Remote 특정 아이피주소에서 접근시 로그를 남기지 않음
# FollowSymLinks 옵션을 추가하면 해당 디렉토리의 누출 or 파일이 보이지 않음
#==================================================
NameVirtualHost *
# www 셋팅
<VirtualHost *>
    ServerAdmin ruo91@naver.com
    ServerAlias yongbok.com www.yongbok.com
    DocumentRoot /home/www/
    ErrorLog /home/apache2-log/www-error.log
    LogLevel warn
        SetEnvIf Remote_Addr x.x.x.x$ do_not_log
        CustomLog /home/apache2-log/www-access.log combined env=!do_not_log
    ServerSignature On
    <Directory "/home/www/">
       Options FollowSymLinks
       AllowOverride FileInfo
       </Directory>
 </VirtualHost>
#
# blog 셋팅
<VirtualHost *>
    ServerAdmin ruo91@naver.com
    ServerAlias blog.yongbok.com
    DocumentRoot /home/blog/
    ErrorLog /home/apache2-log/blog-error.log
    LogLevel warn
#  SetEnvIf Remote 특정 아이피주소에서 접근시 로그를 남기지 않음
        SetEnvIf Remote_Addr X.x.x.x$ do_not_log
        CustomLog /home/apache2-log/blog-access.log combined env=!do_not_log
    ServerSignature On
    <Directory "/home/blog/">
       Options FollowSymLinks
       AllowOverride FileInfo
       </Directory>
 </VirtualHost>
크리에이티브 커먼즈 라이센스
Creative Commons License
2008/08/15 21:58 2008/08/15 21:58
[ruo91, 2008/08/15 21:57, Operating System/Linux]
Ubuntu 리눅스에서 네트워크 설정을 하는 방법입니다.
이 방법은 고정아이피를 설정 할때 많이 사용됩니다.
vi /etc/network/interfaces 를 수정 하시면 됩니다.
# interfaces 의 내용

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
# static 을 dhcp 로 수정하면 유동아이피로 전환되어짐
iface eth0 inet static
    address 192.168.10.2
    netmask 255.255.255.0
    network 192.168.10.0
    broadcast 192.168.10.255
    gateway 192.168.10.1
    # dns-* options are implemented by the resolvconf package, if installed
    dns-nameservers 168.126.63.1 168.126.63.2

저장하고 vi /etc/resolv.conf 를 열어서 아래와 DNS 서버를 입력
nameserver 168.126.63.1
nameserver 168.126.63.2

그다음 /etc/init.d/networking restart 로 재시작 하거나 shutdown -r now 로 시스템 재부팅
크리에이티브 커먼즈 라이센스
Creative Commons License
2008/08/15 21:57 2008/08/15 21:57
[ruo91, 2008/08/15 21:56, Operating System/Linux]
root@yongbok:~# adduser test
Adding user `test' ...
Adding new group `test' (1002) ...
Adding new user `test' (1002) with group `test' ...
Creating home directory `/home/test' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: 열쇠글을 성공적으로 업데이트했습니다
test의 사용자의 정보를 바꿉니다
새로운 값을 넣거나, 기본값을 원하시면 엔터를 치세요
        이름 []: 김용복
        방 번호 []: 1
        직장 번화번호 []: 없음
        집 전화번호 []: 비밀
        기타 []: 없음
이 정보가 맞습니까? [y/N] y

root@yongbok:~# find /home/test
/home/test
/home/test/.bashrc
/home/test/.profile
/home/test/.bash_logout
/home/test/Examples
root@yongbok:~#
크리에이티브 커먼즈 라이센스
Creative Commons License
2008/08/15 21:56 2008/08/15 21:56
[ruo91, 2008/08/15 21:55, Operating System/Linux]
# tar tfz filename.tar.gz | xargs rm

tar 파일을 엉뚱한 디렉토리에 풀어 디렉토리가 망가진 경험, 그리고 슬퍼하며 하나씩 지
워 본 경험, 저도 있습니다.

사실, 리눅스는 잘 찾아 보면 죽으란 법은 없는 것 같습니다. 잔머리를 잘굴리면 답이 나오
는 뭐, 수수께끼 풀기 같다고나 할까… 암튼, 위의 명령을 잠시 살펴보면,
tar의 -t 옵션은 묶여진 파일이 뭐뭐인지를 보여줍니다.
그리고, xargs 는  파이프로 이 리스트를 입력으로 받아서 xargs 뒤에 있는 명령어 한테
‘너의 파라미터다!’ 하면서 넘겨 줍니다. 그러면, rm이 넘겨 받은 이름의 파일을 지웁니다.
크리에이티브 커먼즈 라이센스
Creative Commons License
2008/08/15 21:55 2008/08/15 21:55
[ruo91, 2008/08/15 21:54, Operating System/Linux]
root@yongbok:~# last | more
ruo91    pts/0        :0.0             Wed May 21 00:35   still logged in  
ruo91    tty7         :0               Wed May 21 00:34   still logged in  
reboot   system boot  2.6.24-16-server Wed May 21 00:34 - 11:54  (11:20)   
ruo91    pts/0        :0.0             Mon May 19 19:11 - down  (1+03:52)  
ruo91    tty7         :0               Mon May 19 19:08 - down  (1+03:55)  
reboot   system boot  2.6.24-16-server Mon May 19 19:08 - 23:04 (1+03:55)  
ruo91    pts/0        :0.0             Sun May 18 22:07 - 16:15  (18:08)   
ruo91    tty7         :0               Sun May 18 22:06 - crash  (21:02)   
reboot   system boot  2.6.22-14-server Sat May  3 12:06 - 12:19  (00:13)   
root     tty1                          Sat May  3 11:19 - down   (00:45)   
root     tty1                          Sat May  3 11:19 - 11:19  (00:00)   
ruo91    tty1                          Sat May  3 11:19 - 11:19  (00:00)   
ruo91    tty1                          Sat May  3 11:19 - 11:19  (00:00)   
reboot   system boot  2.6.22-14-server Sat May  3 20:19 - 12:05  (-8:-14)  
wtmp begins Sat May  3 20:19:55 2008

크리에이티브 커먼즈 라이센스
Creative Commons License
2008/08/15 21:54 2008/08/15 21:54
[ruo91, 2008/08/15 21:53, Operating System/Linux]

APM(Apache, PHP, MYSQL) 설치 방법

1. Apache2 설치

# apt-get install apache2

vi /etc/apache2/apache2.conf 를 열어 맨 아래 부분에 ServerName localhost 를 추가

2. PHP5 설치

# apt-get install php5

vi /etc/php5/apache2/php.ini 에 610번 라인 ;extension=msql.so 에 ";" 주석을 제거하고 저장 후 빠져나온다. 그리고 /etc/init.d/apache2 restart 로 아파치 재시작!

3. MYSQL 설치

# apt-get install mysql-server libapache2-mod-auth-mysql php5-mysql

설치후 터미널에서 mysql 묻는 창이 뜨면 패스워드를 적고 설치를 마친다.

--> mysql 접속
# mysql -u root -p      

--> blog 데이터베이스 생성
mysql> CREATE DATEBASE blog;    blog 디비를 생성

--> 사용자 계정 추가
mysql> GRANT ALL PRIVILEGES ON *.* TO '사용자명'@'localhost' IDENTIFIED BY '패스워드' WITH GRANT OPTION;

이제...APM이 잘 실행 되는지 테스트 해봅니다.
우선 /home 디렉토리에 www 라는 하위 디렉토리를 생성후 권한을 707로 줍니다.
# mkdir /home/www
# chmod 707 /home/www

아파치 가상호스트 설정을 합니다.
vi /etc/apache2/sites-available/default

아래의 글을 복사하여 저장합니다.
#=======================================================================================
# 아파치 가상 호스트 설정

# SetEnvIf Remote_Addr 192.168.1.2$ do_not_log  192.168.1.2 아이피로부터 로그를 저장하지 않는다.

# Options FollowSymLinks  만약 지정한 디렉토리안에 index 파일이 없다면 원래 주소로 이동
# AllowOverride FileInfo  디렉토리의 목록을 보여주지 않음
NameVirtualHost *
# www 셋팅
<VirtualHost *>
 ServerAdmin ruo91@naver.com
 ServerAlias yongbok.com www.yongbok.com
 DocumentRoot /home/www/
 ErrorLog /home/apache2-log/www-error.log
 LogLevel warn
        SetEnvIf Remote_Addr 192.168.1.2$ do_not_log
        CustomLog /home/apache2-log/www-access.log combined env=!do_not_log
 ServerSignature On
 <Directory "/home/www/">
       Options FollowSymLinks
       AllowOverride FileInfo
       </Directory>
 </VirtualHost>
#=======================================================================================
저장후 /etc/init.d/apache2 restart 로 아파치를 재시작!
/home/www 디렉토리 폴더에 index.php 를 생성하여 이 php파일에 <? phpinfo(); ?> 를 입력!

# cat > index.php
<? phpinfo(); ?>

여기서 Ctrl + D
# chmod 707 index.php

이후 사이트를 방문하여 php 정보가 나오는지 확인하면 되요~

크리에이티브 커먼즈 라이센스
Creative Commons License
2008/08/15 21:53 2008/08/15 21:53
*1 *2