오픈 소스 라이선스 가이드
오픈 소스 라이선스
오픈 소스 소프트웨어가 어떻게 사용될 수 있는지 명시해주는 문서
개발자는 오픈 소스 라이선스를 통해 소프트웨어의 소스 코드를 사용, 수정 배포 할 수 있도록 허용하면서 제한 조건을 걸 수 있음
오픈 소스 라이선스는 소프트웨어 저작권을 법적으로 보호해줄 뿐만 아니라 소프트웨어 사용자의 법적 위험도 낮춰주는 효과
- 라이선스 유형
Permissive (관대한) 라이선스
> 사용자가 소스를 자유롭게 사용, 변경, 배포 가능
> 보통 저작권 고지만 유지하면 됨
> ex) MIT, Apache, BSD, ISC
Copyleft 라이선스
> 소스를 변경한 후 배포할 경우 동일한 라이선스를 유지해야함
> 오픈 소스 생태계를 보호하는 역할
> GPL, LGPL
MIT 라이선스
메사추세츠 공과대학에서 학생들을 위해 개발한 라이선스
가장 간단하고 관대한 오픈 소스 라이선스로 특별한 제한 없이 소스 코드를 공유하는 경우 사용
- 상세
자유롭게 사용 / 수정 / 배포 가능
상업적으로 활용 가능
변경 후 소스 코드를 비공개로 유지 가능
저작권 고지를 유지해야 함
Apache 2.0 라이선스
아파치 소프트웨어 재단에서 자체 소프트웨어에 적용하기 위해 만든 라이선스
MIT 라이선스와 유사하지만 특허 보호 조항이 포함되어 있어 특허 보호가 중요한 기업 프로젝트에서 선호
- 상세
자유롭게 사용 / 수정 / 배포 가능
상업적으로 활용 가능
변경한 내용이 있을 경우 명시해야함
특허 보호 기능 포함
GPL 라이선스 (v2, v3)
copyleft의 성격을 가진 라이선스로 변경 후에 반드시 오픈 소스로 공개해야함
폐쇄형 소프트웨어와 결합이 불가하고 순수한 오픈 소스 프로젝트에 적합
많은 사용자를 확보하기 보다는 오픈 소스 프로젝트 보호가 중요한 경우에 적합
- 상세
자유롭게 사용 / 수정 가능
상업적 사용 가능
변경 후에도 동일한 GPL 라이선스로 배포해야 함
GPL 소프트웨어를 사용하면 프로젝트 전체를 공개해야 함
오픈 라이선스 적용 방법
코드 저장소의 LICENSE 혹은 COPYING 파일에 명시하는 것이 일반적
라이선스가 명시된 파일은 반드시 프로젝트 최상위 경로에 위치
라이브러리나 프레임워크의 경우 메타데이터에 라이선스 정보를 포함 (ex) packege.json
Reference
https://www.daleseo.com/open-source-licenses/
오픈 소스 라이선스 가이드
Engineering Blog by Dale Seo
www.daleseo.com