먼저 이 글에서 언급할 내용들은 PC가 2대 필요합니다.

한 대는 인터넷이 되지 않는 환경에 있는 우분투

나머지 한 대는 인터넷에 연결이 되어있는 우분투

 

인터넷이 두 대 모두 연결이 되어있다면 검색해도 나오는 걸 굳이 이렇게 글로 남기진 않겠죠?

인터넷이 된다면 레드햇 계열에서 사용하는 yum과 비슷한 역할을 하는 apt-get이 있으니 걱정이 없으니까요

 

어차피 인터넷이 않는데 SNMP를 설치해서 뭐하나 싶으신 분들이 있을 수도 있겠는대요..

이번에 폐쇄망 환경에 있는 우분투에 SNMP를 설치해야하는 일이 있어서 혹시나 필요하신분 있으실까 올려봅니다 ~

 

또 굳이 이 글에서 말하는 방법으로 안하셔도 됩니다.

구글에 조금만 검색해보면 .deb 파일을 쉽게 구하실 수 있습니다.

저는 주로 레드햇계열을 사용해서 우분투는 이번에 처음이라 deb 검색 자체가 좀 어렵게 느껴지더라구요

RPM같은 경우는 rpmsearch 같은 곳에 바로 들어가서 검색하면 되는데

데비안계열 패키지는 싸이트는 있는데 뭔가 좀.. 헷갈리고 그렇더라구요..

더구나 rpm이나 deb나 의존성이라는게 은근 귀찮고 무시 못할 존재기 때문에..

그렇다고해서 안된다는건 아니고 좀 찾아보면 바로 패키지는 나옵니다. 다만 좀 더 쉽게 deb 패키지를 구할 수 있는 방법이 있습니다.

또 꼭 패키지가 아니어도 소스를 손수 컴파일하셔서 설치하셔도 되구요

 

어쨋든 이 방법은 크게 복잡하진 않습니다.

apt-get을 사용해서 패키지를 설치하고 나면 특정 디렉토리에 deb 파일을 남겨두게 되는데 그냥 그걸 가져와서 사용하는겁니다.

우선 snmp를 설치하는 글이니 인터넷이 되는 우분투에서 apt-get을 이용해 snmp를 설치 해줍니다.

아 설치하기 전에 기존에 apt-get을 이용해서 패키지를 설치한적이 있다면 snmp 패키지와 섞이지 않도록

apt-get clean을 먼저 입력해줍니다. 그러면 deb가 저장되는 디렉토리에 있던 기존 파일들이 삭제가 됩니다.

그리고 아래 두 줄을 입력합니다.

 

apt-get install snmp

apt-get install snmpd

 

이렇게 두 줄만 입력해주면 snmp관련 패키지들이 바로 설치가됩니다.

제대로 설치가 됬다면 netstat을 입력했을 때 localhost:161 혹은 127.0.0.1:161 을 리스닝하고 있는 상태일 겁니다.

그럼 이제 /var/cache/apt/archives/ 로 들어가봅니다.

들어가보면 여러 deb 파일들이 있을텐데요.

위에서 먼저 말했던 apt-get clean을 쳐주셨으면 깔끔하게 snmp 관련 패키지들과 lock파일, partial이라는 디렉토리가 있을겁니다.

lock이랑 partial은 정확히 뭔지는 모르겠내요..

저는 저 경로로 들어가보니 아래 파일들이 있었습니다.

풀네임이 아닌건 따로 적어놔서 이름만 써놓은 상태라 이렇내요

 

snmpd_5.4.3
libsnmp15
libsnmp-base
libperl5
perl-base
libsensors4
libwrap0
snmp_5.4.3
tcpd_7.6
perl

perl-modules
smistrip
snmp-mibs-downloader

 

그냥 각각 패키지들이 뭔지 알아보진 않았고 단순히 인터넷이 되지 않는 우분투에서 구동만 시키기 위해서 바로바로 작업을 했습니다.

저 파일들을 이제 usb에 넣어도 되고 cd로 구워도 되고 방법은 많습니다. 원하시는 방법으로 파일을 옮겨주시구요

되도록이면 한 디렉토리 내에 몰아서 옮기시는게 옮기고 나서 설치할 때 좀 편합니다.

인터넷이 되지 않는 환경에 있는 우분투로 옮기셨으면 이제 가져온 패키지들을 설치합니다.

가령 패키지들을 옮긴 디렉토리가 ~/snmp_pkg/ 라면

 

dpkg -i ~/snmp_pkg/*.deb 혹은 dpkg -i ~/snmp_pkg/*

 

이렇게 입력해주시면 저 파일들이 서로 의존성을 갖기 때문에 자체적으로 판별해서 설치를 하게 됩니다.

처음에 모르고 한 개 한 개 따로따로 하다가 귀찮아서 * 해줬더니 알아서들 설치되더라구요

에러가 없이 설치가 됬다면 설치 끝입니다.

SNMP 설치가 끝나고 설정을 해야 정상적으로 사용이 가능할텐데요

설정부분은 예전에 올린 FreeBSD에서 SNMP 설정하는 방법과 크게 다른건 없어보이더라구요.

 

아 그리고 저 위에 패키지 목록에 보면 snmp-mibs-downloader 라는 패키지가 있는데 이 패키지는 이름 그대로

mib들을 추가적으로 다운(?)받아주는 패키지입니다.

추가적으로 mib를 받지 않으면 snmp로 볼 수 있는 정보가 꽤 한정적이어서 cacti 같은 툴을 사용하실 목적이시라면 꼭 설치해주셔야합니다..

신기한건 eth0를 내려놓고 사용해봤는데도 mib 파일들이 생성 된다는 겁니다.

아마 snmp 설치하면서 따로 생성됬던 파일들을 가지고 mib 파일로 재생성해주지 않나 싶더라구요.

사용방법은 그냥 패키지를 설치하면 알아서 mib를 추가 생성해줍니다.

알아서 생성이 안된다면 패키지 설치 후 그냥 download-mibs 라고 입력해주면 생성이 됩니다.

추가 생성된 mib 들은 /usr/share/mibs/에 /netsnmp/ 디렉토리에 저장되어있습니다.

이걸 사용하려면 /etc/snmp/snmp.conf 를 수정해줘야하는대요

저 파일을 열면 처음 몇 줄은 주석이고 딱 한 줄만 활성화 되어있는 상태일겁니다. 

 

mibs :

 

아마 저 상태일텐데 저 부분을 주석처리 해버리면 됩니다.

구글링해보니 mibs +ALL도 된다고하는데 저는 안되더라구요..

다른글 보니 주석처리하면 된다길래 해봤는데 바로되더라구요

 

mib가 추가됬는지 안됬는지는 snmpwalk를 이용하면 눈에 확 띄게 달라진걸 확인할 수 있을꺼에요

제대로 적용이 안됬다면 snmpwalk를 사용했을 때 출력되는 양이 상당히 적더라구요

하지만 적용이 되고 나면 엄청난 양의 출력물이..

 

이번 기회에 우분투를 거의 처음 사용해봤는데 명령어가 익숙치 않아서 그렇지

다른 배포판들과 크게 다른건 못 느끼겠더라구요~

느낌은 상당히 다르지만 레드햇계열이나 데비안계열이나 어쨌든 리눅스니 큰 괴리감은 없내요

 

어쨌든 간단하게 나마 SNMP 설치하는 법과 MIB 추가 적용시키는 방법을 적어봤습니다 ~

필요하신분이 있을라나 모르겠지만 틀린 부분이나 수정이 필요한 부분이 있다면 댓글 남겨주시면 수정하겠습니다.

+ Recent posts