BLOG main image
애플과 리눅스의 만남이 있는 곳입니다. 또한 재훈의 삶을 간간히 적는 곳입니다.

크리에이티브 커먼즈 라이선스
Creative Commons License
DarwinPorts 시스템이란 DarwinPorts 과는, FreeBSD 의 ports 과 같은 기능을 가짐과 동시에 장래의 확장성도 유지하게 만들어진, 소프트웨어의 빌드, 인스톨,및 패키지 작성을 위한 기반입니다. DarwinPorts 은 현재시점에서 MacOS X 10.2(Darwin 6.0)과 MacOS X 10.3(Darwin 7.0)위에서 작성되어, 이것들 위에서 동작합니다. 이 시스템은 TCL 과 한정된 TCL익스텐션을 이용한 C 에서 씌어져 있을 테니까, 높은 이식성이 있습니다. ” DarwinPorts User Guide”이 이하에 있습니다 :http://darwinports. opendarwin. org/docs ports 시스템의 내부구조에 대해서 보다 깊게 알기 위해서는, base/doc/INTERNALS를 참조해 주십시오. DarwinPorts 은 2개의 부분에 나뉘어져 있는 것에 주의해 주십시오. 1개는” darwin ports infrastructure”이며, 이것은 base/서브 디렉토리에 존재하는 이 시스템의 유일한 중핵부분에 맞습니다. 또 하나는” dports”디렉토리에서, 여기에는 실제로 이식된 소프트웨어의 설명등이 두어지고 있습니다. 후자는 필요에 응해서 네트워크너머에 손에 넣을 수도 있고, 눈앞에 있는 파일을 이용하는 것도 가능합니다. 후술한다 /etc/ports/sources. conf 에 관한 설명을 참조해 주십시오. 인스톨 플랫폼(platform)별의 설명은 base/doc/README. platforms 에 있습니다. 인스톨 순서: 1. cd base/. /configurebase/디렉토리에서 configure 스크립트를 실행합니다. configure 스크립트에는 몇개의 인수를 줄 수 있습니다 (후술). 2. make 모두의 필수 소프트웨어를 컴파일합니다. 3. sudo make installDarwinPorts 을 이 시스템에 인스톨합니다. 4./etc/ports/ports. conf 의 편집 [생략 가능]설정 파일이다 /etc/ports/ports. conf 에서는, DarwinPorts를 위한 몇개의 설정 항목이 정의되고 있습니다. 인스톨처의 패스나 port 시스템을 위한 여러가지 데이터가 보존되고 있는 장소를 변경하고 싶을 때는, 이하의 설정을 변경합니다 : portdbpath ports 시스템을 위한 데이터를 보존하는 장소 prefix ports 을 인스톨하는 디렉토리 [Mac OS X 10.2만] Mac OS X 10.2위의 Tcl 8.3에는, Port 이미지에 이용하고 있다 [file link]함수가 포함되어 있지 않기 위해서 , /etc/ports/ports. conf 안(속)에서 인스톨 종별을 변경 할 필요가 있습니다. 이 행을 변경해 주십시오 :변경전: portinstalltype image 변경후: portinstalltype direct 5./etc/ports/sources. conf 의 편집 [생략 가능]/etc/ports/sources. conf 에는, 네트워크상과 로컬과의 양쪽에 대해서, 소프트웨어 계층의 일람이 기술되고 있습니다. ./configure 스크립트에 --with-dports-dir=DIR 이라고 하는 인수가 주어지지 않고 있으면, 디폴트의 dports-tree ( 조금전에의 인스톨에 의해 만들어진 darwinports/dports)이 sources. conf 에 추가됩니다. 모든 필수 코드와 TCL 은 아래와같이 인스톨됩니다 : [Mac OS X 10.3]/Library/Tcl/darwinports 1.0 [Mac OS X 10.2]/System/Library/Tcl/darwinports 1.0 [FreeBSD]/usr/local/lib/tcl 8.3/darwinports 1.0- DarwinPorts 시스템을 이용하기 위한 TCL 라이브러리 PREFIX 은 표준에서는 /opt/local 이 됩니다만, base/디렉토리에서 ./configure 스크립트를 움직일 때에 --prefix 인수에서 지정하는 것으로 이것을 바꿀 수 있습니다. $PREFIX/bin/port-커맨드라인으로부터 port 을 작성하기 위한 유틸리티$PREFIX/share/darwinports/- ports 시스템 내부에서 이용하는 TCL 라이브러리 군 이하의 파일은 시스템을 주문해서 만들게 하기 위한 물건입니다 : /etc/ports/ports. conf-사용자가 port 의 설정을 바꾸기 위한 파일/etc/ports/sources. conf- port 의 소스(어디부터 ports 의 데이터를 입수할 것인가)의 일람 port 커맨드를 사용한다 최초에 /opt/local/bin ( 또는 DarwinPorts 을 인스톨한 디렉토리에 응한 $PREFIX/bin)을 【코만도사치파스】에 추가합니다. Panther (OS X 10.3)을 사용하고 있다면, ∼/. profile 에 다음 행을 추가합니다. 만약 이 파일이 존재하지 않으면 작성해 주십시오. (이 방법은 Jaguar 위에서 bourneshell 을 사용하고 있을 때에도 유효합니다. ) export PATH=$PATH:/opt/local/bin Jaguar (OS X 10.2)을 사용하고 있다면, ∼/. cshrc 에 다음 행을 추가합니다. 만약 이 파일이 존재하지 않으면 작성해 주십시오. (이 방법은 Panther 위에서 tcsh 을 사용하고 있을 때에도 유효합니다. ) set path=($path /opt/local/bin) 상기의 설정은 새로운 쉘을 기동할때 까지 유효해지지 않습니다. port 을 빌드해서 인스톨하고 싶을 때는 다음 커맨드를 사용합니다 : port install <portname> 어떤 port 을 찾고 싶을 때는” port search”을 사용합니다 : port search vi port 커맨드에 관한 완전한 설명은 온라인(on-line) 메뉴얼을 참조해 주십시오. 시스템상의 모든 port 을 빌드하거나 입수하거나 하는 것도 가능해서, 이것은 portall 커맨드를 사용합니다. 이 커맨드에는 기본적으로 port 커맨드와 같은 인수를 줄 수 있고, dports/이하에 있는 각 port 에 대하여 같은 동작을 되풀이할 수 있습니다. 예를 들면 이 디렉토리에서” make clean”을 실행하려고 하면,” portall clean”이 호출되어서 모두를 clean 에 해줍니다. 새로운 ports 을 만든다 ports 은 Portfile 과 그것에 관련되는 파일 군을 보존한 디렉토리에 의해 구성됩니다. 지금으로서는, patch 파일만이 거기에 보존되고 있어서, 게다가 이것들의 파일은 될 수 있는한 적게 끝나게 되고 있습니다. Portfile 에는, DarwinPorts 시스템에 부속되는 TCL interpreter에 의해 평가되는 TCL 코드가 포함되어 있습니다. Portfile 은, 이름과 값의 조에 의한 매우 단순한 구조를 가지고 있으므로, 작자가 필요에 응해서 TCL 의 기능을 자유(자재)로 사용할 수 있게 되고 있습니다. 우선은 base/doc/exampleport 과 portfile(7)의 온라인(on-line) 메뉴얼을 읽을 것인가,또는 http://darwinports. opendarwin. org/docs 에 있는 The DarwinPortsGuide 을 읽는 것부터 시작하면 좋지요.
Posted by Huns [Jaehun]
크리에이티브 커먼즈 라이선스
Creative Commons License

과도한 접속으로 SYN가 많이 떨어지는 경우 아래와 같은 방법으로 문제를 해결(?) 하실 수도 있답니다.

iptables -A INPUT -m recent --name badguy --rcheck --seconds 300 -j DROP
iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 30 -m recent --name badguy --set -j DROP
iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 30 -j DROP

이렇게 하게 되면 동접자의 수를 제한 할 수 있습니다. 두번재부터는 동접자의 30회 이상부터 IP를 300초동안 차단하는 것입니다.

cat /proc/net/ipt_recent/badguy로 보시면 과도한 접속자의 ip까지 체크할 수 있습니다.

사용자 삽입 이미지








Posted by Huns [Jaehun]
크리에이티브 커먼즈 라이선스
Creative Commons License

