[ET단상]오픈소스 소프트웨어(OSS)의 오해와 진실

[ET단상]오픈소스 소프트웨어(OSS)의 오해와 진실

구글·페이스북·카카오톡 공통점은 무엇일까. 인터넷 기반 무료 서비스로 혁신을 이루고 대박을 친 것 말고도 오픈소스 활용 기반으로 클라우드 서비스를 개발했고 본인들이 개발한 서비스 소스코드를 공개했다.

클라우드·가상화·빅데이터 물결이 휘몰아치면서 오픈소스 소프트웨어(OSS)와 서비스가 점점 대세로 떠올랐다. 이렇듯 오픈소스를 활용해 제품이나 서비스는 개발 기간을 단축할 수 있고 공개된 공동 프로젝트에 많은 개발자를 참여시킬 수 있다. 우리나라도 오픈소스를 활용해 개발하는 분위기가 주류를 이룬다. 최근 빅데이터나 SaaS 기반 프로젝트가 활발히 생겨난다.

오픈소스 활용과 프로젝트 증가로 관련 분쟁 또한 증가하는 추세다. 특히 오픈소스 라이선스 이해 부족으로 개발자들이 오픈소스 규정 준수 없이 마음대로 가져다 써도 되는 것으로 알고 있는 때가 많다.

OSS는 소스코드가 공개된 관계로 접근성이 용이하지만 사용과 활용 시 법적 책임도 뒤따른다. 특히 GPL은 매우 엄격히 공개 의무를 규정하고 있다. 개발자와 사용자들이 알고 있는 오픈소스 내용을 살펴보고 잘못 알고 있는 오해와 진실을 살펴본다.

첫째 오해는 ‘OSS는 무상으로 제공돼야 한다’는 것이다. OSS를 프리(Free) SW라고도 한다. 여기서 프리를 공짜 또는 무상으로 잘못 번역하는 예가 허다하다. 프리는 배포 자유를 의미한다. 무조건 공짜로 배포해야 한다는 뜻이 아니다. 가장 강력한 GPL도 배포 자유 내용을 명시한다. 상용 사용을 허락하지 않는다는 내용이 없으며 배포에 따른 비용을 받아도 된다고 명시돼 있다.

상용으로 사용해서는 안 된다는 것은 잘못 알려진 내용이다. 자유롭게 배포할 수 있는 권리를 따르게 하면 비용을 받는 데 이의를 제기할 수 없다.

둘째 오해는 ‘OSS를 기존 상용SW와 같이 사용할 때 기존 SW도 소스를 공개해야 한다’는 것이다. 이 부분은 어떤 오픈소스 라이선스를 따르는지에 따라 달라진다. 아파치·BSD·MPL 등은 소스코드 공개 의무사항이 없고 저작권과 해당 오픈소스 라이선스 규정을 배포 시 포함하면 된다.

GPL은 소스코드 공개 의무가 매우 강력하고 엄격하다. 기존 상용 프로그램에 GPL 오픈소스가 포함돼 있으면 기존 사용 프로그램도 GPL 규정을 따라야 하고 소스코드 공개 의무도 자동으로 부여된다. 하지만 이 부분도 무조건 공개해야 하는 것이 아니라 예외 사항이 있다. GPL 2조항에 따르면 ‘독립된 프로그램은 GPL 규정이 적용되지 않는다’고 규정했다. 기존 상용프로그램과 GPL OSS가 서로 결합해(combine) 하나의 프로그램을 만든 것이 아닌 단순집합(aggregation) 형태로 배포되면 기존 상용프로그램은 독점적 라이선스로 배포 가능하다.

GPL과 같이 사용된다는 이유만으로 무조건 공개해야 한다고 잘못 이해하게 되면 GPL을 따르는 리눅스 커널 위에 구동하는 모든 SW는 공개해야 한다는 잘못된 논리가 된다.

셋째 오해는 ‘오픈소스를 활용해 내부 목적으로 사용한 프로그램도 소스코드를 외부에 공개해야 한다’는 것이다. 오픈소스를 활용한 SW 소스코드 공개 의무는 배포 시점에서 발생한다. 예를 들어 인터넷 포털 서비스를 제공하는 회사가 자사가 개발한 서비스를 외부에 배포하지 않고 단지 웹을 통한 서비스만 제공하는 형태라면 소스코드를 공개할 의무가 없다.

넷째 진실은 ‘OSS는 배포자가 보증에 책임을 지지 않는다’는 것이다. 이 부분은 사실이다. 반드시 라이선스 전문에 무보증(No Warranty) 부분을 명기해야 한다. 보증 책임 문제 해결책으로 OSS 비즈니스 모델을 들 수 있다. 레드햇은 리눅스 커널을 포함한 자사에서 취급하는 OSS는 연간 서브스크립션에서 보증에 책임을 지원하고 있다.

GPL의 1조항에도 배포자가 비용을 받고 보증 책임을 제공할 수 있다고 명시돼 있다. 보증을 책임져 주겠다는 배포자에게 서브스크립션을 구매하지 않은 상태에서는 그 어떠한 이슈나 버그가 발생하더라도 저작권자나 배포자에게 보증 책임을 요구할 수 없다는 것이다.

오픈소스 사용 활성화와 권장으로 사용이 늘어나는 가운데 자칫 잘못된 오픈소스 이해와 사용으로 혼돈을 주는 일이 종종 발생하고 있다. 오픈소스를 정확해 이해야 오픈소스가 획기적인 비용절감과 개발 기간 단축의 방안이 될 수 있음을 주지해야 한다.

송원길 맨텍 사장 wksong@mantech.co.kr