mib 파일 등록하기 (ubuntu에 넣는 방법)

저는 다운로드 받은 파일에 확장자가 txt가 붙었네요.

확장자가 붙은 경우 txt 확장자를 제거해주시거나, ubuntu로 옮긴 후 확장자 제거해 주세요.

1. 윈도우즈

C:\Users\test\Downloads>scp .\FORTINET-CORE-MIB.txt .\FORTINET-FORTIGATE-MIB.txt logmgmt@192.168.0.100:~
ID@192.168.0.100's password:
FORTINET-CORE-MIB.txt                                                                 100%   15KB   4.9MB/s   00:00
FORTINET-FORTIGATE-MIB.txt                                                            100%  397KB  24.2MB/s   00:00

C:\Users\test\Downloads>

 

2. ubuntu

logmgmt@syslogserver:~$ ls -al
total 8492
drwxr-x--- 14 logmgmt logmgmt    4096  2월  6 15:55 .
drwxr-xr-x  3 root    root       4096 11월 28 13:53 ..
-rw-------  1 logmgmt logmgmt   43176  2월  6 12:26 .bash_history
-rw-r--r--  1 logmgmt logmgmt     220 11월 28 13:53 .bash_logout
-rw-r--r--  1 logmgmt logmgmt    3771 11월 28 13:53 .bashrc
drwx------ 11 logmgmt logmgmt    4096  1월 12 16:59 .cache
drwx------ 11 logmgmt logmgmt    4096 11월 28 18:07 .config
-rw-------  1 logmgmt logmgmt      20 12월 28 10:44 .lesshst
drwx------  5 logmgmt logmgmt    4096  1월 12 17:15 .local
-rw-r--r--  1 logmgmt logmgmt     807 11월 28 13:53 .profile
-rw-------  1 logmgmt logmgmt       5  1월 12 16:44 .python_history
-rw-r--r--  1 logmgmt logmgmt       0 11월 28 18:04 .sudo_as_admin_successful
-rw-rw-r--  1 logmgmt logmgmt     254 12월 22 17:57 .wget-hsts
-rw-rw-r--  1 logmgmt logmgmt   15309  2월  6 15:55 FORTINET-CORE-MIB.txt
-rw-rw-r--  1 logmgmt logmgmt  406521  2월  6 15:55 FORTINET-FORTIGATE-MIB.txt
-rw-rw-r--  1 logmgmt logmgmt 8134656  1월 15 14:37 elastalert.txt
drwx------  5 logmgmt logmgmt    4096 12월 26 17:51 snap
drwxr-xr-x  2 logmgmt logmgmt    4096 11월 28 16:14 공개
drwxr-xr-x  2 logmgmt logmgmt    4096 11월 28 16:14 다운로드
drwxr-xr-x  2 logmgmt logmgmt    4096 11월 28 16:14 문서
drwxr-xr-x  2 logmgmt logmgmt    4096 11월 28 16:14 바탕화면
drwxr-xr-x  2 logmgmt logmgmt    4096 11월 28 16:14 비디오
drwxr-xr-x  2 logmgmt logmgmt    4096 11월 28 16:14 사진
drwxr-xr-x  2 logmgmt logmgmt    4096 11월 28 16:14 음악
drwxr-xr-x  2 logmgmt logmgmt    4096 11월 28 16:14 템플릿
logmgmt@syslogserver:~$ sudo mv ./FORTINET-CORE-MIB.txt ./FORTINET-FORTIGATE-MIB.txt /usr/share/snmp/mibs/ietf
[sudo] password for logmgmt:
logmgmt@syslogserver:~$ cd /usr/share/snmp/mibs/ietf
logmgmt@syslogserver:/usr/share/snmp/mibs/ietf$ ls -al | grep FORTINET
-rw-rw-r-- 1 logmgmt logmgmt  15309  2월  6 15:55 FORTINET-CORE-MIB.txt
-rw-rw-r-- 1 logmgmt logmgmt 406521  2월  6 15:55 FORTINET-FORTIGATE-MIB.txt
logmgmt@syslogserver:/usr/share/snmp/mibs/ietf$ sudo mv ./FORTINET-CORE-MIB.txt ./FORTINET-CORE-MIB
logmgmt@syslogserver:/usr/share/snmp/mibs/ietf$ sudo mv ./FORTINET-FORTIGATE-MIB.txt ./FORTINET-FORTIGATE-MIB
logmgmt@syslogserver:/usr/share/snmp/mibs/ietf$ ls -al | grep FORTINET
-rw-rw-r-- 1 logmgmt logmgmt  15309  2월  6 15:55 FORTINET-CORE-MIB
-rw-rw-r-- 1 logmgmt logmgmt 406521  2월  6 15:55 FORTINET-FORTIGATE-MIB
logmgmt@syslogserver:/usr/share/snmp/mibs/ietf$ sudo chown root:root ./FORTINET-*
logmgmt@syslogserver:/usr/share/snmp/mibs/ietf$ ls -al | grep FORTINET
-rw-rw-r-- 1 root root  15309  2월  6 15:55 FORTINET-CORE-MIB
-rw-rw-r-- 1 root root 406521  2월  6 15:55 FORTINET-FORTIGATE-MIB
logmgmt@syslogserver:/usr/share/snmp/mibs/ietf$

 

