NAS 또는 Home Server 구축기, 둘

얼렁뚱땅설명서 2010. 3. 22. 10:52


1. Intel D510MO에 OS 설치하기

Home Server를 만들면서 가장 많이 힘들었던 부분이 OS 설치였다. 조립이야 어찌어찌 되었건 불량 난 부품은 바꾸면 되고, 뚫린 구멍은 막으면 될 뿐이지만, 내가 가지고 있는 CD로는 OS가 설치되지 않았다. 맨 처음은 Windows 2003 Server, 설치도중 블루스크린이 떠버리고 말았다, Windows XP sp1 버전도 마찬가지였다. 하는 수 없이 우분투 9.10을 받아서 설치했는데 이 녀석은 설치 도중에 화면이 캄캄해 지더니 아무 짓도 할 수 없었다. 페도라4에서는 설치 시도조차 불가능 했으며, 옆자리 동료가 준 Windows XP sp3 버전만 무사히 설치 되었다. 그래도 서버(?)로 쓸 건데란 생각에 Windows 2003 Server SP2를 받아 설치를 무사히 끝냈다. 그리고, 정품 등록하라는 메시지에 견디다 못해 Windows 2003 영문판을 다운받아 설치했다. 살짝 문제가 있기는 하지만, 영문판 윈도우도 쓸만하다. 영문 윈도우에서 한글을 사용하려면, 제어판에서 Regional and Language Option에서 설정해 주면 된다.

OS에 대한 부분은 고민이 많았다. Unix계열을 만질 줄 모르는 것도 아니고, 내가 원하는 기능들 중 사용할 수 없는 부분이 있는 것도 아니기 때문에 피해야 될 이유가 없었다. 그러나, 맨 처음 Windows 2003 Server, 설치 시 블루스크린으로 인해 실패를 보았을 때, 머리에 떠오는 것은 그 무수한 권한 설정과 프로그램을 설치하기 위해 해야 하는 사전 설정에 머리가 아찔한 기분이 들어 끝까지 윈도우로 고집했다.

또 다른 이유를 생각해 보자면, 윈도우 계열의 구조상 어쩔 수 없는 오버헤드가 있다고 해도, 그것이 얼마나 클까라는 안일함과 접속만 되고, 안정적으로 구동만 된다면 어느 정도 성능 하락이 있다고 해도 눈감아 주겠다는 생각이 있었다. 메모리도 디스크 공간도 충분한데 굳이 사용하는 리소스를 더 줄일 이유가 없다. 리소스만 빵빵하면 윈도우도 충분히 고성능 아닐까? 나의 짧은 생각으로는 윈도우도 1Gbyte의 이더넷 성능을 상회하고도 남을 것이라 생각했다.

이 녀석의 문제는 최신 OS(?)가 아면 설치가 쉽지 않다는 것이 문제다.



2. FTP Server 설치

Windwos 2003 Server 버전에는 FTP Server가 포함되어 있다. 그렇지만, 영문판을 설치해서인지 FTP에 접속해도 한글로 된 디렉토리에는 접근이 불가능 했으며, 무식한 것이 원인 이겠지만 설정 자체도 까다롭고 잘되지 않아서 FileZilla FTP Server로 대치했다. FileZilla FTP Server는 설정도 쉽고, 직관적인 인터페이스라 따로 설명 파일이 필요하지 않았다. 단, Passive mode settings 에서 Retrive external IP address from을 선택해 주어야 별다른 오류 메시지 없이 FTP기능을 잘 수행한다. 이유는 Unix에서 FTP로 접속 시 알 수 없는 주소를 보낸다고 서비스가 중단되는 일이 있었기 때문이다. 원인은 서버를 DMZ에 놓고 사용했기 때문에 FTP Client에 내부 IP 주소를 송출해 준 것으로 보인다. 

