ClickCease 재부팅 없이 Linux Kernel 업데이트하기 [라이브 패치 도구 개요] - TuxCare

인기 뉴스레터 구독하기

4,500명 이상의 Linux 및 오픈소스 전문가와 함께하세요!

한 달에 두 번. 스팸이 없습니다.

재부팅 없이 Linux Kernel 업데이트하기 [라이브 패치 도구 개요]

2020년 6월 25일 TuxCare 홍보팀

재부팅 없이 Linux Kernel 업데이트하기 - 라이브 패치 도구 개요

Linux Kernel 업데이트는 세금처럼 지루하고 죽음보다 약간 덜 불편한 일상적인 일입니다. Linux Kernel의 새로운 보안 취약점은 지루할 정도로 규칙적으로 나타나고 심지어 멋진 이름까지 붙습니다. 모든 경우는 아니지만 대부분의 경우, 이를 수정하는 데 필요한 패치가 곧바로 뒤따릅니다. 최신 Linux Kernel 보안 업데이트를 Kernel에 패치하는 데는 많은 작업이 수반되며, 너무 오래 지체하면 악의적인 공격자가 취약한 기간을 이용할 수 있습니다.

이전 블로그 게시물에서 3가지 방법으로 Linux Kernel을 업데이트하는 방법에 대해 설명했는데, 이 중 두 가지 방법(명령줄/yum 및 kexec 사용)은 서버를 재부팅해야 합니다.

이제 Linux Kernel 보안 업데이트의 또 다른 방법인 재부팅 없는 라이브 Kernel 패치를 검토할 때입니다. 각 라이브 패치 도구와 대안에 대해 자세히 알아보려면 자세히 읽어보세요.

 


재부팅하지 않고 Linux Kernel 업데이트 적용하기

보안 패치가 매우 중요하지만 재부팅 시 프로세스가 중단되는 경우도 있습니다. '상시 가동' 또는 '고가용성' 시스템을 운영 중이라면 이러한 딜레마에 대해 이미 잘 알고 계실 것입니다.

재부팅 없는 Linux Kernel 업데이트는 보안 취약점이나 중요한 버그 수정에 대한 패치만 적용하므로 전체 Kernel 업그레이드를 대체할 수 없습니다. 하지만 대부분의 경우 이 방법만으로도 충분하며, 이 방법을 사용하면 재부팅 사이에 서버를 수년 동안 안전하게 실행할 수 있습니다.

여러 주요 Linux 공급업체에서 재부팅 없이 Kernel 업데이트를 제공합니다. 어떤 제품을 선택할지는 실행 중인 배포판과 예산에 따라 달라집니다. 이 글의 나머지 부분에서는 다음 제품에 대해 설명합니다:

 

  • Ksplice by Oracle (Oracle Linux 업데이트용, 엔터프라이즈용 Ksplice Uptrack)
  • Red Hat의Kpatch (RHEL Kernel 업데이트 및 CentOS 업데이트용)
  • Canonical의라이브 패치 (Ubuntu Kernel 업데이트용)
  • SUSE용Kgraft (SUSE 업데이트만 해당)
  • CloudLinux KernelCare (모든 주요 Linux 배포판용)

7일 지원되는 KernelCare 무료 체험판 받기 

 

 


Oracle 키스플리스 ksplice_logo

Ksplice는 재부팅 없는 Kernel 업데이트를 상업적으로 구현한 최초의 제품입니다. 는 결국 Oracle에 인수되어 현재는 (당연하게도) Oracle Linux 및 RedHat Enterprise Linux 배포판에서만 사용할 수 있으며, 배포를 위해서는 Oracle의 라이선스가 필요합니다.

 

전문가용 KernelCare 블로그

  • 재부팅할 필요가 없습니다.
  • 자동 업데이트.
  • 데스크톱 Linux 설치 시 무료로 사용할 수 있으며, 페도라 및 Ubuntu Linux 배포판에 대한 공식 지원이 제공됩니다.

