Chef를 통해 Microsoft Defender for Endpoint(Linux용) 배포
중요
이 문서에는 타사 도구에 대한 정보가 포함되어 있습니다. 통합 시나리오를 완료하는 데 도움이 되도록 제공되지만 Microsoft는 타사 도구에 대한 문제 해결 지원을 제공하지 않습니다.
지원을 받으려면 타사 공급업체에 문의하세요.
시작하기 전에: 아직 설치되지 않은 경우 압축 해제를 설치합니다.
Chef 구성 요소가 이미 설치되어 있으며 Chef 관리형 Linux 서버의 엔드포인트용 Defender에 배포하는 데 사용되는 쿡북을 저장하기 위해 Chef 리포지토리(chef generate repo <reponame>)가 있습니다.
Chef 리포지토리에 있는 cookbooks 폴더 내에서 다음 명령을 실행하여 기존 리포지토리에 새 cookbook을 만들 수 있습니다.
chef generate cookbook mdatp
이 명령은 mdatp라는 새 쿡북에 대한 새 폴더 구조를 만듭니다. 엔드포인트용 Defender 배포를 추가하는 데 사용하려는 요리책이 이미 있는 경우 기존 요리책을 사용할 수도 있습니다. cookbook을 만든 후 방금 만든 cookbook 폴더 내에 파일 폴더를 만듭니다.
mkdir mdatp/files
Microsoft Defender 포털에서 다운로드할 수 있는 Linux Server 온보딩 zip 파일을 이 새 파일 폴더로 전송합니다.
경고
엔드포인트용 Defender 설치 패키지를 다시 패키징하는 것은 지원되는 시나리오가 아닙니다. 이렇게 하면 제품의 무결성에 부정적인 영향을 미칠 수 있으며 변조 경고 및 업데이트가 적용되지 않는 것을 포함하지만 이에 국한되지 않는 부정적인 결과를 초래할 수 있습니다.
Chef 워크스테이션에서 mdatp/recipes 폴더로 이동합니다. 이 폴더는 cookbook이 생성될 때 만들어집니다. 기본 설정 텍스트 편집기(예: vi 또는 nano)를 사용하여 default.rb 파일의 끝에 다음 지침을 추가합니다.
- '::onboard_mdatp' include_recipe
- '::install_mdatp' include_recipe
그런 다음 default.rb 파일을 저장하고 닫습니다.
다음으로 recipes 폴더에 install_mdatp.rb라는 새 레시피 파일을 만들고 이 텍스트를 파일에 추가합니다.
#Add Microsoft Defender
Repo
case node['platform_family']
when 'debian'
apt_repository 'MDAPRepo' do
arch 'amd64'
cache_rebuild true
cookbook false
deb_src false
key 'BC528686B50D79E339D3721CEB3E94ADBE1229CF'
keyserver "keyserver.ubuntu.com"
distribution 'focal'
repo_name 'microsoft-prod'
components ['main']
trusted true
uri "https://packages.microsoft.com/config/ubuntu/20.04/prod"
end
apt_package "mdatp"
when 'rhel'
yum_repository 'microsoft-prod' do
baseurl "https://packages.microsoft.com/config/rhel/7/prod/"
description "Microsoft Defender for Endpoint"
enabled true
gpgcheck true
gpgkey "https://packages.microsoft.com/keys/microsoft.asc"
end
if node['platform_version'] <= 8 then
yum_package "mdatp"
else
dnf_package "mdatp"
end
end
배포하려는 버전 및 배포하려는 채널과 일치하도록 버전 번호, 배포 및 리포지토리 이름을 수정해야 합니다. 다음으로 mdatp/recipies 폴더에 onboard_mdatp.rb 파일을 만들어야 합니다. 해당 파일에 다음 텍스트를 추가합니다.
#Create MDATP Directory
mdatp = "/etc/opt/microsoft/mdatp"
zip_path = "/path/to/chef-repo/cookbooks/mdatp/files/WindowsDefenderATPOnboardingPackage.zip"
directory "#{mdatp}" do
owner 'root'
group 'root'
mode 0755
recursive true
end
#Extract WindowsDefenderATPOnbaordingPackage.zip into /etc/opt/microsoft/mdatp
bash 'Extract Onboarding Json MDATP' do
code <<-EOS
unzip #{zip_path} -d #{mdatp}
EOS
not_if { ::File.exist?('/etc/opt/microsoft/mdatp/mdatp_onboard.json') }
end
경로 이름을 온보딩 파일의 위치로 업데이트해야 합니다.
Chef 워크스테이션에서 배포를 테스트하려면 를 실행합니다 sudo chef-client -z -o mdatp
.
배포 후 Linux에서 엔드포인트용 Microsoft Defender 대한 기본 설정 설정에 따라 구성 파일을 만들고 서버에 배포하는 것이 좋습니다.
구성 파일을 만들고 테스트한 후 온보딩 패키지를 배치한 cookbook/mdatp/files
폴더에 배치할 수 있습니다. 그런 다음 mdatp/recipies 폴더에 settings_mdatp.rb 파일을 만들고 다음 텍스트를 추가할 수 있습니다.
#Copy the configuration file
cookbook_file '/etc/opt/microsoft/mdatp/managed/mdatp_managed.json' do
source 'mdatp_managed.json'
owner 'root'
group 'root'
mode '0755'
action :create
end
이 단계를 레시피의 일부로 포함하려면 recipe 폴더 내의 default.rb 파일에 추가 include_recipe ':: settings_mdatp
하기만 하면 됩니다.
crontab을 사용하여 자동 업데이트 예약 엔드포인트용 Microsoft Defender(Linux) 업데이트를 예약할 수도 있습니다.
MDATP 쿡북 제거:
#Uninstall the Defender package
case node['platform_family']
when 'debian'
apt_package "mdatp" do
action :remove
end
when 'rhel'
if node['platform_version'] <= 8
then
yum_package "mdatp" do
action :remove
end
else
dnf_package "mdatp" do
action :remove
end
end
end
팁
더 자세히 알아보고 싶으신가요? 기술 커뮤니티: 엔드포인트용 Microsoft Defender Tech Community의 Microsoft 보안 커뮤니티와 Engage.