DIY-NAS-헤놀로지 vs XPEnology

DIY(Do It Yourself)의 길은 쉽지 않습니다. 처음부터 끝까지 직접 선택하고 만들고 서비스운영까지 오롯이 내가 주인이고 고객의 입장으로 또 어느순간에는 AS기사가 되어야 하는 일입니다.  모든 책임은 본인에게 있습니다.

여러 DIY분야중에서 NAS(Network Attach Storage) 시스템 구축을 선택했습니다.  용어정리부터 NAS의 개념, HW를 구성하고 SW를 설치하는 과정을 진행합니다. 우선 첫번째로 NAS 커뮤니티에서 논란이 되고 있는 하나의 용어부터 시작하겠습니다.

해놀로지(헤놀로지)

Synolgoy와 Qnap으로 대표되는 상용 NAS를 구매하지 않고 개인이 직접 DIY방식으로 NAS을 만드는 경우 NAS 서비스를 제공하는 프로그램이 필요합니다. 물론 리눅스나 MS Windows의 OS기능으로도 NAS의 다양한 파일공유, 웹하드서비스, 스트리밍 서비스, 사용자 관리를 할 수 있지만 NAS전용 어플리케이션이 제공하는 편리한 관리와 기능을 직접 설치하고 설정하는 것은 번거럽고 피곤한 일입니다.

오픈소스 방식으로 인터넷에 공개되어 있는 가장 대표적인 NAS 프로그램으로 XPEnology가 있습니다. 우리나라에서는 원발음과 달리 해놀로지라고 읽습니다. 시놀로지를 해킹했다는 의미로 해놀로지라고 부르는데 원발음은 엑스피이놀로지로 읽어야 합니다. 본인 또한 해놀로지 보다는 원발음을 따르겠습니다.

프로그램하나를 사용하는데 발음이 어떻고 지금 알아보려는 라이센스가 어떤지를 살펴보는것이 무슨 의미가 있느냐고 반문할수 있습니다. 하지만 특정 사이트에서 누군가가 약간은 조롱하는 방식으로 시놀로지의 NAS 프로그램을 해킹했다는 의미로 해놀로지라고 부르면서 사용자들은 엑스피이놀로지가 불법으로 음성적으로 해킹한 프로그램이 아닌가 의구심과 불안감을 항상 가져왔습니다. 그리고 지금도 엑스피놀로지가 불법이다 합법이다 논쟁은 치열하게 벌어집니다.

엑스피이놀로지는 불법이다 합법이다라는 양끝단의 사이에 어디쯤에 있는 것이 현실적인 위치입니다. 분명히 Synology는 부트로더와 DSM(NAS전용 Application을 포함한 OS)을 오픈소스 프로젝트로 공개하고 있습니다.  당연히 부트로더와 DSM을 구성하는 수많은 오픈소스의 라이센스는 아래와 같이 명기하고 있습니다. GNU(소스를 반드시 공개해야한다)와 MIT 라이센스(마음대로 가져다 쓰셔도 됩니다)가 눈에 띄는군요. 하지만 안내에도 나오듯이 각각의 프로젝트는 별도의 라이센스와 COPY권한이 명시되어 있습니다.

Synology Open Source Project download | SourceForge.net 2015-09-04 17-28-40

 

엄밀하게 보자면 위의 오픈소스를 내려받아 자신의 PC에 구축하여 개인적인 용도로 사용하는 것은 문제가 없어 보입니다. 하지만 XPEnology는 오픈소스로 공개한 부트로더와 DSM을 좀더 확장하여 마치 정식으로 상용NAS를 구매한 사용자처럼 서비스를 이용할 수 있도록 사용자 편의성을 좀더 강화하였습니다.  즉 부트로더를 이용해 DSM을 구동할 수있는 환경을 만든 후에 오픈소스로 공개한 DSM이 아니라 정식 사용자처럼 시놀로지의 DSM 패키지를 온라인에서 다운로드 하여 사용할 수 있도록 구성하여 배포합니다.

