
آموزش vSphere 8 Security Hardening – بخش دوم
بررسی امنیت در VMware vSphere v8: تنظیمات سختافزار امنیتی برای حفاظت از زیرساخت مجازی
ادامه از پست قبلی آموزش vSphere 8 Security Hardening بخش اول ، در زیر منابعی آورده شده است که میتوانند به افزایش امنیت کلی در زیرساخت مجازیشده کمک کنند. توصیه میشود پس از استفاده از آنها، تنظیمات امنیتی را اعمال کرده و با استانداردهای امنیتی مطابقت داشته باشید.
Secure Shell (SSH) میزبان ESXi باید به گونهای پیکربندی شود که فقط از رمزگذاریهای تأیید شده FIPS 140–2/140–3 استفاده کند: esxi-8.ssh-fips-ciphers
Services سیستم باید در هنگام فعال شدن امن و تقویت شوند.
ارزیابی PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $ESXcli.system.ssh.server.config.list.invoke() | Where-Object {$_.Key -eq 'ciphers'} | Select-Object -ExpandProperty Value
رفع مشکل PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $arguments = $ESXcli.system.ssh.server.config.set.CreateArgs() $arguments.keyword = 'ciphers' $arguments.value = 'aes256-gcm@openssh.com,aes128-gcm@openssh.com,aes256-ctr,aes192-ctr,aes128-ctr' $ESXcli.system.ssh.server.config.set.Invoke($arguments)
Secure Shell (SSH) میزبان ESXi باید قابلیت Forwarding محلی از نوع stream را غیرفعال کند: esxi-8.ssh-stream-local-forwarding
Services سیستم باید در هنگام فعال شدن امن و تقویت شوند.
ارزیابی PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $ESXcli.system.ssh.server.config.list.invoke() | Where-Object {$_.Key -eq 'allowstreamlocalforwarding'} | Select-Object -ExpandProperty Value
رفع مشکل PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $arguments = $ESXcli.system.ssh.server.config.set.CreateArgs() $arguments.keyword = 'allowstreamlocalforwarding' $arguments.value = 'no' $ESXcli.system.ssh.server.config.set.Invoke($arguments)
در اینجا، کدهای PowerCLI برای ارزیابی و رفع مشکلات امنیتی مربوط به SSH در میزبانهای ESXi آورده شده است که میتواند به شما در تقویت امنیت محیط مجازی کمک کند.
میزبان ESXi باید Secure Shell (SSH) را طوری پیکربندی کند که قابلیت TCP forwarding غیرفعال شود: esxi-8.ssh-tcp-forwarding
Services سیستم باید در هنگام فعال شدن امن و تقویت شوند.
ارزیابی PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $ESXcli.system.ssh.server.config.list.invoke() | Where-Object {$_.Key -eq 'allowtcpforwarding'} | Select-Object -ExpandProperty Value
رفع مشکل PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $arguments = $ESXcli.system.ssh.server.config.set.CreateArgs() $arguments.keyword = 'allowtcpforwarding' $arguments.value = 'no' $ESXcli.system.ssh.server.config.set.Invoke($arguments)
میزبان ESXi باید قبل از دسترسی به سیستم، بنر ورود به سیستم را نمایش دهد: esxi-8.ssh-login-banner
Services سیستم باید در هنگام فعال شدن امن و تقویت شوند. همچنین، باید پارامتر پیشرفته Config.Etc.Issue میزبان را تنظیم کرده و متنی برای این بنر فراهم کنید.
ارزیابی PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $ESXcli.system.ssh.server.config.list.invoke() | Where-Object {$_.Key -eq 'banner'} | Select-Object -ExpandProperty Value
رفع مشکل PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $arguments = $ESXcli.system.ssh.server.config.set.CreateArgs() $arguments.keyword = 'banner' $arguments.value = '/etc/issue' $ESXcli.system.ssh.server.config.set.Invoke($arguments)
میزبان ESXi باید فایلهای .rhosts
را نادیده بگیرد: esxi-8.ssh-rhosts
Services سیستم باید در هنگام فعال شدن امن و تقویت شوند.
ارزیابی PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $ESXcli.system.ssh.server.config.list.invoke() | Where-Object {$_.Key -eq 'ignorerhosts'} | Select-Object -ExpandProperty Value
رفع مشکل PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $arguments = $ESXcli.system.ssh.server.config.set.CreateArgs() $arguments.keyword = 'ignorerhosts' $arguments.value = 'yes' $ESXcli.system.ssh.server.config.set.Invoke($arguments)
در این بخش، کدهای PowerCLI برای ارزیابی و رفع مشکلات امنیتی مربوط به SSH در میزبانهای ESXi آورده شده است که میتواند به شما در تقویت امنیت محیط مجازی کمک کند.
میزبان ESXi باید اجازه احراز هویت مبتنی بر میزبان را ندهد: esxi-8.ssh-host-based-auth
Services سیستم باید در هنگام فعال شدن امن و تقویت شوند.
ارزیابی PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $ESXcli.system.ssh.server.config.list.invoke() | Where-Object {$_.Key -eq 'hostbasedauthentication'} | Select-Object -ExpandProperty Value
رفع مشکل PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $arguments = $ESXcli.system.ssh.server.config.set.CreateArgs() $arguments.keyword = 'hostbasedauthentication' $arguments.value = 'no' $ESXcli.system.ssh.server.config.set.Invoke($arguments)
میزبان ESXi باید اجازه استفاده از تونلها را ندهد: esxi-8.ssh-tunnels
Services سیستم باید در هنگام فعال شدن امن و تقویت شوند.
ارزیابی PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $ESXcli.system.ssh.server.config.list.invoke() | Where-Object {$_.Key -eq 'permittunnel'} | Select-Object -ExpandProperty Value
رفع مشکل PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $arguments = $ESXcli.system.ssh.server.config.set.CreateArgs() $arguments.keyword = 'permittunnel' $arguments.value = 'no' $ESXcli.system.ssh.server.config.set.Invoke($arguments)
میزبان ESXi باید اجازه تنظیمات محیطی کاربر را ندهد: esxi-8.ssh-user-environment
Services سیستم باید در هنگام فعال شدن امن و تقویت شوند.
ارزیابی PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $ESXcli.system.ssh.server.config.list.invoke() | Where-Object {$_.Key -eq 'permituserenvironment'} | Select-Object -ExpandProperty Value
رفع مشکل PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $arguments = $ESXcli.system.ssh.server.config.set.CreateArgs() $arguments.keyword = 'permituserenvironment' $arguments.value = 'no' $ESXcli.system.ssh.server.config.set.Invoke($arguments)
در این بخش، کدهای PowerCLI برای ارزیابی و رفع مشکلات امنیتی مربوط به SSH در میزبانهای ESXi آورده شده است که میتواند به شما در تقویت امنیت محیط مجازی کمک کند.
میزبان ESXi باید یک شمارنده تایماوت برای جلسات غیر فعال تنظیم کند: esxi-8.ssh-idle-timeout-count
Services سیستم باید در هنگام فعال شدن امن و تقویت شوند. شمارنده تایماوت، که در ضرب با فاصله زمانی تایماوت غیر فعال ضرب میشود، تعداد ثانیههایی را که جلسه ممکن است غیر فعال بماند تا قطع شود، مشخص میکند.
ارزیابی PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $ESXcli.system.ssh.server.config.list.invoke() | Where-Object {$_.Key -eq 'clientalivecountmax'} | Select-Object -ExpandProperty Value
رفع مشکل PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $arguments = $ESXcli.system.ssh.server.config.set.CreateArgs() $arguments.keyword = 'clientalivecountmax' $arguments.value = '3' $ESXcli.system.ssh.server.config.set.Invoke($arguments)
میزبان ESXi باید یک فاصله زمانی تایماوت برای جلسات غیر فعال تنظیم کند: esxi-8.ssh-idle-timeout-interval
Services سیستم باید در هنگام فعال شدن امن و تقویت شوند. شمارنده تایماوت، که در ضرب با فاصله زمانی تایماوت غیر فعال ضرب میشود، تعداد ثانیههایی را که جلسه ممکن است غیر فعال بماند تا قطع شود، مشخص میکند.
ارزیابی PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $ESXcli.system.ssh.server.config.list.invoke() | Where-Object {$_.Key -eq 'clientaliveinterval'} | Select-Object -ExpandProperty Value
رفع مشکل PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $arguments = $ESXcli.system.ssh.server.config.set.CreateArgs() $arguments.keyword = 'clientaliveinterval' $arguments.value = '200' $ESXcli.system.ssh.server.config.set.Invoke($arguments)
میزبان ESXi باید از ماژولهای رمزنگاری تأیید شده FIPS 140–2/140–3 استفاده کند: esxi-8.ssh-fips
OpenSSH در میزبان ESXi به طور پیشفرض با ماژول رمزنگاری تأیید شده FIPS 140–2/140–3 فعال ارسال میشود. به دلایل سازگاری با نسخههای قبلی، این ویژگی ممکن است غیرفعال شده باشد. بنابراین، باید این تنظیمات بررسی و در صورت لزوم اصلاح شود.
ارزیابی PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $ESXcli.system.security.fips140.ssh.get.Invoke()
رفع مشکل PowerCLI:
$ESXcli = Get-EsxCli -VMHost $ESXi -V2 $arguments = $ESXcli.system.security.fips140.ssh.set.CreateArgs() $arguments.enable = $true $ESXcli.system.security.fips140.ssh.set.Invoke($arguments)
در این بخش، کدهای PowerCLI برای ارزیابی و رفع مشکلات امنیتی مربوط به SSH در میزبانهای ESXi آورده شده است که میتواند به شما در تقویت امنیت محیط مجازی کمک کند.
سیستم عامل مهمان باید بهطور خودکار بهروزرسانی VMware Tools را طبق محیط پیکربندی کند: guest-8.tools-upgrade
بهروزرسانیهای VMware Tools میتوانند توسط vSphere آغاز شوند که میتواند به حفظ نسخههای بهروز VMware Tools کمک کند. این قابلیت باید در صورتی که VMware Tools از طریق روشهای دیگر مدیریت و بهروزرسانی میشود، غیرفعال شود. این استاندارد پیشنهاد میکند که بهروزرسانیهای خودکار فعال باقی بماند.
ارزیابی PowerCLI:
C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd.exe config get autoupgrade allow-upgrade
رفع مشکل PowerCLI:
C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd.exe config set autoupgrade allow-upgrade true
سیستم عامل مهمان باید اطلاعات Appinfo را غیرفعال کند، مگر اینکه نیاز باشد: guest-8.tools-deactivate-appinfo
Appinfo روشی برای کشف برنامهها از طریق VMware Tools است. این ماژول را غیرفعال کنید تا سطح حمله کاهش یابد، مگر اینکه از این ابزار استفاده شود.
ارزیابی PowerCLI:
C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd.exe config get appinfo disabled
رفع مشکل PowerCLI:
C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd.exe config set appinfo disabled true
سیستم عامل مهمان باید ContainerInfo را غیرفعال کند، مگر اینکه نیاز باشد: guest-8.tools-deactivate-containerinfo
ماژول VMware Tools ContainerInfo برای لینوکس فهرستی از کانتینرهای در حال اجرا در داخل سیستم عامل مهمان لینوکس جمعآوری میکند.
ارزیابی PowerCLI:
C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd.exe config get containerinfo poll-interval
رفع مشکل PowerCLI:
C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd.exe config set containerinfo poll-interval 0
در اینجا کدهای PowerCLI برای ارزیابی و رفع مشکلات امنیتی مربوط به VMware Tools در سیستم عاملهای مهمان آورده شده است که میتواند به شما در تقویت امنیت و مدیریت بهتر این ابزارها کمک کند.
سیستم عامل مهمان باید عملیات مهمان (Guest Operations) را غیرفعال کند، مگر اینکه نیاز باشد: guest-8.tools-deactivate-guestoperations
عملیات مهمان مجموعهای از عملکردها هستند که بیشتر تعاملات میزبان با مهمان را پایهریزی میکنند. غیرفعال کردن آنها سطح حمله به ESXi را کاهش میدهد اما به طور چشمگیری عملکرد را کاهش میدهد. مطمئن شوید که محیط شما به این عملکردها نیاز ندارد. این کار را روی ماشینهای مجازی الگو (Template VMs) انجام ندهید.
ارزیابی PowerCLI:
C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd.exe config get guestoperations disabled
رفع مشکل PowerCLI:
C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd.exe config set guestoperations disabled true
سیستم عامل مهمان باید Secure Boot را فعال کند: guest-8.secure-boot
Secure Boot که توسط تمام سیستم عاملهای مهمان مدرن پشتیبانی میشود، از رمزنگاری کلید عمومی برای اعتبارسنجی سختافزار، بوتلودر، درایورها و هسته سیستم عامل استفاده میکند. این ویژگی به طور مؤثر از بدافزارها جلوگیری میکند زیرا از بوت شدن سیستم با زنجیره بوت نامعتبر جلوگیری میکند.
ارزیابی PowerCLI:
(Get-VM -Name $VM).ExtensionData.Config.BootOptions.EfiSecureBootEnabled
رفع مشکل PowerCLI:
$VMobj = (Get-VM -Name $VM) $ConfigSpec = New-Object VMware.Vim.VirtualMachineConfigSpec $bootOptions = New-Object VMware.Vim.VirtualMachineBootOptions $bootOptions.EfiSecureBootEnabled = $true $ConfigSpec.BootOptions = $bootOptions $task = $VMobj.ExtensionData.ReconfigVM_Task($ConfigSpec)
سیستم عامل مهمان باید اطمینان حاصل کند که سختافزار ماشین مجازی نسخه 19 یا جدیدتر است، جایی که پشتیبانی میشود: guest-8.virtual-hardware
Virtual hardware 19 با ESXi 7.0 Update 2 و نسخههای بعدی سازگار است. نسخههای جدیدتر سختافزار مجازی ویژگیها و عملکرد بهتری را فعال میکنند. اگر بهطور کامل به vSphere 8 بهروز شدهاید، بهروزرسانی به VM Hardware 21 را در نظر بگیرید. سایر دستورالعملهای VMware احتیاط در بهروزرسانی را توصیه میکنند. اسنپشاتها نسخه سختافزاری ماشین مجازی را ثبت میکنند، که باعث آسانتر شدن تست و بازگشت به نسخههای قبلی میشود. همه مکانهایی که یک ماشین مجازی ممکن است اجرا شود یا نیاز به بازیابی داشته باشد را در نظر بگیرید. تغییرات در پیکربندی دستگاههای مجازی تأمینشده توسط VMware پشتیبانی نمیشود و ممکن است منجر به اختلال در Services شود. این ورودی عمداً به عنوان “درون مهمان” دستهبندی شده است به دلیل بهروزرسانیهایی که هنگام بهروزرسانی یک ماشین مجازی انجام میشود، علیرغم تأثیر کم.
ارزیابی PowerCLI:
(Get-VM -Name $VM | Get-View).Config.Version
رفع مشکل PowerCLI:
Set-VM -Name $VM -HardwareVersion vmx-21
این بخش شامل کدهای PowerCLI برای ارزیابی و رفع مشکلات امنیتی و پیکربندی ماشینهای مجازی در سیستمهای VMware است که میتواند به شما کمک کند تا امنیت و عملکرد بهتری در محیط مجازی خود داشته باشید.
سیستم عامل مهمان باید اطمینان حاصل کند که VMware Tools بهروز شدهاند: guest-8.tools-updates
VMware Tools بخشی اساسی از اکوسیستم VMware است که به سیستم عاملهای مهمان این امکان را میدهد تا به طور صحیح خاموش شوند و در طول چرخه عمر خود مدیریت شوند، درایورها برای دستگاههای پارا مجازیشده را فراهم میکند و به استقرار و سفارشیسازی ماشینهای مجازی از قالبها کمک میکند. مانند سایر نرمافزارها، VMware Tools باید مدیریت و بهروزرسانی شوند. اطمینان حاصل کنید که نسخه پشتیبانیشده برای سیستم عامل مهمان خود را اجرا میکنید، خواه به عنوان بخشی از توزیع لینوکس تحویل داده شده باشد یا توسط شما برای ویندوز مایکروسافت نصب شده باشد.
ارزیابی PowerCLI:
Get-VM -Name $VM | Select-Object -Property Name,@{Name='ToolsVersion';Expression={$_.Guest.ToolsVersion}}
رفع مشکل PowerCLI: بسته به سایت و محیط شما. روشهای مختلفی برای بهروزرسانی VMware Tools وجود دارد. درایورهای vmxnet3 و pvscsi همچنین از طریق Windows Update در دسترس هستند، لطفاً اطمینان حاصل کنید که آنها را به ابزارهایی مانند WSUS وارد میکنید.
سیستم عامل مهمان باید از اضافه شدن خودکار ویژگیهای VMware Tools جلوگیری کند: guest-8.tools-add-feature
فرآیندهای بهروزرسانی خودکار VMware Tools میتوانند ویژگیهایی را از نصب VMware Tools اضافه یا حذف کنند که میتواند مفید باشد اما همچنین فرصتی برای تغییر پروفایل امنیتی سیستم عامل مهمان از طریق vSphere فراهم میکند.
ارزیابی PowerCLI:
C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd.exe config get autoupgrade allow-add-feature
رفع مشکل PowerCLI:
C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd.exe config set autoupgrade allow-add-feature false
سیستم عامل مهمان باید استفاده از MSI transforms هنگام پیکربندی مجدد VMware Tools را محدود کند: guest-8.tools-allow-transforms
MSI transforms اجازه میدهند که پایگاه داده نصب در سیستم عاملهای مهمان مایکروسافت ویندوز تغییر کند. این میتواند مفید باشد، اما همچنین فرصتی برای تغییر پروفایل امنیتی سیستم عامل مهمان از طریق vSphere فراهم میکند.
ارزیابی PowerCLI:
C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd.exe config get autoupgrade allow-msi-transforms
رفع مشکل PowerCLI:
C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd.exe config set autoupgrade allow-msi-transforms false
این تنظیمات و کدهای PowerCLI به شما کمک میکنند که اطمینان حاصل کنید VMware Tools بهطور مؤثر بهروز رسانی و پیکربندی شدهاند و در عین حال امنیت محیط شما حفظ میشود.
سرور vCenter باید از vSphere Authentication Proxy استفاده کند تا از ذخیرهسازی اعتبارنامههای Active Directory جلوگیری کند: esxi-8.ad-auth-proxy
vSphere Authentication Proxy به vCenter این امکان را میدهد که بدون ذخیرهسازی مستقیم اعتبارنامههای Active Directory (AD)، به موجودیتهای AD متصل شده و آنها را مدیریت کند، که این کار خطر افشا یا سوء استفاده از اعتبارنامهها را کاهش میدهد.
ارزیابی PowerCLI:
Get-VMHost -Name $ESXi | Get-VMHostAuthentication | Select-Object VMHost,Domain,DomainMembershipStatus
ماشینهای مجازی باید عملیات کپی کنسول را غیرفعال کنند: vm-8.deactivate-console-copy
غیرفعال کردن عملیات کپی کنسول در ماشینهای مجازی از کپی دادهها بین ماشین مجازی و مشتری محلی جلوگیری میکند، صرف نظر از اینکه کاربر به کنسول وب، VMRC یا روش دیگری دسترسی داشته باشد.
ارزیابی PowerCLI:
Get-VM -Name $VM | Get-AdvancedSetting isolation.tools.copy.disable
رفع مشکل PowerCLI:
Get-VM -Name $VM | Get-AdvancedSetting -Name isolation.tools.copy.disable | Remove-AdvancedSetting
ماشینهای مجازی باید عملیات کشیدن و انداختن کنسول را غیرفعال کنند: vm-8.isolation-tools-dnd-deactivate
غیرفعال کردن عملیات کشیدن و انداختن در کنسول ماشین مجازی از انتقال دادهها بین ماشین مجازی و مشتری محلی جلوگیری میکند، صرف نظر از نوع کنسول، که به افزایش امنیت دادهها کمک میکند.
ارزیابی PowerCLI:
Get-VM -Name $VM | Get-AdvancedSetting isolation.tools.dnd.disable
رفع مشکل PowerCLI:
Get-VM -Name $VM | Get-AdvancedSetting -Name isolation.tools.dnd.disable | Remove-AdvancedSetting
این تنظیمات و کدهای PowerCLI به شما کمک میکنند تا امنیت ماشینهای مجازی و سرور vCenter خود را با غیرفعال کردن عملیاتهای کپی و کشیدن و انداختن که ممکن است باعث نشت اطلاعات شوند، بهبود دهید. همچنین با استفاده از vSphere Authentication Proxy، امنیت اعتبارنامههای Active Directory نیز تقویت میشود.
ماشینهای مجازی باید عملیات چسباندن کنسول را غیرفعال کنند: vm-8.deactivate-console-paste
غیرفعال کردن عملیات چسباندن کنسول در ماشینهای مجازی از انتقال دادهها از مشتری محلی به ماشین مجازی جلوگیری میکند، چه کاربر از کنسول وب، VMRC یا کنسول دیگری استفاده کند.
ارزیابی PowerCLI:
Get-VM -Name $VM | Get-AdvancedSetting isolation.tools.paste.disable
رفع مشکل PowerCLI:
Get-VM -Name $VM | Get-AdvancedSetting -Name isolation.tools.paste.disable | Remove-AdvancedSetting
ماشینهای مجازی باید عملیات کوچکسازی دیسک مجازی را غیرفعال کنند: vm-8.deactivate-disk-shrinking-shrink
غیرفعال کردن عملیات کوچکسازی دیسک مجازی در ماشینهای مجازی به جلوگیری از مشکلات عدم دسترسی به دیسک کمک میکند. توانایی انجام این عملیات معمولاً برای کاربران غیر مدیریتی در محیط مهمان محدود است.
ارزیابی PowerCLI:
Get-VM -Name $VM | Get-AdvancedSetting isolation.tools.diskShrink.disable
رفع مشکل PowerCLI:
Get-VM -Name $VM | Get-AdvancedSetting -Name isolation.tools.diskShrink.disable | Remove-AdvancedSetting
ماشینهای مجازی باید عملیات پاکسازی دیسک مجازی را غیرفعال کنند: vm-8.deactivate-disk-shrinking-wiper
غیرفعال کردن عملیات پاکسازی دیسک مجازی در ماشینهای مجازی به جلوگیری از مشکلات عدم دسترسی به دیسک کمک میکند. توانایی انجام این عملیات معمولاً برای کاربران غیر مدیریتی در محیط مهمان محدود است.
ارزیابی PowerCLI:
Get-VM -Name $VM | Get-AdvancedSetting isolation.tools.diskWiper.disable
رفع مشکل PowerCLI:
Get-VM -Name $VM | Get-AdvancedSetting -Name isolation.tools.diskWiper.disable | Remove-AdvancedSetting
ماشینهای مجازی باید به اشتراکگذاری کنسول محدود شوند: vm-8.limit-console-connections
محدود کردن اشتراکگذاری کنسول ماشین مجازی به یک کاربر، از مشاهده چندگانه جلوگیری کرده و امنیت را افزایش میدهد. با این حال، این ممکن است به طور غیرمستقیم مسیری برای ایجاد اختلال در سرویس فراهم کند.
ارزیابی PowerCLI:
Get-VM -Name $VM | Get-AdvancedSetting RemoteDisplay.maxConnections
رفع مشکل PowerCLI:
Get-VM -Name $VM | Get-AdvancedSetting RemoteDisplay.maxConnections | Set-AdvancedSetting -Value 1
این تنظیمات و کدهای PowerCLI به شما کمک میکنند تا امنیت ماشینهای مجازی خود را با غیرفعال کردن عملیاتهایی مانند چسباندن کنسول، کوچکسازی دیسک، پاکسازی دیسک و محدود کردن اشتراکگذاری کنسول بهبود دهید و از آسیبپذیریهای احتمالی جلوگیری کنید.
ماشینهای مجازی باید قابلیت passthrough دستگاه PCI را محدود کنند: vm-8.pci-passthrough
ویژگیهای DirectPath I/O به ماشینهای مجازی اجازه میدهند که به طور مستقیم به سختافزار سیستم دسترسی پیدا کنند که بر ابزارهای کاهش ریسک مانند vMotion، DRS و High Availability تأثیر میگذارد. این ویژگی همچنین به مهاجمان دسترسی به سختافزار با امتیاز بالا میدهد. اطمینان حاصل کنید که تنها ماشینهای مجازی ضروری این امتیاز را دارند و امنیت سیستم مهمان به درستی تنظیم شده است.
ارزیابی PowerCLI:
Get-VM -Name $VM | Get-PassthroughDevice
رفع مشکل PowerCLI:
Get-VM -Name $VM | Get-PassthroughDevice | Remove-PassthroughDevice
ماشینهای مجازی باید از حذف، اتصال و تغییرات غیرمجاز دستگاهها جلوگیری کنند: vm-8.isolation-device-connectable-deactivate
جلوگیری از تغییرات غیرمجاز دستگاهها در ماشینهای مجازی مانع از اتصال، قطع اتصال یا تنظیمات دستگاه توسط کاربران یا فرآیندهای غیرمدیریتی میشود. این اقدام از دسترسی غیرمجاز و اختلال در عملیات جلوگیری میکند، ریسکهای عدم دسترسی به سرویس را کاهش میدهد و برخی مسیرها برای استخراج دادهها را مسدود میکند.
ارزیابی PowerCLI:
Get-VM -Name $VM | Get-AdvancedSetting isolation.device.connectable.disable
رفع مشکل PowerCLI:
Get-VM -Name $VM | Get-AdvancedSetting -Name isolation.device.connectable.disable | Remove-AdvancedSetting
ماشینهای مجازی باید سختافزار مجازی غیرضروری را حذف کنند: vm-8.remove-unnecessary-devices
حذف سختافزار مجازی غیرضروری از ماشینهای مجازی به کاهش سطح حمله کمک میکند. پورتهای نادر استفادهشده، درایوهای CD/DVD موقت و سختافزارهایی که از طریق مهاجرتها وارد شدهاند ممکن است آسیبپذیر باشند. حذف این سختافزارها خطر معرفی نرمافزارهای مخرب یا استخراج دادهها از محیط محافظتشده را کاهش میدهد.
ارزیابی PowerCLI:
$VMview = Get-VM -Name $VM | Get-View $UnnecessaryHardware = "VirtualUSBController|VirtualUSBXHCIController|VirtualParallelPort|VirtualFloppy|VirtualSerialPort|VirtualHdAudioCard|VirtualAHCIController|VirtualEnsoniq1371|VirtualCdrom" $VMview.Config.Hardware.Device | Where-Object {$_.GetType().Name -match $UnnecessaryHardware} | Foreach-Object { $devname = $_.GetType().Name Write-Host "$VM`: [WARNING] VM has a $devname device. Please evaluate and consider removing." -ForegroundColor Yellow }
این تنظیمات کمک میکند تا امنیت ماشینهای مجازی شما افزایش یابد و از پتانسیلهای آسیبپذیری دستگاهها و سختافزارهای غیرضروری جلوگیری شود…