프레임 2

  • Oracle Linux, Red Hat Enterprise Linux, CentOS 및 Ubuntu에서만 작동합니다.
  • 지원 라이선스가 필요하며 가격은 시스템당 연간 1,399달러부터 시작합니다.

배포하려면 실행하세요:

sudo wget -N https://ksplice.oracle.com/uptrack/install-uptrack-oc
sudo sh install-uptrack-oc -autoinstall

 

재부팅 명령이 없으며 서버 수명 기간 동안 설치 스크립트를 한 번만 실행하면 됩니다. 그 후에는 Uptrack 서비스가 새로운 Kernel 업데이트를 자동으로 감지하여 배포합니다. 스케줄링이나 다운타임이 없으며 더 이상 할 일이 없습니다.

 


 

정식 라이브 패치 서비스 1200px-Canonical_logo.svg

이것은 Kernel 라이브 패치를 위한 Canonical의 기술입니다. 어렵고 시간이 많이 걸리는 작업일 수 있지만 직접 패치를 만들 수도 있습니다. 일부 공급업체는 유료로 Ubuntu 업그레이드 Kernel을 생성해 줍니다. 이 서비스는 Ubuntu 16.04 이상에서 사용할 수 있습니다.

전문가용 KernelCare 블로그

  • 재부팅할 필요가 없습니다.
  • 자동 Kernel 업데이트 개인용 무료(최대 3대, 인증된 Ubuntu 커뮤니티 회원의 경우 최대 50대까지)

프레임 2

  • 사소하지 않은 커스텀 Kernel 패치.
  • 제한된 배포가 지원됩니다.
  • 업데이트 가능한 호스트 수에 제한이 있습니다.
  • 유료 호스트 추가 - Ubuntu Advantage(최소 Essential) 지원 구독의 가격은 물리적 서버의 경우 연간 $225-$1,500/머신, 가상 머신의 경우 연간 $75-$500/머신부터 시작됩니다.

 

이렇게 배포됩니다:

sudo snap install canonical-livepatch
sudo canonical-livepatch enable [TOKEN]

Canonical 라이브패치 서비스는 개인용 컴퓨터는 최대 3대까지, Ubuntu 커뮤니티 회원은 최대 50대까지 무료로 이용할 수 있습니다. 여기에서 토큰을 신청할 수 있습니다.

 

 


 

Red Hat K패치 eb5c4d17e2b04c612fba7bae31a08c59

Red Hat의 자체 Kernel 패치 도구입니다. 2014년에 발표되었으며, 같은 계열의 다른 시스템(Fedora, CentOS)과 일부 데비안 기반 시스템(Ubuntu, Gentoo)에서도 작동하도록 포팅되었습니다.

 

전문가용 KernelCare 블로그

  • 재부팅할 필요가 없습니다.

프레임 2

  • 자동화되지 않았습니다.
  • 배포가 제한됩니다.
  • 프리미엄 지원 구독은 연간 $1299에 이용할 수 있습니다.

 

다음은 RHEL 7에 배포하는 예제입니다:

sudo yum 설치 kpatch
sudo yum install kpatch-patch-X.X.X.el7.x86_64.rpm

Ubuntu의 라이브패치 서비스나 Oracle의 Ksplice와 달리 자동이 아니므로 Kernel 패치가 제공될 때마다 수동으로 확인하여 설치해야 합니다.

 


 

SUSE 이식 suse_logo_color

Red Hat의 솔루션과 거의 동시에 개발 및 발표된 Kgraft는 SUSE의 라이브 패치 제품(SUSE Linux Enterprise Live Patching으로 알려져 있음)입니다. 이 솔루션은 SUSE의 자체 Linux Enterprise Server 12 전용이며 사전 설치되어 제공되므로 비용을 지불하는 것 외에는 할 일이 없습니다. 대부분의 다른 접근 방식과는 다른 원리로 작동하지만 Kpatch와 비슷한 기능 세트를 갖추고 있습니다.

 

전문가용 KernelCare 블로그

  • 설치가 필요하지 않습니다.
  • 재부팅할 필요가 없습니다.

프레임 2

  • 단일 플랫폼 지원.
  • 상업용(하지만 60일 무료 평가판이 제공됩니다).

 


 

CloudLinux KernelCare KernelCare_블랙 ABD 블루

2014년에 출시된 KernelCare의 Linux Kernel 라이브 패치 서비스는 CentOS, RHEL, Oracle Linux, Debian, Ubuntu 다양한 OS를 지원하는 Kernel 패치 솔루션 중 단연 돋보이는 서비스입니다. 또한 Oracle의 솔루션과 마찬가지로 KernelCare는 RHEL 6의 이전 2.6.32 Kernel을 지원합니다.

 

전문가용 KernelCare 블로그

  • 간편한 설치.
  • 재부팅할 필요가 없습니다.
  • 가장 인기 있는 Linux 버전 중 하나인 Ubuntu를 포함한 다양한 OS를 지원합니다.
  • 사용자 지정 및 고정 날짜 패치를 지원합니다.
  • CloudLinux의 우수한 지원과 업계 노하우.

프레임 2

 

KernelCare를 설치하는 방법은 다음과 같습니다:

wget -qq -O -- https://kernelcare.com/installer | bash
sudo /usr/bin/kcarectl --register <your key>

For <your key> get your trial key here.

 

KernelCare는 '설치 후 잊어버리는' 솔루션입니다. 설치가 완료되면 서버를 재부팅할 필요 없이 KernelCare가 자동으로 새 Kernel 보안 패치를 다운로드하여 적용합니다.

 

그러나 가장 가까운 경쟁사와는 달리, KernelCare는 멜트다운(CVE-2017-5754), 스펙터(CVE-2017-5753 & CVE-2017-5715), 그리고 최근에는 Mutagen Astronomy(CVE-2018-14634)로 알려진 Linux Kernel 버퍼 오버플로 결함과 같은 좀 더 복잡한 취약점에 대한 패치를 처리할 수 있습니다. KernelCare는 사용자 지정 패치 구성, 고정 날짜 패치, 지연 패치, 재부팅 없는 롤백, 즉 패치 제거를 지원합니다.

패치 프로세스 다이어그램 (1)

이 글에서 살펴본 다른 업체들과 마찬가지로 KernelCare 역시 좋은 혈통에서 탄생한 업체로, 개발자는 선도적인 웹 호스팅 Linux 기반 OS 공급 업체인 CloudLinux입니다.


 

결론

서버가 중요하지 않고 일정 기간 오프라인 상태를 견딜 수 있는 경우, Kernel 업데이트는 명령줄의 표준 도구를 사용하여 비교적 쉽게 수행할 수 있습니다.

재부팅할 수 없거나 재부팅하지 않는 등 항상 켜져 있는 시스템을 실행하는 경우 라이브 Kernel 패치 솔루션을 살펴보세요. 이 중 세 가지 종류가 있습니다:

  1. 관리 - 사용자가직접 수행해야 합니다. 예: Kpatch, Kgraft.
  2. 완전 자동 - 자동으로처리합니다. 예: Livepatch, Ksplice.
  3. 완전 자동화된 고급 멀티 플랫폼으로모든 플랫폼에서 지능형 위협을 처리합니다. 예: CloudLinux의 KernelCare.

라이브 패치 기술과 이를 통해 인프라 보안을 강화하는 방법에 대해 자세히 알아보려면 가장 인기 있는 블로그 게시물을 읽어보세요:

Linux Kernel 라이브 패치 도구를 사용해 본 적이 있나요? 어떤 도구가 비즈니스에 가장 유용하다고 생각하시나요? 여러분의 생각을 댓글로 공유해 주세요.

Kernel 재부팅, 시스템 다운타임 또는 예정된 유지 보수 기간 없이 취약성 패치를 자동화하고 싶으신가요?

TuxCare로 라이브 패치에 대해 알아보기

TuxCare 게스트 작가 되기

시작하기

메일

가입

4,500

Linux & 오픈 소스
전문가!


뉴스레터 구독하기