Synology 측에서 이러한 XPEnology를 제재하지 않는 이유는 무엇일까요? 무엇보다도 사용자층의 규모가 아닐까 생각합니다. 기존 정품사용자들에 비해 미미한 사용자층이기 때문에 엄격한 잣대를 들이대고 단속하지 않는 것이지요. 오히려 방관하고 있다는 느낌이 강합니다.  XPEnology를 직접 다운로드하고 구성하는 정도의 수준을 보유한 사용자들을 오히려 방관하고 있다는 느낌이 강합니다.

정리하자면 지금 배포되고 있는 XPEnology의 사용 방식은 합법적인 오픈소스 위에 비공식적으로 정식 사용자의 서비스를 이용할 수 있는 불법적인 요소 또한 분명히 담고 있습니다. 제가 드리고 싶은 말은 XPEnology의 개발커뮤니티가 공지하고 있는 문장에 담겨 있습니다.

“위험도가 높은 솔루션입니다.  재정적인 여유가 된다면 꼭 정식 NAS 제품을 구매해주십시요”

위험도가 높다는 의미는 오픈소스의 원천적인 특성이라고 할수 있습니다. 보안적인 부분도 그렇고 이를 운용할 수 있는 기본적인 수준이 담보되어야 운영이 가능합니다.  떳떳하게 XPEnology를 사용하는 것은 합법이다라고 주장하기는 어렵지만 무조건 사용은 불가하다라고 부정적으로 보기에도 무리가 있습니다.  결국 DIY란 일종의 탐험가적인 기질을 가진 이들의 make 정식과도 맞닿아 있습니다. 불법과 합법을 넘나드는 아슬아슬한 줄타기가 내재되어 있습니다.

오픈소스와 라이센스의 이해가 없는 상태에서 단순히 상용 프로그램을 해킹한것으로 단정짓고 이야기하는 것은 옳지 못합니다. 엑스피이놀로지가 어떻게 만들어졌고 어떤 라이센스가 허용되는지을 이해하고 많이 없어보이는 해놀로지보다는 엑시피이놀로지라는 용어가 좀더 널리 DIY Maker들에게 퍼졌으면 합니다.

시놀로지(Synology) Company

시놀로지(Synology)는 대만회사입니다. 두명의 창립자는 모두 MS출신입니다. 개인용인 desktop으로 출시하는 Diskstation 모델이 가장 유명하며 기업의 주력고객은 개인과 소규모 비즈니스 영역입니다.

엑스피이놀로지의 시작

엑스피이놀로지의 시작은 DSM(Synology DiskStation Manager)에서 출발하였습니다. 이 제품은 시놀로지의 가장 주력 솔루션입니다. Linux를 기반으로 커스터마이징했으며 (여기에 GNU Lincense와 기타 많은 라이센스가 혼용되어 있습니다.) 자사의 Hardware 제품을 구동하기 위한 OS로 사용합니다. Synonoloy DSM은 NAS의 기능을 가지고 있는 OS입니다. 파일공유, 중앙백업, RAID기반 스토리지, 멀티미디어 스트리밍, 가상스토리지기의 기본 기능을 제공합니다. 또한 iOS, Android, Windows, Kindle Fire등의 모바일 어플리케이션을 제공합니다. 이러한 DMS와 Application은 매년 정기적으로 업데이트를 무료로 제공합니다. 자신이 구입한 시놀로지의 Hardeware 모델이 DSM을 지원하는한 이러한 업데이트는 무료로 지속적으로 이용할 수 있습니다.

DSM은 시놀로지에서 독자적으로 만든 고유한 솔루션이 아니라 GNU GPL 기반의 라이센스를 준수해야 하는 리눅스 커스터마이징의 결과물입니다. 따라서 당연히 소스를 공개해야 합니다.