아래는 몇몇 환경에서 전송속도를 테스트한 결과다. HomeServer의 회선은 아파트 단지에 들어간 SK 브로드밴드이며, IDC Center는 회사에서 운용중인 Unix 서버에서 테스트한 결과이다. 테스트 방법은 80MB 파일을 주고 받으면서 테스트 했다.
내부에서는 ipTime N6004로 1G 유선으로 테스트 했다.

 구분  업로드 속도  다운로드 속도
 KT 초고속 인터넷 450Kbyte  2.2Mbyte 
하나로 IDC Center 9Mbyte  10Mbyte 
내부-점보프레임 활성  30~45Mbyte 동일 
내부-점보프레임 비 활성화 20~30Mbyte 동일 
본인이 기억하고 있는 대략적이 수치다.


3. Oracle 10g 설치

오랜 시간 동안 DB를 사용해 왔지만, 지금까지 사용한 DB는 Oracle 뿐이다. MS-SQL도 잠깐 사용해 봤지만 정말 잠깐이라 할 말이 없다. 개인용 DB의 대세는 MySQL인 것으로 알지만 역시나 사용해 본적이 없다. 참 미천한 DB 경험이지만, 개인용 서버에도 Oracle을 설치한 이유는 익숙한 것이 이것이라 설치 했을 뿐이다. 최신 버전인 11g를 설치하지 않고, 10g를 설치한 것은 단지, 설치파일이 작아서 일 뿐이다.

Oracle은 개발용일 경우에는 무료로 사용할 수 있는 것으로 안다. 물론 상용버전과 아무런 차이도 없으며, www.oracle.com에서 여러 가지 버전의 Oracle및 어플리케이션을 다운 받을 수 있다.


4. Apache 2.2 & Tomcat 설치

Apache 재단을 생각하면 정말 엄청나다는 생각을 한다. Apache 서버를 시작으로 지금은 가장 커다란 오픈 소스의 성지로 자리잡고 있다. 아마 Windows 계열을 포함하여 온 세상의 웹 어플리케이션 중에서 Apache의 오픈 소스의 도움을 받지 않는 곳을 없으리라 생각된다.

하여간, 나는 아파치 웹 서버를 사용한 적도 없고, 앞으로도 사용할 일이 별로 없다고 생각한다. 그러나, 아파치 웹 서버를 설치한 이유는 통합 어플리케이션으로써의 가능성 때문이다. 그러니까 PHP를 사용하는 제로보드와 같은 것을 사용하면서 JSP를 사용하기가 용이하기 때문에 설치했다.


5. Visual SVN 설치

SVN은 버전관리 툴로써 유명하다. CVS의 단점을 계량해서 만들어 졌으며, 작업한 파일들의 이력을 생성해 주는 툴로, 혼자 사용하기에도 좋으며, 팀 작업에서는 빛나는 성능을 발휘하는 툴이다. 나에겐 NAS에서 PC 서버로 전환하게 된 것은 이 녀석을 사용하기 위한 목적이 가장 크다.

[Visual SVN 설치 방법]

[SVN Client 설치 방법]


6. Windows 방화벽 설정

FTP 서버, 또는 아파치 서버, Oracle등의 프로그램은 포트를 여는 것 만으로 외부에서 접속할 수 없다. 나도 처음엔 이 부분을 몰라 방화벽을 해제하고 사용하는 등의 짓을 했지만 간단히 프로그램을 추가함으로써 해결할 수 있었다. 방법은 간단하다.

먼저, 시작>제어판>Windows 방화벽을 선택한 후 탭에서 예외를 선택한다. 예외 탭에서 프로그램 추가를 눌러 프로그램을 추가 시켜주면 된다. 아파치 서버의 경우 %APACHE_HOME%\Apache2.2\bin\httpd.exe을 선택하면 되고, 파일질라 서버의 경우 C:\Program Files\FileZilla Server\FileZilla server.exe를 선택하면 된다. 오라클과 같이 리스너가 따로 있는 경우에는 %ORACLE_HOME%\product\10.2.0\db_1\BIN\oracle.exe와 %ORACLE_HOME%\product\10.2.0\db_1\BIN\TNSLSNR.EXE를 각각 등록해 준다.




7. 공유기 설정

Windows 방화벽을 설정하고 나며, 내부에서는 PC서버로의 접속에 무리가 없을 것이다. 그러나 아직 외부에서는 접속이 되지 않는다. 외부에서 PC서버에 접속하기 위해서는 포트 맵핑이나 DMZ에 서버를 위치 시켜야 하는데, 나의 경우에는 포트 맵핑하는 것이 귀찮아 DMZ에 서버를 위치 시켰다. 나의 경우 ipTime 제품을 사용하기 때문에 iptime.co.kr의 FAQ에서 해당 내용을 링크한다.



- 아래 참조 TwinIP & DMZ & 포트포워드-
http://iptime.co.kr/zeroboard/iptime_bbs/view.php?id=faq_setup&page=1&sn1=&divpage=1&sn=off&ss=on&sc=on&keyword=DMZ&select_arrange=headnum&desc=asc&no=155

http://iptime.co.kr/zeroboard/iptime_bbs/view.php?id=faq_setup&page=1&sn1=&divpage=1&sn=off&ss=on&sc=on&keyword=DMZ&select_arrange=headnum&desc=asc&no=140

http://iptime.co.kr/zeroboard/iptime_bbs/zboard.php?sn=off&ss=on&sc=on&id=faq_setup&keyword=%C6%F7%C6%AE%C6%F7%BF%F6%B5%E5&formbutton1=+%B0%CB%BB%F6+

내가 사용하는 공유기의 기능 중에 제일 좋아하는 기능은 VPN 기능이다. 회사에서 집에 내부 네트워크에 접속할 수 있는 기능으로 원격으로 집에 컴퓨터를 켜서 자원을 공유한다거나 있는 프린터를 사용할 때 사용한다. 실제로 이런 용도로는 사용하지 않지만, 외부에서 공유기를 직접적으로 접속하지 못하도록 되어 있으므로 VPN을 통해 접속한 후 공유기에 접속하곤 한다.

- 아래 참조 -
http://iptime.co.kr/zeroboard/iptime_bbs/view.php?id=faq_setup&page=1&sn1=&divpage=1&sn=off&ss=on&sc=on&keyword=VPN&select_arrange=headnum&desc=asc&no=212

대부분의 공유기에는 WOL기능이 있으며, 보통의 메인보드들은 대부분 이 기능을 지원한다. 이 기능을 사용하는 목적은 NAS(Or PC서버)을 필요할 때만 사용하거나, 정전 등의 이유로 NAS(Or PC서버)가 꺼져 있을 경우 원격으로 부팅하기 위해 사용한다. 나 또한 항상 켜 놓기 위해 저전력서버를 구축했으나, 불의의 사태에 대비하기 위해 이 기능을 활성화 해 놓은 상태이다.

- 아래 참조 -
http://iptime.co.kr/zeroboard/iptime_bbs/view.php?id=faq_setup&page=1&sn1=&divpage=1&sn=off&ss=on&sc=on&keyword=DDNS&select_arrange=headnum&desc=asc&no=150


DDNS 기능은 말이 필요 없을 것이라 생각한다. 대부분의 공유기가 이 기능을 지원하며, www.dyndns.org에서도 이 기능을 지원해 준다. 이 기능은 유동IP를 사용하는 공유기가 DNS이름을 부여 받아 마치 고정 IP를 사용하듯 사용할 수 있도록 해주는 기능이다.

- 아래 참조 -
http://iptime.co.kr/zeroboard/iptime_bbs/view.php?id=faq_setup&page=1&sn1=&divpage=1&sn=off&ss=on&sc=on&keyword=DDNS&select_arrange=headnum&desc=asc&no=164


다음 구상은.... 

이만큼 작업을 하고 나니 조금 다른 욕심이 생긴다. 그러니까, 웹으로 파일을 업다운 할 수 있는 기능을 만들거나, 사진을 보거나 다운로드 할 수 있는 기능, 음악을 들을 수 있는 기능 들을 추가하고 싶다는 생각이 든다. 또는 스케줄러를 추가하여 자동 백업을 하는 기능들을 말이다. 뭐 시간이 좀 허락한다면 직접 만들 수 있지 않을까 싶다. ^^;