안녕하세요? Jaehun 입니다. 항상 그래왔드시 또 포스팅에 게을러짐이 존재하고 있네요.
많은 분들께서 기다리시는 것도 알고 있지만....

오늘은 한 터미널에서 멀티로 여러개의 창처럼 활용할 수 있는 명령어를 소개할 까 합니다.

저도 주로 많이 사용하고 있는데요. 터미널을 ALT+Tab으로 옮겨다니는 것도 한계가 있으므로...

최초 생성시 아래와 같이 시작 하시면 멀티 창으로 사용이 가능하십니다.

 # screen -S 세션명

위에서 세션명은 연결 종료 후 새로 접속시에도 접속 할 수 있도록 지어놓는 이름이라고 생각하시면 쉬울듯 하네요. :)

다시 #으로 오셨는지요. 아마도 현재 세션으로 동작되고 있습니다.
여기서 top(시스템툴)을 치시면 특별히 프로세서 동작중에 있을 것입니다.
이 후 아래처럼 해보시기 바랍니다.
Ctrl + a 를 누르신 뒤에 c를 눌러보시면 다시 #으로 뜨실 꺼예요.
생성 기능입니다.

또한, 이전 창으로 가고 싶을때에는 Ctrl + a를 누르신 뒤에 p를 누르시면
이전 창으로 넘어가실 수 있답니다.

또한 특별한 명령으로는 screen -ls가 있는데요. 이는 전반적인 screen 세션들이
몇개가 동작되는지 체크하고 있는 것입니다.

터미널을 종료후 다시 접속하였을 경우 해당 세션을 연결하고 싶으시다면...
# screen -r 세션명

오늘 한번 실습 해보시기 바래요~

한가지 더 알려드리자면
Screen에 연결된 상태에서 exit를 하게되거나 혹은 Ctrl + a , D 를 누르시면 종료가 된답니다.

그럼 즐거운 리눅싱 하시기를...
Posted by Huns [Jaehun]
크리에이티브 커먼즈 라이선스
Creative Commons License

HP 2133 Mini Ubuntu 8.04 설치

작성자 : JParker [ park@jaehun.org ]
작성일 : 2008. 08. 22
홈페이지 : http://www.jaehun.org
-----------------------------------------------------------------------
1. HP 2133 에 Ubuntu 8.04 LTS 설치 하기
-----------------------------------------------------------------------
HP 2133 Mini의 경우 설치를 할 수 있는 환경은 아시다 시피 열악한 것으로
알고 있습니다. 저의 경우 외장  CDROM을 이용하여  기본적으로 제공받은
Ubuntu - 8.04 (이하 하디)를 직접 넣고 설치를 시작하였습니다.

기본적으로 한국어 선택후 엔터를 누르시게 되면, 하얀 색의 화면에서 멈춘
현상이 발생 될 것입니다. 이유인 즉, Via 칩셋을 기본적으로 제공하지 않기
때문입니다.

따라서, 시디 부팅시 선택 창이 나올 때에 ESC 키를 한번 눌러주고 F6 키를
누르시면 커널 옵션 선택 부분이 나옵니다.  맨 끝 "-- " 뒤에 아래의 명령을
넣고 부팅시키시면 X를 띄운 화면을 보실 수 있을 것입니다.

"ide0=noprobe ide1=noprobe ide2=noprobe ide3=noprobe xforcevesa"

이 것은 모든 ide부분을 중지 시키고 X 모드를 Vesa로 잡는 설정입니다.

나머지 설치 방법은 기존에 나와있는 기본 설치 방법대로 설치 하시기 바랍
니다. 이 문서는 오로지 HP 2133 Mini에 Ubuntu를 설치하는 목적으로 작성
되어진 것이므로, 기타 설치에 대한 부분은 설명하지 않도록 하겠습니다.

설치가 정상적으로 진행이 된 후,  리부팅을 하시게 되면 Vesa 모드로 부팅
하게 됩니다. 따라서, Via 칩셋을  설치해야 해상도가 1280x768 모드로 변경
됩니다. 다운로드는 아래의 URL을 참고하시면 될 듯합니다.  이곳에서 선택
하셔야  할  부분은 Ubuntu 8.04 LTS -> CN896+VT8251 을 선택하시게 되면
Stable chrome9.83-242-u804 (3.8M) <- 이것을 받으시고 나서 압축을 풀고
sudo ./vinstall 명령을 통하여 설치를 하시면 Via 칩셋으로 세팅이 됩니다.

하지만, 이것으로 끝나는 것이 아니고 아래의 것을 더 설정 하셔야 합니다.

sudo gedit /usr/bin/compiz 를 실행하시고 아래의 부분을 찾아서 변경후로
바꾸어 주시기 바랍니다.

변경 전 -> WHITELIST="nvidia intel ati radeon i810 fglrx"

변경 후 -> WHITELIST="nvidia intel ati radeon i810 via"

저장 후 아래에 제공하는 xorg.conf를 다운받으셔서 /etc/X11/ 안에 넣고 X를
재시작 혹은 재부팅후 1280 x 768의 해상도를 보실 수 있습니다.

-----------------------------------------------------------------------
2. 환경 설정
-----------------------------------------------------------------------
설정이 다 완성이 되었다면 이제 인터넷 연결을 하시고 나서 업데이트를 해야 할
것입니다. sudo apt-get update;  sudo apt-get upgrade 하시면 엄청난 양의 업
데이트 해야 할 내용들이 존재 하는 것을 알 수 있습니다.  업데이트가 완료 되면


Posted by Huns [Jaehun]
크리에이티브 커먼즈 라이선스
Creative Commons License

수많은 리눅스 OS 환경들이 이제는 Apt-get이나 혹은 Yum으로 업데이트를 하고 있습니다.
예전에는 rpmfind.net에서 찾아서 업데이트를 하였는데 이제는 많이 달라졌네요 :)

CentOS를 기본으로 설치하면 보통 업데이트 속도가 느리다는 것을 알 수 있습니다.

국내 포털업체에서 제공해주는 FTP 사이트 덕분에 좀더 빠르게 업데이트를 할 수 있어
늦게 나마 이렇게 포스팅 하게 되었습니다.

기본적으로 Yum의 경우 Fastmirror라는 프로그램으로 현재의 네트웍에서 최적의 미러 사이트를
찾아 적용해주는 툴이 있는데, 이 프로그램은 보통 설치를 하지 않아 동작이 되지 않는답니다.

# yum -y install  yum-fastestmirror

위와 같은 방법으로 업데이트를 받으실 수 있습니다.

다른 방법은 직접 설정파일에 적용을 하는 것인데요. ftp.daum.net을 연결할 수 있도록 하는 방법입니다.
다행스럽게도 FTP와 HTTP로 ftp.daum.net을 연결할 수 있도록 설정 해 놓아서 YUM이나 혹은 APT-GET에서
사용을 하실 수 있습니다.

# CentOS-Base.repo
#
# This file uses a new mirrorlist system developed by Lance Davis for CentOS.
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client.  You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#

[base]
name=CentOS-$releasever - Base
baseurl=http://ftp.daum.net/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://ftp.daum.net/centos/RPM-GPG-KEY-CentOS-5

#released updates
[updates]
name=CentOS-$releasever - Updates
baseurl=http://ftp.daum.net/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://ftp.daum.net/centos/RPM-GPG-KEY-CentOS-5

#packages used/produced in the build but not released
[addons]
name=CentOS-$releasever - Addons
baseurl=http://ftp.daum.net/centos/$releasever/addons/$basearch/
gpgcheck=1
gpgkey=http://ftp.daum.net/centos/RPM-GPG-KEY-CentOS-5

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
baseurl=http://ftp.daum.net/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://ftp.daum.net/centos/RPM-GPG-KEY-CentOS-5

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
baseurl=http://ftp.daum.net/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://ftp.daum.net/centos/RPM-GPG-KEY-CentOS-5

#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib
baseurl=http://ftp.daum.net/centos/$releasever/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://ftp.daum.net/centos/RPM-GPG-KEY-CentOS-5

위와 같이 설정을 /etc/yum.repos.d/CentOS-Base.repo 파일로 넣어주면 보다 빠른 업데이트 속도를 느끼실 수
있습니다.

업데이트 명령은 아래와 같습니다.

# yum update

그럼 보다 빠른 업데이트를 즐기시기 바랍니다.~
Posted by Huns [Jaehun]
크리에이티브 커먼즈 라이선스
Creative Commons License
출처 : http://www.onurmark.co.kr/107
참조: http://blog.naver.com/nonce4?Redirect=Log&logNo=140028166905
참조: http://dan.drydog.com/apache2php.html

작성일시: 2008년 2월 1일
작성자   : 박재영(jypark@secuwiz.net)

Snort는 네트워크 침입탐지 프로그램으로 libpcap 라이브러리를 사용하여 네트워크 패킷을 검사하여 불법적인 네트워크 접근이나 스니핑, 스캔 등등 네트워크 공격을 탐지하는 툴이다. 전세계적으로 가장 많이 사용되는 IDS로써 사실표준(De facto)이다. (자세한 정보: http://www.snort.org/)

네트워크 구성
사용자 삽입 이미지
 

네트워크 구성도

위와 같이 DMZ 구역에 설치 할 예정이며 외부에서 들어온 패킷들 중 방화벽을 통과한 트래픽에 대하여 침입탐지를 수행하게 된다.

필요한 라이브러리
libpcap(패킷 캡춰 라이브러리) 다운로드: http://www.tcpdump.org
pcre(Perl 호환 정규식 라이브러리) 다운로드: http://www.pcre.org

어플리케이션
Snort 다운로드: http://www.snort.org
Snortrules 다운로드: http://www.snort.org
Apache 다운로드: http://www.apache.org 
PHP 다운로드: http://www.php.org 
MySQL 다운로드: http://www.mysql.org
ADODB(php로 작성된 ADO객체): http://sourceforge.net/projects/adodb/
BASE 다운로드: http://sourceforge.net/projects/secureideas/

동작방식을 간단히 보면 Snort가 libpcap을 사용하여 패킷을 캡춰하고 정규식으로 작성된 룰을 기반으로 pcre를 사용하여 매칭을 한다. 공격으로 판단된 로그는 MySQL DB에 남기게 되고 사용자는 PHP로 작성된 BASE로 접속하여 웹페이지에서 로그를 쉽게 볼 수 있게된다.

1) 라이브러리 설치
libpcap과 pcre설치는 아래와 같은 명령으로 설치 할 수 있다.
/usr/local/src 밑에서 압축을 해제 한 다음 아래와 같이 명령어를 입력한다.
> ./configure
> make && make install

2) 어플리케이션 설치
MySQL 설치는 생략한다. 웹 문서에도 많이 나와 있으며 홈페이지에서도 쉽게 나와 있으므로 참조를 하자.
MySQL 설치: http://www.onurmark.co.kr/4

Snort를 /usr/local/src에 압축을 해제하고 아래와 같은 명령어를 입력한다. 이때 --with-mysql 옵션은 MySQL이 설치된 디렉토리를 지정한다.(위치가 다를 수 있으니 확인)
> ./configure --with-mysql=/usr/local/mysql --enable-dynamic
> make && make install

snort라는 그룹과 사용자를 등록하고 룰과 로그를 남길 디렉토리를 만든다.
> groupadd snort
> useradd -g snort snort -s /sbin/nologin
>
> mkdir -p /etc/snort/rules
> mkdir /var/log/snort
>
> cp etc/* /etc/snort

snortrules는 /etc/snort에 압축을 해제하면 된다.

MySQL 설정은 다음과 같이한다. 다른 이름으로 줘도 상관없다.
User: snort
PW: snort
DB: snort

사용자 계정과 패스워드를 지정하고 snort라는 DB를 생성하여 사용자가 snort라는 DB에 권한을 가지도록 설정한다. 기본적인 내용이므로 이 문서에는 설명하지 않도록 하겠다.

snort 소스파일에 schems/create_mysql이라는 DB 덤프 파일이 들어 있다. 아래의 명령어로 테이블들을 생성한다.

> mysql -u snort -p snort < create_mysql
Enter password: *****


snort DB를 확인해보면 테이블들이 생성된 것을 확인 할 수 있다.

Apache 와 PHP 설치
아파치를 /usr/local/src에 압축 해제 후 다음 명령어로 설치를 진행하자

> ./configure --prefix=/usr/local/apache \
 --enable-so \
 --enable-cgi \
 --enable-info \
 --enable-rewrite \
 --enable-speling \
 --enable-usertrack \
 --enable-deflate \
 --enable-ssl \
 --enable-mime-magic
> make && make install

빌드 옵션에 대한 내용은 Apache홈페이지의 Document에 자세하게 나와 있으니 참조하자

PHP를 /usr/local/src에 압축 해제 후 아래와 같이 입력하자

> ./configure \
 --with-apxs2=/usr/local/apache/bin/apxs \
 --with-mysql=/usr/local/mysql \
 --prefix=/usr/local/apache/php \
 --with-config-file-path=/usr/local/apache/php \
 --enable-force-cgi-redirect \
 --disable-cgi \
 --with-zlib \
 --with-gettext
> make && make install
> cp -p php.ini.recommended /usr/local/apache/php/php.ini


Apache와 PHP가 설치 되었으면 /usr/local/apache/conf/httpd.conf파일을 아래와 같이 수정한다.

# Make sure there's only **1** line for each of these 2 directives:
# Use for PHP 4.x:
#LoadModule php4_module        modules/libphp4.so
#AddHandler php-script   php

# Use for PHP 5.x:
LoadModule php5_module        modules/libphp5.so
AddHandler php5-script php

# Add index.php to your DirectoryIndex line:
DirectoryIndex index.html index.php

AddType text/html       php

# PHP Syntax Coloring
# (optional but useful for reading PHP source for debugging):
AddType application/x-httpd-php-source phps

ADODB와 BASE를 /usr/local/apache/htdocs에 압축을 해제하면 모든 설치가 완료 되었다.

마지막으로 snort와 BASE의 환경 설정만 남았다. /etc/snort/snort.conf 파일을 자신의 환경에 맞게 설정한 후 다음의 내용을 추가한다.

var RULE_PATH=/etc/snort/rules
output database:log,mysql,user=snort password=snort dbname=snort host=localhost


/usr/local/apache/htdocs/base/base_conf.php.dist 파일을 base_conf.php파일로 복사한 다음 수정한다.

$DBlib_path="/usr/local/apache/htdocs/adodb";
$DBtype="mysql";

$alert_dbname="snort";
$alert_host="localhost";
$alert_port="3306";
$alert_user="snort";
$alert_password="snort";

설정이 완료 된 후 MySQL을 실행하고 Apache를 실행하고 snort를 실행한 후 http://[설치된IP]/base로 접속하면 다음과 같은 화면이 보일 것이다.

> /usr/local/mysql/bin/mysqld_safe &
> /usr/local/apache/bin/apachectl start
> snort -i eth0 -c /etc/snort/snort.conf -D
-i 옵션은 감시할 NIC카드를 선택하고 -c는 설정파일을 지정하고 -D는 데몬으로 띄우겠다는 옵션이다.

사용자 삽입 이미지


다른 호스트에서 스노트가 설치된 PC로 nmap으로 포트 스캐닝을 수행하고 로그가 남는지 확인해 보자
> nmap -O -sS [snort IP]

자 이제 모든 설치가 완료 되었고 정상적으로 수행하는 것도 확인을 했다. 이제 마지막으로 남은 것은 브릿지 유틸을 사용하여 NIC카드 2개를 브릿지 한다음 snort가 브릿지를 탐지하도록 설정하면 완료가 된다. brctl을 사용하여 브릿지를 구성한 후 snort를 실행할 때 -i [브릿지 이름] 옵션을 주면 된다.

브릿지 설치에 대한 자세한 정보: http://www.onurmark.co.kr/109
Posted by Huns [Jaehun]
크리에이티브 커먼즈 라이선스
Creative Commons License
[시큐리티 팁!팁!팁] ClamAV로 안전한 안티 바이러스 메일 서버 구축하기
  출판일 :2006년 9월호

 메일 송수신을 하다 보면 하루에 수십 통씩 쌓이는 바이러스 메일 때문에 고생할 때가 많다. 물론 각 PC마다 백신 프로그램을 설치해 해결할 수도 있다. 하지만 비용도 만만치 않고, 혹 설치했다 하더라도 매번 업데이트를 하도록 설정해야 하기 때문에 무척 번거롭다.

홍석범 | 오늘과 내일 차장

그렇다면 어떤 방법을 통해 바이러스 메일을 차단해야 할까. 서버차원에서 웜이나 바이러스 메일을 차단하는 방법이 있다. 특히 라이선스나 비용부담 없이 무료로 제공되면서도 바이러스에 대한 빠른 업데이트를 제공한다면 더할 나위가 없을 것이다. 이 때 고려해 볼 수 있는 것이 바로 ClamAV라는 프로그램인데, 실제 많은 상용 메일 솔루션에서 활용하고 있다. ClamAV의 특징은 다음과 같다.


 - GNU 라이선스로 자유롭게 이용할 수 있다.
 - 빠른 스캔을 제공한다.
 - 리눅스와 FreeBSD의 경우 온 액세스(On-Access) 스캔 기능도 제공한다.
 - 6만여 개 이상의 바이러스와 웜 등을 인식한다.
 - RAR이나 ZIP, gzip, TAR 등 압축된 파일에 대한 탐지도 가능하다.
 - 많은 써드파티 애플리케이션이 개발돼 제공되고 있다.
 
·ClamAV 설치
이제 ClamAV로 안티 바이러스용 메일 서버를 구축해보자. ClamAV가 작동하기 위해서는 먼저 zlib와 zlib-devel 패키지와 GCC 컴파일러가 존재해야 한다. 대부분 기본적으로 설치돼 있으므로 별도로 설치하지 않아도 될 것이다.
가장 간편하게 설치할 수 있는 방법은 기존의 sendmail에 libmilter 형태로 설치하는 것이다. 이를 위해서는 sendmail 뿐만 아니라 버전에 맞는 sendmail-devel과 sendmail-cf 패키지도 설치돼 있어야 한다. 만약 설치돼 있지 않으면 다음 명령어로 설치하기 바란다.


# yum -y install sendmail-cf*
# yum -y install sendmail-devel*


이후 홈페이지에서 최신 버전의 ClamAV를 다운로드해 설치하도록 한다.


# tar  zxvfp clamav-0.8x.x.tar.gz


다음으로는 ClamAV가 작동하게 될 사용자를 생성한다. 별도로 인증을 하지 않으므로 ClamAV의 암호는 설정할 필요가 없다.


# adduser clamav


소스가 설치된 디렉토리에서 다음과 같이 현재 시스템에 맞도록 설정한다. 


# ./configure --enable-milter --prefix=/usr/local/clamav


이는 /usr/local/clamav 디렉토리에 설치하되 milter 기능을 활성화해 설정하겠다는 의미다. 이후 컴파일하고 설치한다.


# make; make install


그러면 /usr/local/clamav/ 디렉토리에 관련 파일들이 설치된 것을 확인할 수 있을 것이다.

이제 sendmail과 연동하기 위해 ClamAV-milter를 설정하자. ClamAV-milter는 sendmail을 위해 개발된 빠른 속도의 이메일 스캐너다.
sendmail.cf 파일에 직접 추가할 때는 다음과 같이 설정하면 된다.


O InputMailFilters=clmilter
Xclmilter, S=local:/var/run/clamav/clmilter.sock,F=,T=S:4m;R:4m


sendmail.mc 파일에 추가할 경우에는 다음과 같이 설정한다.


INPUT_MAIL_FILTER(`clmilter',`S=local:/var/run/clamav/clmilter.sock,F=, T=S:4m;R:4m')dnl
define(`confINPUT_MAIL_FILTERS', `clmilter')


mc 파일에 추가한 뒤에는 m4로 sendmail.cf를 다시 생성하도록 한다.


# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf


설정이 끝난 뒤, 본격적으로 실행을 하려면 /usr/local/clamav/etc/clamd.conf 파일을 열어 상단에 있는 Example 부분에 주석(#)을 추가한다. 이후 다음과 같이 ClamAV-milter를 실행해보자.


# /usr/local/clamav/sbin/clamav-milter -lo /var/run/clamav/clmilter.sock


마지막으로 netstat -lnp를 실행했을 때, 소켓 형태를 띠고 있으면 성공한 것이다.


unix  2      [ ACC ]     STREAM     LISTENING     282731 24398/clamav-milter /var/run/clamav/clmilter.sock


만약 소켓 파일이 생성되는 /var/run/clamav 디렉토리에 적당한 소유권과 퍼미션이 없다면, 다음과 같은 에러가 나면서 작동하지 않으므로, ClamAV와 같은 적당한 권한을 주는 것이 좋다.


Aug 14 14:00:37 cdn-w1 clamav-milter: ClamAv: Unable to bind to port /var/run/clamav/clmilter.sock: 허가 거부됨
Aug 14 14:00:37 cdn-w1 clamav-milter: ClamAv: Unable to create listening socket on conn /var/run/clamav/clmilter.sock


이제 sendmail을 재가동하면 기본적인 설정이 끝났다는 것을 확인할 수 있다.


·자동 업데이트 설정하기
ClamAV에서는 바이러스에 대한 정보를 업데이트하기 위해 FreshClam이라는 것을 제공하고 있다. 이 프로그램은 정해진 시각에 database.clamav.net에 접속해 서버에 설치된 정보와 비교해 업데이트 여부를 체크한다. 업데이트에 대한 기본정보는 다음과 같이 설정해 /var/log/clam-update.log 파일에 남도록 한다.


# touch /var/log/clam-update.log
# chmod 600 /var/log/clam-update.log
# chown clamav /var/log/clam-update.log


아무런 설정없이 FreshClam을 실행하면 다음과 같이 바이러스 정보를 최신 정보로 업데이트하게 되며, 관련 DB 파일은 /usr/local/clamav/share/clamav에 저장된다.  


# ./freshclam
ClamAV update process started at Mon Aug 14 11:12:32 2006
main.cvd is up to date (version: 39, sigs: 58116, f-level: 8, builder: tkojm)
Downloading daily.cvd [*]
daily.cvd updated (version: 1655, sigs: 7324, f-level: 8, builder: sven)
Database updated (65440 signatures) from database.clamav.net (IP: 61.205.61.201)


최신 정보로 업데이트된 후 재실행하면 다음과 같은 화면이 보인다.


 


# ./freshclam
ClamAV update process started at Mon Aug 14 11:17:50 2006
main.cvd is up to date (version: 39, sigs: 58116, f-level: 8, builder: tkojm)
daily.cvd is up to date (version: 1655, sigs: 7324, f-level: 8, builder: sven)


자동으로 업데이트하도록 설정하는 것에는 두 가지 방법이 있다.
우선 다음과 같이 단순히 FreshClam을 데몬 형태로 실행하는 방법이 있다. 이 경우 /usr/local/clamav/etc/freshclam.conf에 설정된 조건에 따라 실행되는데, 기본적으로 매 2시간씩 업데이트 여부를 체크하게 된다.
 
 # freshclam -d


다음으로는 Cron에 설정하는 방법이 있다. 이런 경우 /etc/crontab 등에 다음과 같이 설정하면 4분마다 업데이트 여부를 체크한다.
 
 4 * * * * /usr/local/clamav/bin/freshclam --quiet


·ClamAV 테스트하기
이제 ClamAV가 바이러스 메일을 정상적으로 차단하는지를 확인하기 위해 바이러스 메일을 찾아 ClamAV가 설치된 서버로 전송해 보자. 서버에 바이러스 메일이 전송될 때 maillog 파일을 보면 다음과 같은 정보를 확인할 수 있다.


sendmail[25038]: k7E5v4qD025038: Milter add: header: X-Virus-Status: Infected with Worm.Bagz.C

sendmail[25038]: k7E5v4qD025038: Milter: data, reject=554 5.7.1 virus Worm.Bagz.C detected by ClamAV - http://www.clamav.net

sendmail[25038]: k7E5v4qD025038: to=<root@cdnlog.tt.co.kr>, delay=00:00:01, pri=237759, stat=virus Worm.Bagz.C detected by ClamAV - http://www.clamav.net
 
여기서 Worm.Bagz.C라는 바이러스에 감염된 메일이 발견돼 이 메일을 거부하고, 로그에 남긴 것을 확인할 수 있다. 잠시 후 메일 발송자에게 다음과 같은 반송 메일이 도착할 것이다.

//(화면 1) 메일 발송자에게 도착한 반송 메일


·인식 가능한 바이러스 이름 확인하는 방법
ClamAV는 6만여 개 이상의 바이러스를 인식할 수 있다. 만약 바이러스 DB에 있는 바이러스 명을 조회하려면 다음과 같이 실행하고 잠시 기다리면 곧 6만여 개의 목록을 확인할 수 있다.


# sigtool --list-sigs
HTML.Phishing.Bank-493
HTML.Phishing.Bank-494
HTML.Phishing.Bank-495
W97M.Sappatra
JS.Feebs.AM
HTML.Phishing.Pay-141
HTML.Phishing.Pay-142
HTML.Phishing.Bank-496
Trojan.Downloader.Small-1396
Trojan.Proxy.Ranky-76
Trojan.W32.Pigeon-16


·ClamAV-milter의 고급기능 활용
ClamAV-milter의 메인 페이지를 보면 앞에서 언급되지 않은 고급기능을 활용할 수 있음을 알 수 있다. 유용한 몇 가지만 살펴보자.


- 송수신되는 모든 메일을 체크하고자 할 때
앞에서 ClamAV-milter를 실행할 때, 기본적으로 다음과 같이 실행했다. 여기서 'lo'의 의미는 'local'과 'outgoing'으로, 이 서버를 통과하는 모든 메일을 체크한다는 의미다. 


# /usr/local/clamav/sbin/clamav-milter -lo /var/run/clamav/clmilter.sock


- 통보 기능을 사용하지 않고자 할 때
기본적으로 바이러스 메일이 확인되면 ClamAV-milter는 해당 메일을 반송하고 관리자에게도 바이러스 메일에 대해 통보해 준다. 하지만 이 경우 불필요한 부하를 유발할 수도 있고, 발신자 주소가 위조되는 경우가 많다. 이 때, -N 옵션을 추가하면 메일을 반송하지 않는다.


# /usr/local/clamav/sbin/clamav-milter -Nlo /var/run/clamav/clmilter.sock


이때 maillog를 보면 다음과 같은 정보가 나오고, 발송자와 이메일 관리자에게 바이러스에 대한 메일을 발송하지 않게 된다.
 
Aug 14 15:42:00 cdnlog sendmail[25449]: k7E6fxX2025449: Milter: data, discard
Aug 14 15:42:00 cdnlog sendmail[25449]: k7E6fxX2025449: discarded


- 헤더에 추가를 원하지 않을 때
기본적으로 ClamAV를 통과하면 다음과 같은 부분이 헤더에 추가된다. 만약 이 부분이 추가되는 것을 원하지 않을 경우 ClamAV-milter 옵션에 -n을 추가해 실행하면 된다. 


X-Virus-Scanned: ClamAV version 0.88.4, clamav-milter version 0.88.4
X-Virus-Status: Clean


- 바이러스 메일을 특정한 사용자에게 포워딩하고자 할 때
기본적으로 바이러스 메일을 삭제하지 않고 특정 사용자에게 포워딩할 수 있다. 이 경우 -Q 옵션을 추가해 실행하면 되는데, 다음과 같이 실행할 경우에는 바이러스 메일을 발견하면 삭제하지 않고 antihong@antihong.org으로 포워딩한다.


# /usr/local/clamav/sbin/clamav-milter  -lo -  /var/run/clamav/clmilter.sock


지금까지 sendmail 기반의 메일 서버에 ClamAV를 활용해 안티 바이러스 시스템을 구축하는 방법에 대해 살펴봤다. 이외에도 더 많은 기능을 활용할 수 있으므로 ClamAV에 대한 자세한 내용은 홈페이지를 참고하기 바란다.  월간 온더넷 2006년 9월호

Posted by Huns [Jaehun]
크리에이티브 커먼즈 라이선스
Creative Commons License

출처 : 데일리그리드 (http://dailygrid.net)

PC 운영체제인 우분투에 대한 기획이 이어지고 있다. 이번 글에서는 우분투의 네트워크 환경과 애플리케이션 지원 현황에 대해 조명한다.

사용자 삽입 이미지
글의 구성을 위해 한국우분투사용자모임(Ubuntu.or.kr)의 회원으로 활동 중인 최성원 브랫인넷 개발팀 차장(좌측사진)과의 세 번째 인터뷰를 진행했다.

- 요즘은 인터넷의 시대입니다. 우분투의 네트워크 지원 현황을 설명해 주십시오.

“네트워크 지원에 대해선 두 가지로 나눠 이야기를 해야 합니다. 하나는 기반이 되는 네트워크이고 다른 것은 우리나라의 인터넷 환경입니다.”

“우분투의 네트워크 지원은 매우 우수한 것으로 평가해야 합니다. 이는 리눅스 계열의 배포판 대부분이 인터넷을 기반으로 배포 및 지원되기 때문입니다. 배포판을 구하는 것도, 업그레이드를 하는 것도, 기술 지원도 인터넷을 통해서만 가능합니다.”

“어떤 이용자들은 이 같은 인터넷과 우분투와의 밀접한 관계를 ‘우분투를 제대로 사용하기 위해서는 죽어다 깨어나도 인터넷에 접속해 있어야 한다’고 표현합니다. 우분투는 설치하면서부터 네트워크를 검색하고 저장소를 인식해 CD보다 최신판이 있다면 이를 설치합니다.”

- 네트워크 지원과 관련해 두 번째로 고려해야 할 사안인, 우리나라의 인터넷 환경에 대해 말씀해 주십시오.

“우리나라의 인터넷 환경은 우분투를 쓰기에 불편한 점들이 있습니다. 이는 일부 한국의 홈페이지들이 W3C가 권고하는 웹(Web) 표준을 지키지 않고 있기 때문입니다. 이로 인해 우분투의 기본 웹브라우저인 파이어폭스(FireFox)에서 화면과, 윈도의 웹브라우저인 ‘IE’와 다르게 보이는 현상이 발생합니다.”

“또한 파이어폭스(FireFox)에서 액티브X(ActiveX)를 지원하지 않기에, 액티브X를 사용하는 인터넷 환경에선 우분투를 쓰는 것이 불편합니다. 이 때문에 사용자들은 인터넷 거래에 어려움을 겪기도 합니다.”

- 액티브X의 문제로 사용자의 이용이 불편 문제가 촉발됐지만, 파이어폭스도 이를 해결하기 위한 대책을 세워야 할 것 같습니다만.

“파이어폭스는 W3C의 표준 권고안을 준수하고 있습니다. 그러나 액티브X는 웹 표준이 아닙니다. 따라서 파이어폭스는 한국의 특수성을 고려해 액티브X를 지원할 의무가 없습니다.”

“MS의 비스타(Vista) 역시 액티브X를 사용하는데 불편함이 존재합니다. 결국 MS도 액티브X가 보안에 문제가 있다는 것을 인식해 수정하려는 노력을 하고 있습니다.”

- 한국에서 액티브X를 사용하지 못해 가장 불편한 점은 무엇입니까?

“온라인 쇼핑에서 결제 처리를 할 수 없습니다. 이는 금융결제원에서 인정하고 있는 인증서가 액트브X를 기본으로 삼고 있기 때문입니다. 현재 이 문제를 해결하기 위해 오픈웹(OpenWeb, openweb.or.kr)가 금융결제원과 법정 소송을 진행하고 있습니다.”

- 우분투를 통해 직접 해결할 방법은 없나요?

“여기저기서 우분투에서 온라인 쇼핑(액티브X)이 가능하도록 하는 다양한 시도를 진행 중입니다. 현재 나와 있는 방법으론, 물론 다소 불완전하지만, ‘와인(Wine)’ 혹은 ‘버추얼박스(VirtualBox)’를 이용하는 방법이 있습니다.

“와인은 리눅스 환경에서 XP환경의 프로그램들을 사용할 수 있게 해주는 프로그램입니다. 버추얼박스는 우분투 안에서 다른 OS를 사용할 수 있게 해주는 프로그램입니다.”

- 이메일이나 메신저를 이용하는데 불편한 점은 없습니까.

“우분투에서 이용할 수 있는 이메일 프로그램은,  ‘그놈(Gnome)’에서 개발해 우분투를 설치될 때 함께 설치되는 ‘에볼루션’과, 모질라에서 개발한 ‘썬더버드’ 등이 있습니다. 두 가지 는 모두 한글화되어 있어, 사용하는 데는 아무런 문제가 없습니다.”

“메신저는 MSN, 야후, 네이트온을 지원하는 피진(Pidgin)이 있습니다. 또한 우리나라에서 많이 사용하는 네이트온(NateOn)의 리눅스 버전도 나왔습니다. 점점 우분투를 사용하는 환경이 좋아지고 있습니다.”

- 우분투를 사무용으로 쓰기 위해선, 오피스 프로그램이 있어야 하는데요. 우분투에서 쓸 수 있는 워드(Word)나 스프레드시트(Spreadsheet)는 어떤 것들이 있습니까.

“우분투는 설치가 될 때부터 오픈오피스가 설치가 됩니다. 오픈오피스(OpenOffice)엔 MS의 우드(Word)에 대응하는 라이터(Writer), 엑셀(Excel)에 대응하는 칼크(Calc) 등의 프로그램을 갖고 있습니다. 또한 파워포인트(PowerPoint)에 대응하는 임프레스(Impress)란 프리젠테이션 프로그램이 포함돼 있습니다”

- 오피스 프로그램 간의 인터페이스 호환성에 대해 말씀해 주십시오.

“이들 프로그램의 사용자 인터페이스는 MS 오프스와 비슷하지만, 조금 다른 점도 있습니다. 그러나 조금만 익히면 곧바로 익숙해질 수 있습니다. 또한 한글과컴퓨터도 한글을 윈도XP용과 리눅스용으로 발표해 오피스 프로그램을 사용할 수 있도록 했습니다.”

- 다른 사람이 오피스용 프로그램으로 작성한 프로그램을 보려면 역시, 호환성이 요구될 수 있습니다.

“MS 오피스에서 작성한 문서들을 오픈오피스에서 불러와서 볼 수 있습니다. 일부 문서는 MS 오피스에서 작성한 것과는 조금 다르게 보이지만, 대부분의 문서를 불러와 볼 수 있습니다.”

“또한 오픈오피스에서 작성한 문서는 저장할 때 MS 오피스 형태로 저장해, MS 오피스에서 보거나 PDF문서로 저장을 하면 누구든지 본인이 작성한 문서를 볼 수 있습니다.”

PC 운영체제인 우분투에 대한 기획이 이어지고 있다. 이번 글에서는 우분투의 네트워크 환경과 애플리케이션 지원 현황에 대해 조명한다.

글의 구성을 위해 한국우분투사용자모임(Ubuntu.or.kr)의 회원으로 활동 중인 최성원 브랫인넷 개발팀 차장(좌측사진)과의 세 번째 인터뷰를 진행했다.

- 요즘은 인터넷의 시대입니다. 우분투의 네트워크 지원 현황을 설명해 주십시오.

“네트워크 지원에 대해선 두 가지로 나눠 이야기를 해야 합니다. 하나는 기반이 되는 네트워크이고 다른 것은 우리나라의 인터넷 환경입니다.”

“우분투의 네트워크 지원은 매우 우수한 것으로 평가해야 합니다. 이는 리눅스 계열의 배포판 대부분이 인터넷을 기반으로 배포 및 지원되기 때문입니다. 배포판을 구하는 것도, 업그레이드를 하는 것도, 기술 지원도 인터넷을 통해서만 가능합니다.”

“어떤 이용자들은 이 같은 인터넷과 우분투와의 밀접한 관계를 ‘우분투를 제대로 사용하기 위해서는 죽어다 깨어나도 인터넷에 접속해 있어야 한다’고 표현합니다. 우분투는 설치하면서부터 네트워크를 검색하고 저장소를 인식해 CD보다 최신판이 있다면 이를 설치합니다.”

- 네트워크 지원과 관련해 두 번째로 고려해야 할 사안인, 우리나라의 인터넷 환경에 대해 말씀해 주십시오.

“우리나라의 인터넷 환경은 우분투를 쓰기에 불편한 점들이 있습니다. 이는 일부 한국의 홈페이지들이 W3C가 권고하는 웹(Web) 표준을 지키지 않고 있기 때문입니다. 이로 인해 우분투의 기본 웹브라우저인 파이어폭스(FireFox)에서 화면과, 윈도의 웹브라우저인 ‘IE’와 다르게 보이는 현상이 발생합니다.”

“또한 파이어폭스(FireFox)에서 액티브X(ActiveX)를 지원하지 않기에, 액티브X를 사용하는 인터넷 환경에선 우분투를 쓰는 것이 불편합니다. 이 때문에 사용자들은 인터넷 거래에 어려움을 겪기도 합니다.”

- 액티브X의 문제로 사용자의 이용이 불편 문제가 촉발됐지만, 파이어폭스도 이를 해결하기 위한 대책을 세워야 할 것 같습니다만.

“파이어폭스는 W3C의 표준 권고안을 준수하고 있습니다. 그러나 액티브X는 웹 표준이 아닙니다. 따라서 파이어폭스는 한국의 특수성을 고려해 액티브X를 지원할 의무가 없습니다.”

“MS의 비스타(Vista) 역시 액티브X를 사용하는데 불편함이 존재합니다. 결국 MS도 액티브X가 보안에 문제가 있다는 것을 인식해 수정하려는 노력을 하고 있습니다.”

- 한국에서 액티브X를 사용하지 못해 가장 불편한 점은 무엇입니까?

“온라인 쇼핑에서 결제 처리를 할 수 없습니다. 이는 금융결제원에서 인정하고 있는 인증서가 액트브X를 기본으로 삼고 있기 때문입니다. 현재 이 문제를 해결하기 위해 오픈웹(OpenWeb, openweb.or.kr)가 금융결제원과 법정 소송을 진행하고 있습니다.”

- 우분투를 통해 직접 해결할 방법은 없나요?

“여기저기서 우분투에서 온라인 쇼핑(액티브X)이 가능하도록 하는 다양한 시도를 진행 중입니다. 현재 나와 있는 방법으론, 물론 다소 불완전하지만, ‘와인(Wine)’ 혹은 ‘버추얼박스(VirtualBox)’를 이용하는 방법이 있습니다.

“와인은 리눅스 환경에서 XP환경의 프로그램들을 사용할 수 있게 해주는 프로그램입니다. 버추얼박스는 우분투 안에서 다른 OS를 사용할 수 있게 해주는 프로그램입니다.”

- 이메일이나 메신저를 이용하는데 불편한 점은 없습니까?

“우분투에서 이용할 수 있는 이메일 프로그램은,  ‘그놈(Gnome)’에서 개발해 우분투를 설치될 때 함께 설치되는 ‘에볼루션’과, 모질라에서 개발한 ‘썬더버드’ 등이 있습니다. 두 가지 는 모두 한글화되어 있어, 사용하는 데는 아무런 문제가 없습니다.”

“메신저는 MSN, 야후, 네이트온을 지원하는 피진(Pidgin)이 있습니다. 또한 우리나라에서 많이 사용하는 네이트온(NateOn)의 리눅스 버전도 나왔습니다. 점점 우분투를 사용하는 환경이 좋아지고 있습니다.”

- 우분투를 사무용으로 쓰기 위해선, 오피스 프로그램이 있어야 하는데요. 우분투에서 쓸 수 있는 워드(Word)나 스프레드시트(Spreadsheet)는 어떤 것들이 있습니까.

“우분투는 설치가 될 때부터 오픈오피스가 설치가 됩니다. 오픈오피스(OpenOffice)엔 MS의 우드(Word)에 대응하는 라이터(Writer), 엑셀(Excel)에 대응하는 칼크(Calc) 등의 프로그램을 갖고 있습니다. 또한 파워포인트(PowerPoint)에 대응하는 임프레스(Impress)란 프리젠테이션 프로그램이 포함돼 있습니다”

- 오피스 프로그램 간의 인터페이스 호환성에 대해 말씀해 주십시오.

“이들 프로그램의 사용자 인터페이스는 MS 오프스와 비슷하지만, 조금 다른 점도 있습니다. 그러나 조금만 익히면 곧바로 익숙해질 수 있습니다. 또한 한글과컴퓨터도 한글을 윈도XP용과 리눅스용으로 발표해 오피스 프로그램을 사용할 수 있도록 했습니다.”

- 다른 사람이 오피스용 프로그램으로 작성한 프로그램을 보려면 역시, 호환성이 요구될 수 있습니다.

“MS 오피스에서 작성한 문서들을 오픈오피스에서 불러와서 볼 수 있습니다. 일부 문서는 MS 오피스에서 작성한 것과는 조금 다르게 보이지만, 대부분의 문서를 불러와 볼 수 있습니다.”

“또한 오픈오피스에서 작성한 문서는 저장할 때 MS 오피스 형태로 저장해, MS 오피스에서 보거나 PDF문서로 저장을 하면 누구든지 본인이 작성한 문서를 볼 수 있습니다.

Posted by Huns [Jaehun]
크리에이티브 커먼즈 라이선스
Creative Commons License

출처:데일리그리드(http://dailygrid.net)
PC 운영체제인 우분투에 대한 기획이 이어지고 있다. 이번 글에서는 우분투의 설치, 하드웨어지원, 소프트웨어 설치에 대해 알아본다.

글의 구성을 위해 한국우분투사용자모임(Ubuntu.or.kr)의 회원으로 활동 중인 최성원 브랫인넷 개발팀 차장(좌측사진)과의 두 번째 인터뷰를 진행했다.

- 우분투 배포판을 구한 다음엔 PC에 설치를 해야 하는데요. 설치 작업은 사용자 편의를 충분히 고려하고 있습니까?

“예전에는 우분투를 설치하는데 몇 가지 어려움이 있었지만 현재는 설치의 어려움은 없습니다. 윈도XP나 비스타를 설치하는 것처럼 쉽게 우분투를 설치할 수 있습니다. 또한 윈도와 달리 다양한 방식으로 설치할 수 있습니다.

- 다양한 방법이라면 구체적으로 어떤 것들입니까?

“먼저 고전적인 방법이 있습니다. 얼터너트(Alternate)라고 불리는 CD를 사용해 텍스트 기반(Text Base)로 설치하는 방법입니다. 이 방식은 예전부터 이용되던 방식으로 아주 간단한 설치 방법이지요.”

“두 번째로는 GUI를 사용하는 방식입니다. 라이브CD(LiveCD)로 설치를 하는데 그래픽을 사용으로 일반 사용자들이 접근하기 쉬운 방식입니다. 또 주목해야 할 것은 윈도XP가 설치되어 있는 상태에서도 우분투를 설치를 할 수 있습니다.”

[Text Base 설치 화면]

[Text Base 설치 화면]


[LiveCD GUI 설치 화면]

[LiveCD GUI 설치 화면]


- 우분투에 경험이 없는 이용자들이 윈도 운영체제를 제거한 상태서 우분투를 설치하는데 어려움이 있을 것 같습니다. 윈도 상태서 우분투를 체험할 수 있는 방법은 없습니까?

“앞서 언급한 방법들은 PC에 우분투를 설치해 운영체제로 사용하는 것입니다. 반면 우분투는 설치하기 전에 체험해 보기 위한 방법도 제공합니다. 라이브CD를 사용해, CD로 부팅을 하면 우분투가 설치된 것과 같은 환경을 만들어주어 체험이 가능합니다.”

“체험이 끝난 후에는 CD를 빼고 부팅하면 다시 윈도XP 운영체제로 돌아옵니다. 조금 더 오랜 시간 체험을 하고 싶다면 라이브CD안에 포함된 ‘우비(wubi)’라는 방법을 이용해 PC에 임시로 설치할 수도 있습니다.”

[wubi 설치 화면]

[wubi 설치 화면]

- 다양한 방법으로 설치를 지원해 주고 있군요. 하지만 이런 다양한 방법이 사용자에게 오히려 혼란을 주지는 않습니까?

“네. 처음 접하는 사용자에게는 약간 혼란스러워 보일 수 있습니다. 하지만 이는 리눅스가 추구하는 정신인 이용자들의 ‘자유(Free)’의 단면으로 이해해야 합니다. 또한 후발 주자로서의 핸디캡이기도 합니다.”

- 우분투를 윈도와 함께 사용할 수 있는 것으로 알고 있습니다. 

“우분투를 처음 접하는 이용자들은 처음부터 우분투만 사용하는데 몇 가지 불편을 겪을 수 있습니다. 그래서 우분투는 다른 리눅스 계열의 운영체제처럼 ‘듀얼부팅’을 지원합니다. 이를 통해 PC사용자는 하나의 PC에 두 개의 운영체제를 설치해 윈도XP를 사용하고 싶을 때는 XP로 부팅을 하고, 우분투를 사용하고 싶을 때는 우분투로 부팅을 하면 됩니다.”

“즉 우분투는 사용자들에게 운영체제 이용의 선택권을 주고 있습니다. 저도 우분투와 XP를 함께 사용하고 있습니다. 다만 두 개의 운영체제를 한꺼번에 부팅해 사용할 수는 없습니다.”

- 모든 PC에 우분투를 설치해 사용할 수 있습니까?

“대부분의 PC와 노트북에 무리 없이 설치할 수 있습니다. 다만 우분투를 설치하기 전에 우분투 홈페이지의 하드웨어 지원 페이지(https://wiki.ubuntu.com/HardwareSupport)에 가서 지원 사양을 확인할 필요가 있습니다.”

“만약 설치하려는 하드웨어가 우분투를 지원하지 않는다면 우분투를 설치하지 못할 수 있습니다. 이에 따라 우분투의 이용 활성화를 위해선 PC제조업체들, 특히 국내 업체들이 윈도만 지원하지 말고 우분투를 포함한 리눅스 계열을 함께 지원해야 합니다.”

- 오피스 프로그램 등 윈도에서 이용이 가능한 애플리케이션들은 매우 다양합니다. 우분투를 지원하는 프로그램이 얼마나 있는지 궁금합니다.

“윈도XP에서 사용하는 프로그램에 대응하는 많은 프로그램들이 우분투에 존재합니다. 또한 대부분의 우분투 지원 프로그램들은 무료입니다. 윈도 계열의 프로그램은 대부분 상용 제품, 즉 돈을 내야 프로그램을 쓸 수 있는 것과 구별됩니다.”

- 윈도 XP에 대응하는 프로그램들을 구체적으로 설명해주십시오.

“먼저 MS 오피스에 대응하는 ‘오픈오피스(OpenOffice)’라는 사무용 오피스 프로그램이 있습니다. 또한 포토샵에 대응하는 김프(Gimp)라는 그래픽 프로그램이 있고, 플레이어나 KMP에 대응하는 토템(totem), VLC 등의 멀티미디어 플레이어 프로그램들이 있습니다. 이외에도 우분투에서 사용이 가능한 많은 프로그램들이 존재합니다.”

- 윈도에 익숙한 사용자들에겐 낮선 이름들인데요. 그런 프로그램들은 어디서 구할 수 있습니까.

“데비안 계열의 배포판들은 프로그램들을 찾기 위해 윈도처럼 헤매지 않아도 됩니다. 데비안 계열의 배포판들은 OS가 설치될 때 기본적으로 필요한 프로그램들이 설치가 되고, 더 필요한 프로그램들은 저장소에서 찾으면 됩니다. 만약 필요한 프로그램이 저장소에 없으면 인터넷에서 다운받으면 됩니다.”

“한 가지 재미있는 것은 윈도에서 운영되는 프로그램들은 설치 및 삭제 방법이 제각각이지만, 우분투를 포함한 데비안 계열의 배포판에서는 ‘.deb’라는 확장자로 된 모든 프로그램의 설치 방법과 삭제 방법이 동일합니다. 이에 따라 설치하는 방법을 하나만 배우면 됩니다.”

Posted by Huns [Jaehun]
크리에이티브 커먼즈 라이선스
Creative Commons License

출처 : 데일리그리드 (http://dailygrid.net)
국내에선 아직 리눅스를 탑재해 PC를 이용하는 사람들이 매우 적은 것이 현실이다. 이전부터 개인사용자용 리눅스(Linux)가 필요하다는 인식은 있었지만 실현되고 있는 것은 최근의 일이다.

특히 최근 델이 우분투(Ubuntu) 운영체제를 탑재한 PC를 출시한다는 소식이 국내에 알려지면서 개인용 컴퓨터의 운영체제로서 우분투에 대한 관심이 높아지고 있다.

사용자 삽입 이미지
이에 본지는 한국우분투사용자모임(Ubuntu.or.kr)의 회원으로 활동 중인 최성원 브랫인넷 개발팀 차장과의 인터뷰를 통해 우분투에 대한 전반적인 이해를 위한 기획을 구성했다. 이를 통해 국내 이용자들에게 우분투 이용이 적합한지 소상히 알아본다.

전체 글은 우분투의 개념, 설치, 하드웨어 지원, 네트워크 연결, 웹 부라우징 지원, 이메일 사용, 워드 프로세싱, 인덱싱/검색, 멀티미디어 지원, 이미지 편집/사진관리, 백업/복구, 보안 등으로 구성된다. 이번 글에서는 우분투에 대한 전반적인 개념을 소개한다.

- 최근 델이 우분투(Ubuntu)를 탑재한 PC를 내놓는 소식이 국내에 알려지면서 우분투 운영체제에 대한 관심이 높아지고 있습니다.

“우분투는 리눅스 커널에 기반을 둔 오픈소스 운영체제 배포분 중 하나입니다. 남아프리카공화국의 기업가인 마크 리처드 셔틀워쓰(Mark Richard Shuttleworth)가 세운 캐노니컬(Canonical Ltd)의 지원을 받아 데비안 GNU/리눅스를 기반으로 해 무료로 배포하고 있는 PC 운영체제입니다”

- 말씀 중에 배포본 중 하나라고 말씀하셨는데요, 리눅스 커널과 리눅스 배포본의 종류는 몇 가지나 되나요?

“리눅스 커널은 하나입니다. 그것을 리눅스 토르발즈(Linus Benedict Torvalds)라고 하는 사람이 1991년부터 만들고 있습니다. 리눅스 커널은 지금도 완성된 것이 아니라 발전하고 있습니다. 이 커널을 이용해 만든 배포본은 슬랙웨어, 레드햇 리눅스, 레도라, 수세리눅스, 데비안, 젠투 등 종류가 많습니다. 지금 말씀드린 배포본들은 모두 리눅스 커널을 이용해 만든 것이며, 각각의 배포본들은 서로에게 영향을 주고받으면서 계속 발전하고 있습니다.”

- 우분투를 데비안 GNU/리눅스를 기반으로 했다고 말씀해 주셨는데요.

“그 말도 맞습니다. 데비안 GUN/리눅스는 공식 명칭에도 나와 있듯 리눅스 커널을 기본으로 해 데비안 프로젝트에 의해 관리 배포되고 있는 리눅스 계열의 운영체제 중 하나입니다. 우분투가 데비안 GNU/리눅스를 기반으로 한다는 것은 우분투가 데비안 GNU/리눅스의 철학이지만 패키지 관리 방식들을 기본 모델로 해 관리 및 배포하기 때문입니다.”

 -그렇군요. 그럼 우분투 이외의 다른 배포본을 사용해도 되겠네요.

[최성원 브레인넷 차장]

[최성원 브레인넷 차장]

“사용해도 됩니다. 하지만 각각의 배포본은 특징이나 목적하는 바가 조금씩 다릅니다. 대부분 리눅스 배포본들은 서버용으로 제작된 배포본들입니다. 반면 우분투는 개인 사용자들을 위한 데스크톱용으로 만들졌습니다.”
                                    
- 우분투 배포본도 여러 가지가 있다고 들었습니다.

“일단 기본적으로 대표적인 것이 그놈(GNOME) 환경에서 사용할 수 있는 우분투가 있고, KDE 환경에서 사용할 수 있는 쿠분투(Kubuntu), Xfce를 사용하는 주분투(Xubuntu), 어린이들을 위한 에듀분투(Edubuntu)가 있습니다. 얼마 전에 배포한 우분투에는 그 외 몇가지 배포판이 늘였다는 소식을 들었습니다.”

- 무척 다양한 배포판이 있군요. 처음 사용하는 이들은 조금 어려울 것 같습니다.

“그렇지 않습니다. 원래 XP도 여러 종류가 있습니다. 개인사용자를 위한 홈에디션, 기업사용자를 위한 프로패셔널 에디션, 멀티미디어에 특화된 미디어 센터 에디션, 휴디폰 타블랫 노트북에 특화된 타블랫 PC 에디션 등을 비롯해 많은 종류가 있고, 이런 것들 중엔 자신에게 맞는 것을 골라 사용하는 것입니다. 우분투도 똑 같습니다. 자신에게 맞는 것을 선택해 사용하면 되는 것입니다.”                         

- 무료라는데 관심을 갖는 사용자들이 많습니다.

“우분투는 무료입니다. 우분투 공식 홈페이지(ubuntu.com)에서 다운받으면 됩니다. 우분투 본사에 요청해 CD로 받을 수도 있죠. 친구에게 얻어도 불법은 아닙니다.”



[한국우분투사용자모임(ubuntu.or.kr)]

[한국우분투사용자모임(ubuntu.or.kr)]

- 윈도 XP 혹은 비스타에서 사용하는 애플리케이션(응용프로그램)을 사용하지 못하는 것은 단점으로 보입니다.

“윈도용 프로그램을 사용하지 못하는 것은 낮선 사용자에겐 단점입니다. 그러나 리눅스에는 대체용 프로그램들이 다양하게 존재합니다. 사용자들이 많이 사용하는 한글 및 MS오피스와 같은 기능을 하는 오픈오피스, 또 그림을 그리는 포토샵과 같은 기능을 하는 ‘김프(Gimp)’ 를 비롯해 많은 애플리케이션들이 있습니다. 화면구성(인터페이스)도 윈도우와는 다릅니다. 차이가 있고 차이를 이해할 만한 가치가 우분투에겐 있습니다.”

- 말씀하신 불편을 사용자들이 감당하면서 우분투를 써야 할까요.

“운영체제를 쓰는데 돈이 들지 않습니다. 무료란 말이죠. 기업의 이익이나 목적이 끼어들지 않습니다. 무료여서 불법이란 개념이 끼어들 자린 없습니다. 또 우분투는 ‘정직합니다.’ 제품이 문제가 있으면 이를 바로 공개해 리눅스는 많은 소프트웨어 개발자들이 자발적으로 참여해 운영체제 및 애플리케이션을 개발합니다. 만약 문제가 발생하면 우분투 개발자들이 빠르게 대응방안을 마련한 후 문제를 고칩니다.”

- 윈도와 비교해 설명해주시면 이해가 빠를 것 같습니다.

“국내서 윈도 PC운영체제는 독과점이라 할 수 있지요. 대부분의 개발자들은 윈도에 맞춰 개발을 강요받고 있습니다. 우분투의 이용이 활성화되면 독과점을 견제할 수 있습니다.”

- 개방성에 대한 자세히 말씀해 주십시오.

“우분투는 사용자의 참여로 꾸준히 발전하는 운영체제입니다. 어느 한 기업이나 개인의 사정으로 만들어지지 않고 사용자들의 참여로 만들어지고 발전해 가는 운영체제가 우분투입이다. 이를 통해 기업의 이익이나 논리에서 자유로울 수 있습니다. 스스로 참여하는 많은 개발자들이 소스코드를 보면서 좀 더 나은 것으로 만들고 있습니다.”

-자본주의 사회는 돈으로 움직이는 유기체라고 할 수 있습니다. 기업은 돈을 벌어야 하고 기업이 번 돈을 개인들(조직원)이 나눠 갖는 체제인데요. 이런 측면에서 공짜란 개념은 자본주의 이념과 어울리지 않는 것으로 볼 수 있습니다.

“모든 것이 무료로 돌아가는 것은 곤란하겠지요. 그러나 자본주의 사회라고 해도 돈의 논리에서 해방된 몇 가지 자유(탈출구)는 필요할 것으로 생각합니다. 우분투를 그런 측면에서 이해했으면 좋겠습니다. 또한 기술의 경우 기업에 의해 일종의 표준이 정해지면, 독과점으로 흐르는 경우가 있습니다. 운영체제 분야에서 이런 독과점 현상을 우분투가 적절히 견제할 수 있을 것으로 기대합니다.”     <계속>

Posted by Huns [Jaehun]
◀ PREV : [1] : [2] : [3] : [4] : [5] : ... [6] : NEXT ▶

카테고리

분류 전체보기 (115)
[1] IT 관련 (84)
OS (0)
[2] 취미 관련 (16)
[3] 기타 (15)
지식 (0)

최근에 받은 트랙백

달력

«   2010/07   »
        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 31