http://sourceforge.net/projects/dsgpl/files 사이트에서 개발자들은 누구나 접근이 가능합니다. GNU GPL은 상업적인 비공개를 못하도록 가장 강력한 제약조건을 가진 카피레프트조항을 가지고 있습니다. 즉 어떠한 목적이나 형태로 사용이 가능하지만 변경한 프로그램을 배포하는 경우 반드시 동일한 GPL로 무조건 소스를 공개해야 합니다. 따라서 누구나 Synology가 공개한 소스를 이용할 수 있습니다. 하지만 GPL라이센스를 또한 준수해야 합니다. (소스공개의 의무)

엑스피이놀로지는 시놀로지가 오픈한 소스를 참고하여 수정배포한 오픈 소스 프로젝트입니다. 개발자들이 이렇게 변형을 한 이유는 시놀로지가 자사의 HW에 특화된 DSM과 달리 사용자들이 직접 만드는 DIY 방식의 NAS 하드웨어(즉 범용PC)에서 운영할 수 있도록 하기 위함입니다. DSM은 리눅스기반의 GPL라이센스하에 만들어진 상용제품이며 엑스피놀로지 또한 소스코드를 공개해야 하는 GPL라이센스를 준수해야 하는 오픈소스입니다. 이것을 시놀로지의 상용프로그램을 해킹했다는 표현은 오픈소스와 라이센스에 대해 이해하지 못하는 굉장히 잘못된 표현입니다. 다시 말하지만 엑스피이 놀로지는 시놀로지 DSM소스를 불법적으로 이용한 것이 아니라 오픈된 소스를 가지고 PC(x86/x64)환경에서 작동하도록 수정/컴파일을 통해 부트로더를 만든 것입니다.

단 여기서 오픈소스 라이센스로 자유롭게 이용이 가능한 영역은 부트로더까지입니다. 커뮤니티는 단순한 부트로더를 넘어 DSM자체를 마치 정식사용자처럼 download할수있도록 좀더 커스터마이징을 추가합니다. 불법적인 요소를 내포하고 것입니다. 따라서 엑스피티놀로지를 PC에서 사용하기 위해서는 아래와 같은 사항은 불법이므로 주의해야 합니다.
– 시놀로지 NAS인 것처럼 유효한 NAS ID를 복제하는 경우
– 시놀로지 기기의 mac addresss를 복제해서 정품처럼 사용하는 경우
– 시놀로지 정품처럼 변경하여 DSM의 시놀로지 서비스를 제공받는 경우
– 개인용도가 아닌 비즈니스 목적으로 사용하는 경우
– DSM을 특정 기기에 포팅해서 상업적으로 판매하는 경우

일반적으로 개인용도로 사용하는 경우는 비공식적으로 암묵적 사용이 허가되고 있습니다. (사실 DSM를 다운로드받는 것은 시놀로지가 의지만 있으면 얼마든지 차단이 가능한 영역입니다.)  하지만 엑스피이놀로지를 사용하면서 발생하는 보안/운영 상의 문제는 사용자 개개인이 감내해야 합니다. 당연히 엑스피이놀로지 개발자들도 시놀로지의 정품 사용을 권장합니다. 소스코드가 모두 오픈되어 있기 때문에 해킹이나 그밖의 불법적인 침해나 공격의 위험성이 존재하기 때문입니다.

XPEnology의 특징

XPEnology는 Synology DiskStation의 관리자프로그램인 DSM을 실행랄수 있도록 만들어주는 OS를 담고 있는 부팅이미지입니다. XPEnology의 장점은 다양한 HW위에(옛날 구닥다리 구형PC라 할지라도) NAS환경을 구축할수 있도록 OS를 구동하고 NAS를 이용할수 있는 소프트웨어를 제공합니다. 또한 가상머신의 이미지형태로 Hyper-V, 버추얼박스, VMware 환경에서 운영이 가능합니다.

XPEnology는 두개의 파트로 구성합니다.
* Boot image
* DSM software

