วิธีเปิดใช้งานและกำหนดค่า SNMP บนโฮสต์ VMWare ESXi
หากคุณต้องการมอนิเตอร์สถานะของเซิร์ฟเวอร์ VMWare ESXi ในระบบมอนิเตอร์ คุณต้องกำหนดค่าเอเจนต์ SNMP บนโฮสต์ของคุณ ในบทความนี้ เราจะแสดงวิธีเปิดใช้งานและกำหนดค่า SNMP ใน VMWare ESXi 6.7 (คำแนะนำนี้ใช้ได้กับ ESXi 5.5 และใหม่กว่า)
ใน ESXi มีเอเจนต์ SNMP ในตัวที่สามารถส่งและรับคำขอและกับดัก SNMP คุณสามารถเปิดใช้งานและกำหนดค่าเอเจนต์ SNMP บนโฮสต์ ESXi ได้หลายวิธี: โดยใช้ vCLI, PowerCLI (แต่ไม่ผ่าน GUI ของไคลเอ็นต์ vSphere)
เซิร์ฟเวอร์ SNMP ใน VMWare ESXi
จากเว็บอินเตอร์เฟส vSphere คุณสามารถตรวจสอบให้แน่ใจว่าบริการ “เซิร์ฟเวอร์ SNMP” กำลังทำงานอยู่ เปลี่ยนการตั้งค่าการเริ่มต้น หรือหยุด/เริ่มบริการ ไปที่โฮสต์ ESXi ของคุณ -> กำหนดค่า -> บริการ -> เซิร์ฟเวอร์ SNMP บริการจะหยุดทำงานตามค่าเริ่มต้น เริ่มเลย
เปิดใช้งานการเข้าถึง SSH บนโฮสต์ ESXi และเชื่อมต่อโดยใช้ไคลเอ็นต์ ssh ใดๆ (ฉันใช้ไคลเอ็นต์ SSH ในตัวของ Windows 10)
หากต้องการตรวจสอบการตั้งค่า SNMP ปัจจุบัน ให้รันคำสั่งนี้:
esxcli system snmp getSNMP ไม่ได้กำหนดค่า: พารามิเตอร์ทั้งหมดว่างเปล่า และเอเจนต์ถูกปิดใช้งาน
Authentication:
Communities:
Enable: false
Engineid:
Hwsrc: indications
Largestorage: true
Loglevel: info
Notraps:
Port: 161
Privacy:
Remoteusers:
Syscontact:
Syslocation:
Targets:
Users:
V3targets:การกำหนดค่าพารามิเตอร์ตัวแทน SNMP ใน ESXi
ระบุที่อยู่ IP ของเซิร์ฟเวอร์การมอนิเตอร์ (เป้าหมาย SNMP), พอร์ต (โดยดีฟอลต์, 161 UDP) และชื่อชุมชน SNMP (โดยปกติ สาธารณะ):
esxcli system snmp set --targets=192.168.99.99@161/publicหรือคุณสามารถตั้งชื่อชุมชนได้ดังนี้:
esxcli system snmp set --communities YOUR_COMMUNITY_STRINGนอกจากนี้ คุณสามารถระบุตำแหน่ง:
esxcli system snmp set --syslocation "Allee 16, Mun, DE"ข้อมูลติดต่อ:
esxcli system snmp set --syscontact admin@a-d.siteจากนั้นเปิดใช้งานบริการ SNMP บนโฮสต์ ESXi:
esxcli system snmp set --enable trueในการทดสอบการกำหนดค่า SNMP:
esxcli system snmp test
หากต้องการใช้การตั้งค่า ให้รีสตาร์ทเอเจนต์ SNMP โดยใช้คำสั่งนี้:
/etc/init.d/snmpd restartหากต้องการรีเซ็ตการตั้งค่าปัจจุบัน ให้ใช้คำสั่งต่อไปนี้:
esxcli system snmp set -rหากต้องการปิดใช้งาน SNMP:
esxcli system snmp set --disable trueการกำหนดค่าไฟร์วอลล์ ESXi สำหรับการรับส่งข้อมูล SNMP
คุณสามารถอนุญาตการรับส่งข้อมูล SNMP ในไฟร์วอลล์โฮสต์ ESXi ได้สองวิธี ในการอนุญาตคำขอ SMNP จากอุปกรณ์ใดๆ บนเครือข่าย:
esxcli network firewall ruleset set --ruleset-id snmp --allowed-all true
esxcli network firewall ruleset set --ruleset-id snmp --enabled trueหรือคุณสามารถอนุญาตทราฟฟิกขาเข้าจากที่อยู่ IP ของเซิร์ฟเวอร์การมอนิเตอร์หรือซับเน็ต IP ที่เซิร์ฟเวอร์ SNMP ของคุณตั้งอยู่:
esxcli network firewall ruleset set --ruleset-id snmp --allowed-all false
esxcli network firewall ruleset allowedip add --ruleset-id snmp --ip-address 192.168.100.0/24
esxcli network firewall ruleset set --ruleset-id snmp --enabled trueตอนนี้คุณสามารถตรวจสอบโฮสต์ VMWare ESXi ของคุณผ่าน SNMP
เปลี่ยนการตั้งค่า SNMP บนโฮสต์ ESXi โดยใช้ PowerCLI
หากคุณต้องการกำหนดค่าพารามิเตอร์ SNMP อย่างรวดเร็วบนโฮสต์ ESXi หลายโฮสต์ คุณสามารถใช้สคริปต์ PowerCLI นี้:
$ESXi = 'mun-esxi01'
$Community = 'Public'
$Target = '192.168.99.99'
$Port = '161'#Connection to an ESXi host
Connect-VIServer -Server $sESXiHost
#Clearing the current SNMP settings
Get-VMHostSnmp | Set-VMHostSnmp -ReadonlyCommunity @()
#Configure SNMP parameters
Get-VMHostSnmp | Set-VMHostSnmp -Enabled:$true -AddTarget -TargetCommunity $Community -TargetHost $Target -TargetPort $Port -ReadOnlyCommunity $Community
#Display the current SNMP parameters
$Cmd= Get-EsxCli -VMHost $ESXiHost
$Cmd.System.Snmp.Get()หากคุณมีสิทธิ์การใช้งาน VMWare Enterprise Plus ขั้นสูง คุณสามารถกำหนดค่าพารามิเตอร์ SNMP บนโฮสต์ ESXi ของคุณโดยใช้โปรไฟล์โฮสต์ (การจัดการ -> โปรไฟล์โฮสต์ -> โปรไฟล์ของคุณ -> การกำหนดค่าตัวแทน SNMP)
การกำหนดค่า VMWare ESXi SNMPv3
เราได้กล่าวถึงวิธีเปิดใช้งานและกำหนดค่าตัวแทน SNMP v1 และ v2 บนโฮสต์ ESXi ข้างต้น ตั้งแต่ ESXi 5.1 เป็นต้นไป จะมีการใช้เวอร์ชันโปรโตคอลที่ทันสมัยกว่า: SNMP v3 ใช้คำสั่งต่อไปนี้เพื่อกำหนดค่า SNMPv3 ที่ปลอดภัยยิ่งขึ้น
ตั้งค่าการตรวจสอบสิทธิ์และโปรโตคอลการเข้ารหัส:
esxcli system snmp set -a MD5 -x AES128สร้างแฮชสำหรับการพิสูจน์ตัวตนและรหัสผ่านการเข้ารหัส (แทนที่
authpassและ
privhashด้วยรหัสผ่านของคุณ):
esxcli system snmp hash --auth-hash authpass --priv-hash privhash --raw-secretใช้แฮช (authhash และ privhash) เพิ่มผู้ใช้:
esxcli system snmp set -e yes -C snmp@a-d.site -u snmpuser/authhash/privhash/privจากนั้นระบุที่อยู่เป้าหมาย SNMP:
esxcli system snmp set -v3targets 192.168.99.99@161/user/priv/trapคุณสามารถตรวจสอบการกำหนดค่า SNMP จากระยะไกลโดยใช้ Linux
snmpwalk เครื่องมือ :
snmpwalk -v3 -u snmpuser -l AuthPriv -a SHA -A P@ssw0rd1 -x AES-X P@ssword2 192.168.1.120