2.1 mib 파일명 체크: 2.1.3의 확장자 없애기를 하셔야 에러가 없습니다.

2.1.1 확장자 txt 일 경우

root@syslogserver:/usr/share/snmp/mibs/ietf# mv ./FORTINET-CORE-MIB ./FORTINET-CORE-MIB.txt
root@syslogserver:/usr/share/snmp/mibs/ietf# mv ./FORTINET-FORTIGATE-MIB ./FORTINET-FORTIGATE-MIB.txt
root@syslogserver:/usr/share/snmp/mibs/ietf# systemctl restart snmp-exporter.service
root@syslogserver:/usr/share/snmp/mibs/ietf# systemctl status snmp-exporter.service | more
● snmp-exporter.service - Prometheus SNMP Exporter Service
     Loaded: loaded (/etc/systemd/system/snmp-exporter.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2024-02-06 15:29:18 KST; 23s ago
   Main PID: 2631842 (snmp_exporter)
      Tasks: 9 (limit: 19052)
     Memory: 10.7M
        CPU: 136ms
     CGroup: /system.slice/snmp-exporter.service
             └─2631842 /usr/local/bin/snmp_exporter --config.file=/opt/snmp_exporter/snmp.yml

 2월 06 15:29:18 syslogserver systemd[1]: Started Prometheus SNMP Exporter Service.
 2월 06 15:29:18 syslogserver snmp_exporter[2631842]: ts=2024-02-06T06:29:18.664Z caller=main.go:194 level=info msg="Starting snmp_exporter" version="(version=0.25.0, branch=HEAD, revision=9c42d6c87
4d479314e612bca69558c81f8e26287)" concurrency=1
 2월 06 15:29:18 syslogserver snmp_exporter[2631842]: ts=2024-02-06T06:29:18.664Z caller=main.go:195 level=info build_context="(go=go1.21.5, platform=linux/amd64, user=root@880115266f70, date=202312
10-10:05:18, tags=netgo)"
 2월 06 15:29:18 syslogserver snmp_exporter[2631842]: ts=2024-02-06T06:29:18.758Z caller=tls_config.go:274 level=info msg="Listening on" address=[::]:9116
 2월 06 15:29:18 syslogserver snmp_exporter[2631842]: ts=2024-02-06T06:29:18.758Z caller=tls_config.go:277 level=info msg="TLS is disabled." http2=false address=[::]:9116
 2월 06 15:29:23 syslogserver snmp_exporter[2631842]: ts=2024-02-06T06:29:23.950Z caller=collector.go:393 level=info auth=public_v2 target=192.168.104.1 module=fortinet_fortigate msg="Error scraping
 target" err="error walking target 192.168.104.1: marshal: marshalPDU: unable to marshal varbind list: unable to marshal OID: Invalid object identifier"
 2월 06 15:29:38 syslogserver snmp_exporter[2631842]: ts=2024-02-06T06:29:38.952Z caller=collector.go:393 level=info auth=public_v2 target=192.168.104.1 module=fortinet_fortigate msg="Error scraping
 target" err="error walking target 192.168.104.1: marshal: marshalPDU: unable to marshal varbind list: unable to marshal OID: Invalid object identifier"
 root@syslogserver:/usr/share/snmp/mibs/ietf#

 

2.1.2 확장자 mib 일 경우

root@syslogserver:/usr/share/snmp/mibs/ietf# mv ./FORTINET-CORE-MIB.txt ./FORTINET-CORE-MIB.mib
root@syslogserver:/usr/share/snmp/mibs/ietf# mv ./FORTINET-FORTIGATE-MIB.txt ./FORTINET-FORTIGATE-MIB.mib
root@syslogserver:/usr/share/snmp/mibs/ietf# systemctl restart snmp-exporter.service
root@syslogserver:/usr/share/snmp/mibs/ietf# systemctl status snmp-exporter.service | more
● snmp-exporter.service - Prometheus SNMP Exporter Service
     Loaded: loaded (/etc/systemd/system/snmp-exporter.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2024-02-06 15:33:20 KST; 3s ago
   Main PID: 2631948 (snmp_exporter)
      Tasks: 8 (limit: 19052)
     Memory: 15.9M
        CPU: 142ms
     CGroup: /system.slice/snmp-exporter.service
             └─2631948 /usr/local/bin/snmp_exporter --config.file=/opt/snmp_exporter/snmp.yml

 2월 06 15:33:20 syslogserver systemd[1]: Started Prometheus SNMP Exporter Service.
 2월 06 15:33:20 syslogserver snmp_exporter[2631948]: ts=2024-02-06T06:33:20.549Z caller=main.go:194 level=info msg="Starting snmp_exporter" version="(version=0.25.0, branch=HEAD, revision=9c42d6c87
4d479314e612bca69558c81f8e26287)" concurrency=1
 2월 06 15:33:20 syslogserver snmp_exporter[2631948]: ts=2024-02-06T06:33:20.549Z caller=main.go:195 level=info build_context="(go=go1.21.5, platform=linux/amd64, user=root@880115266f70, date=202312
10-10:05:18, tags=netgo)"
 2월 06 15:33:20 syslogserver snmp_exporter[2631948]: ts=2024-02-06T06:33:20.667Z caller=tls_config.go:274 level=info msg="Listening on" address=[::]:9116
 2월 06 15:33:20 syslogserver snmp_exporter[2631948]: ts=2024-02-06T06:33:20.667Z caller=tls_config.go:277 level=info msg="TLS is disabled." http2=false address=[::]:9116
 2월 06 15:33:23 syslogserver snmp_exporter[2631948]: ts=2024-02-06T06:33:23.951Z caller=collector.go:393 level=info auth=public_v2 target=192.168.104.1 module=fortinet_fortigate msg="Error scraping
 target" err="error walking target 192.168.104.1: marshal: marshalPDU: unable to marshal varbind list: unable to marshal OID: Invalid object identifier"
root@syslogserver:/usr/share/snmp/mibs/ietf#

 

2.1.3 확장자가 없을 경우

root@syslogserver:/usr/share/snmp/mibs/ietf# mv ./FORTINET-CORE-MIB.mib ./FORTINET-CORE-MIB
root@syslogserver:/usr/share/snmp/mibs/ietf# mv ./FORTINET-FORTIGATE-MIB.mib ./FORTINET-FORTIGATE-MIB
root@syslogserver:/usr/share/snmp/mibs/ietf# systemctl restart snmp-exporter.service
root@syslogserver:/usr/share/snmp/mibs/ietf# systemctl status snmp-exporter.service | more
● snmp-exporter.service - Prometheus SNMP Exporter Service
     Loaded: loaded (/etc/systemd/system/snmp-exporter.service; enabled; vendor preset: enabled)
     Active: active (running) since Tue 2024-02-06 15:36:57 KST; 6s ago
   Main PID: 2631988 (snmp_exporter)
      Tasks: 8 (limit: 19052)
     Memory: 17.4M
        CPU: 125ms
     CGroup: /system.slice/snmp-exporter.service
             └─2631988 /usr/local/bin/snmp_exporter --config.file=/opt/snmp_exporter/snmp.yml

 2월 06 15:36:57 syslogserver systemd[1]: Started Prometheus SNMP Exporter Service.
 2월 06 15:36:57 syslogserver snmp_exporter[2631988]: ts=2024-02-06T06:36:57.412Z caller=main.go:194 level=info msg="Starting snmp_exporter" version="(version=0.25.0, branch=HEAD, revision=9c42d6c87
4d479314e612bca69558c81f8e26287)" concurrency=1
 2월 06 15:36:57 syslogserver snmp_exporter[2631988]: ts=2024-02-06T06:36:57.412Z caller=main.go:195 level=info build_context="(go=go1.21.5, platform=linux/amd64, user=root@880115266f70, date=202312
10-10:05:18, tags=netgo)"
 2월 06 15:36:57 syslogserver snmp_exporter[2631988]: ts=2024-02-06T06:36:57.507Z caller=tls_config.go:274 level=info msg="Listening on" address=[::]:9116
 2월 06 15:36:57 syslogserver snmp_exporter[2631988]: ts=2024-02-06T06:36:57.507Z caller=tls_config.go:277 level=info msg="TLS is disabled." http2=false address=[::]:9116
root@syslogserver:/usr/share/snmp/mibs/ietf#

 

'기술 노트 > ubuntu' 카테고리의 다른 글

InfluxDB 2.x 설치하기  (1) 2024.03.15
sudo 권한 부여하기  (0) 2024.03.11
elastalert2 rules 설정  (0) 2024.01.15
elastalert2 설치하기  (0) 2024.01.15
grafana 알람 설정  (0) 2024.01.08

최신 버전 다운로드 받기

저는 ubuntu에서 설치하기 위해 아래 파일을 다운로드 했습니다.

snmp_exporter-0.25.0.linux-amd64.tar.gz

https://github.com/prometheus/snmp_exporter/releases

 

Releases · prometheus/snmp_exporter

SNMP Exporter for Prometheus. Contribute to prometheus/snmp_exporter development by creating an account on GitHub.

github.com

 

root@syslogserver:/opt# wget https://github.com/prometheus/snmp_exporter/releases/download/v0.25.0/snmp_exporter-0.25.0.linux-amd64.tar.gz
--2023-12-21 12:08:50--  https://github.com/prometheus/snmp_exporter/releases/download/v0.25.0/snmp_exporter-0.25.0.linux-amd64.tar.gz
Resolving github.com (github.com)... 20.200.245.247
Connecting to github.com (github.com)|20.200.245.247|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://objects.githubusercontent.com/github-production-release-asset-2e65be/31185891/aaa12aa4-ebfa-4e22-b061-b274132432f3?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20231221%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20231221T030851Z&X-Amz-Expires=300&X-Amz-Signature=518fc3871a119d47abd6a0d64285244b57db69c2e019be3694a25e3ae0378f8f&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=31185891&response-content-disposition=attachment%3B%20filename%3Dsnmp_exporter-0.25.0.linux-amd64.tar.gz&response-content-type=application%2Foctet-stream [following]
--2023-12-21 12:08:51--  https://objects.githubusercontent.com/github-production-release-asset-2e65be/31185891/aaa12aa4-ebfa-4e22-b061-b274132432f3?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20231221%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20231221T030851Z&X-Amz-Expires=300&X-Amz-Signature=518fc3871a119d47abd6a0d64285244b57db69c2e019be3694a25e3ae0378f8f&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=31185891&response-content-disposition=attachment%3B%20filename%3Dsnmp_exporter-0.25.0.linux-amd64.tar.gz&response-content-type=application%2Foctet-stream
Resolving objects.githubusercontent.com (objects.githubusercontent.com)... 185.199.111.133, 185.199.110.133, 185.199.109.133, ...
Connecting to objects.githubusercontent.com (objects.githubusercontent.com)|185.199.111.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 8441503 (8.0M) [application/octet-stream]
Saving to: ‘snmp_exporter-0.25.0.linux-amd64.tar.gz’

snmp_exporter-0.25.0.linux-amd64.tar.gz           100%[===========================================================================================================>]   8.05M  --.-KB/s    in 0.1s

2023-12-21 12:08:52 (63.5 MB/s) - ‘snmp_exporter-0.25.0.linux-amd64.tar.gz’ saved [8441503/8441503]

root@syslogserver:/opt# ls -al
total 8252
drwxr-xr-x  2 root root    4096 12월 21 12:08 .
drwxr-xr-x 20 root root    4096 11월 28 13:53 ..
-rw-r--r--  1 root root 8441503 12월 10 19:07 snmp_exporter-0.25.0.linux-amd64.tar.gz
root@syslogserver:/opt# tar zxvf ./snmp_exporter-0.25.0.linux-amd64.tar.gz
snmp_exporter-0.25.0.linux-amd64/
snmp_exporter-0.25.0.linux-amd64/snmp.yml
snmp_exporter-0.25.0.linux-amd64/LICENSE
snmp_exporter-0.25.0.linux-amd64/NOTICE
snmp_exporter-0.25.0.linux-amd64/snmp_exporter
root@syslogserver:/opt#
root@syslogserver:/opt# mv ./snmp_exporter-0.25.0.linux-amd64 ./snmp_exporter
root@syslogserver:/opt#

 

설정은 아래 참조

snmp-exporter-0.25 버전에서는 아래와 같은 방식으로 수정하네요.

/opt/snmp_exporter/snmp.yml 파일 맨 상단에 있습니다.

# WARNING: This file was auto-generated using snmp_exporter generator, manual changes will be lost.
auths:
#  public_v1:
#    community: public
#    security_level: noAuthNoPriv
#    auth_protocol: MD5
#    priv_protocol: DES
#    version: 1
  public_v2:
    community: public
#    security_level: noAuthNoPriv
#    auth_protocol: MD5
#    priv_protocol: DES
    version: 2
modules:
  apcups:
    walk:

 

위 설정이 안되면 아래 링크를 참조하세요~

https://dirt-spoon.tistory.com/77

 

snmp_exporter 설정

설정 파일 위치는 설치자에 따라 다를 겁니다. 제가 설치한 방법을 따라 하셨다면 아래의 경로에 해당 파일이 존재 합니다. "/opt/snmp_exporter/snmp.yml" 워낙 방대해서 기본 설정이외 수정한 부분을

dirt-spoon.tistory.com

 

snmp_exporter 프로세스 만들기

  • user: snmp_exporter
  • Process: snmp_exporter
root@syslogserver:/opt/snmp_exporter# ln -s /opt/snmp_exporter/snmp_exporter /usr/local/bin/snmp_exporter
root@syslogserver:/opt/snmp_exporter# useradd --system snmp_exporter
root@syslogserver:/opt/snmp_exporter# cd /etc/systemd/system/
root@syslogserver:/opt/snmp_exporter# echo '
[Unit]
Description=Prometheus SNMP Exporter Service
After=network.target

[Service]
Type=simple
User=snmp_exporter
ExecStart=/usr/local/bin/snmp_exporter --config.file="/opt/snmp_exporter/snmp.yml"

[Install]
WantedBy=multi-user.target' > /etc/systemd/system/snmp-exporter.service
root@syslogserver:/opt/snmp_exporter# ls -al /etc/systemd/system | grep snmp
-rw-r--r--  1 root root  237 12월 21 12:19 snmp-exporter.service
root@syslogserver:/opt/snmp_exporter# systemctl daemon-reload
root@syslogserver:/opt/snmp_exporter# systemctl enable snmp-exporter.service
Created symlink /etc/systemd/system/multi-user.target.wants/snmp-exporter.service → /etc/systemd/system/snmp-exporter.service.
root@syslogserver:/opt/snmp_exporter#

 

프로세스 확인하기

root@syslogserver:/opt/snmp_exporter# systemctl restart snmp-exporter.service
root@syslogserver:/opt/snmp_exporter# ps -ef | grep snmp-exporter
root      188764  167915  0 12:23 pts/5    00:00:00 grep --color=auto snmp-exporter
root@syslogserver:/opt/snmp_exporter#

'기술 노트 > ubuntu' 카테고리의 다른 글

snap으로 grafana 설치 후 grafana.ini 설정  (0) 2023.12.21
grafana 설치하기  (1) 2023.12.21
snmp-mibs-downloader snmp snmpd 다운로드  (0) 2023.12.21
prometheus.yml 설정  (0) 2023.12.21
Prometheus 설치  (1) 2023.12.21

+ Recent posts