Boot image는 당연히 가장 중요한 구성요소입니다. NAS시스템을 구동하고 DSM버전을 체크하며 NAS가 구동하기 위한 다양한 HW/VIrtual machine의 드라이버를 가지고있습니다. 현재 가장 대표적인 Boot image는 XPEnoboot 입니다. Boot image는 Sysnology Diskstation DS3615xs(64bit)를 기반으로 하며 커뮤니티 멤버들에 의해 계속 수정/개발 되고 있습니다. 버젼업에 따라 새로운 DSM version과 여기에 포함되는 새로운 기능이 추가 되며 새로운 드라이버 역시 계속 추가 됩니다. DSM software은 NAS OS위에서 사용자가 NAS 서비스를 운영할수 있는 어플리케이션을 모아둔 소프트웨어입니다.

XPEnology의 발음

XPEnology의 발음은 아래의 동영상에서 다시한번 확인할 수 있습니다. Installation of XPEnology on Hardware(x64/x86)

이처럼 기본 튜토리얼 비디오를 한번이라고 봤다면 해놀로지와 같은 표현은 콩글리쉬임을 알수 있습니다. 이와 같이 나는 헤놀로지보다는 원발음을 준수하여 make 정신에 투철한 DIY NAS 제작자분들이라면 엑스피이놀로지라고 읽는 것을 바라고 있습니다.

오픈소스 SW의 주요 라이센스

참고로 오픈소스진영에서 중요한 라이센스의 개념을 간단히 정리하였습니다.

  • Apache license
    아파치재단에서 자기들의 SW에 적용하기 위해서 만든 라이센스. 소스코드 공개의무는 없음. 코드수정시에는 반드시 아파치라이선스2.0을 포함하며
    아파치재단에서 만든 소프트웨어임을 명시해야 함
    (안드로이드. 하둡)
  • GNU GPL
    가장 강력한 제약조건을 가진 카피레프트조항. 어떠한 목적 형태로 사용이 가능하지만 사용하거나 변경된 프로그램을 배포하는 경우 반드시 GPL로 무조건 공개(copyleft)해야 한다.
    모질라파이어폭스, 리눅스커널,마리아DB,워드프레스
  • GNU Affero GPL
    수정한 소스코드를 서버에서 실행해 다른 사용자들과 통신하면, 실행되고 있는 프로그램의 소스를 사용자가 다운로드해야 한다는 독특한 조항.
    몽고DB
  • GNU Lesser GPL
    카피레프트 조항을 보완. GPL은 개발뿐만 아니라 사용만 하더라도 해당 소스코드를 GPL로 공개해야 함. 따라서 상용 소프트웨어로 사용하기에는 불가능. 단순한 라이브러리, 모듈 링크는 허용하는 라이선스
    모질라파이어폭스
  • MIT License
    MIT가 SW공학도들을 돕기 위해 개발한 라이선스. 라이선스와 저작권 관련 명시만 지켜주면 되며 가장 느슨한 조건을 가진 라이센스. 상용업체에서도 오픈소스를 붙일때 가장 편리한 라이선스.
    부트스트랩, 각종 JS라이브러리
  • Artistic License
    펄 프로그래밍 언어를 사용하기 위해 표준 펄 기능을 위해 만든 라이선스
    Node Package Manager
  • Eclipse license
    이클립스사에서 비즈니스 환경에 적합하도록 만든 기업 친화적 라이선스
    이클립스
  • Berkeley Software Distribution(BSD) License
    버클리의 캘리포니아대학에서 배포하는 공개 SW라이선스. 라이선스 자체에는 아무런 제한 없이 누구나 자신의 용도로 사용할 수 있다. 라이선스 및 저작권 표시 조건 외엔 제약이 없는 굉장히 자유로운 라이선스
    Nginx
  • Mozilla Public License(MPL)
    소스코드와 실행파일의 저작권을 분리. 수정한 소스코드는 MPL로 공개하고 원저작자에게 알려줘야 하지만 실행파일은 독접 라이선스로 배포가능. 사용한 MPL 소프트웨어와 수정한 MPL 소프트웨어에 대한 공개 의무만 가진다.
    모질라 썬더버드
Print Friendly, PDF & Email
DIY-NAS-헤놀로지 vs XPEnology
Tagged on:             

3 thoughts on “DIY-NAS-헤놀로지 vs XPEnology

댓글 남기기

%d 블로거가 이것을 좋아합니다: