การติดตั้ง snmpd และการตั้งค่า shorewall บน Ubuntu 14.04 LTS

ในบทความนี้จะเกี่ยวกับการตั้งค่า snmpd บน ubuntu รวมถึงการเปิด port firewall ด้วยโปรแกรม Shorewall ดังนี้

วิธีการติดตั้ง snmpd, shorewall บน ubuntu 14.04 LTS

1) ทำการติดตั้งโปรแกรม snmpd และ shorewall ดังนี้

sudo apt-get install -y snmp snmpd shorewall

2) ทำการติดตั้ง mib เพิ่มเติมดังนี้

sudo apt-get -y install snmp-mibs-downloader

3) วิธีการทดสอบการว่าการใช้งาน snmp สามารถใช้งานหรือยังดังนี้

sudo snmpwalk -Os -c public -v 2c localhost HOST-RESOURCES-MIB::hrSystemProcesses.0

4) ทำการตั้งค่า community เพิ่มเติม (ไม่ควรใช้ public) โดยการแก้ไฟล์ดังนี้

sudo nano /etc/snmp/snmpd.conf

– เพิ่มข้อความดังนี้

...

# Listen for connections from the local system only
#agentAddress udp:127.0.0.1:161

...

view systemonly included .1.3.6.1.2.1.1
view systemonly included .1.3.6.1.2.1.25.1
view systemonly included .1

                      # Full access from the local $
#rocommunity public localhost
                      # Default access to basic sys$
#rocommunity public default -V systemonly
rocommunity happy default -V systemonly

...

5) ทำการ restart snmpd

sudo service snmpd restart

6) ทดสอบ snmpwalk อีกครั้งจะพบ Error ดังนี้

sudo snmpwalk -Os -c public -v 2c localhost HOST-RESOURCES-MIB::hrSystemProcesses.0
Timeout: No Response from localhost

7) ลองทดสอบอีกครั้งโดยเปลี่ยน community จาก public เป็น happy ดังนี้

sudo snmpwalk -Os -c happy -v 2c localhost HOST-RESOURCES-MIB::hrSystemProcesses.0
hrSystemProcesses.0 = Gauge32: 34

8) เราสามารถดูค่า mib ทั้งหมดได้ดังนี้ (เรื่องจากเราเปิด view .1 ซึ่งหมายถึงเปิดทั้งหมด โดยปกติ default จะไม่แสดงทั้งหมด)

sudo snmpwalk -Os -c happy -v 2c localhost

9) สำหรับ snmpd จะใช้ port 161 UDP ซึ่งจะต้องตั้งค่า shorewall ให้เสร็จก่อน โดยมีขั้นตอนการติดตั้งแบบรวดเร็วดังนี้

– ทำการสร้าง default config

sudo cp /usr/share/doc/shorewall/examples/one-interface/zones /etc/shorewall
sudo cp /usr/share/doc/shorewall/examples/one-interface/interfaces /etc/shorewall
sudo cp /usr/share/doc/shorewall/examples/one-interface/policy /etc/shorewall
sudo cp /usr/share/doc/shorewall/examples/one-interface/rules /etc/shorewall

– ทำการตั้ง startup shorewall อัตโนมัติ

sudo nano /etc/default/shorewall

– ทำการแก้ไข startup จาก 0 เป็น 1

# prevent startup with default configuration
# set the following varible to 1 in order to allow Shorewall to start

startup=1 
...

– จากนั้นทำการแก้ไข rule เพื่อเพิ่ม port 161 udp ดังนี้

sudo nano /etc/shorewall/rules

– เพิ่มข้อความในส่วนท้ายไฟล์ดังนี้

...
# Permit all ICMP traffic FROM the firewall TO the net zone

ACCEPT $FW net icmp

#SSH
ACCEPT net:192.168.99.0/24 fw tcp 22
#SNMP
ACCEPT net:192.168.99.0/24 fw udp 161

– ทำการ restart shorewall ดังนี้

sudo service shorewall restart

8) เราสามารถทดสอบ query snmp จากเครื่องอื่น ได้ดังนี้ (คำสั่งนี้สั่งบนเครื่องอื่นที่ต้องการดึงค่า)

sudo snmpwalk -Os -c happy -v 2c 192.168.99.10

สามารถอ่านรายละเอียดการติดตั้งและตั้งค่า shorewall เพิ่มเติมได้ที่
http://opensource.cc.psu.ac.th/%E0%B8%95%E0%B8%B4%E0%B8%94%E0%B8%95%E0%B8%B1%E0%B9%89%E0%B8%87_shorewall_%E0%B8%9A%E0%B8%99_ubuntu

Comments are closed.