Agenda: snmpv3-ubuntu.txt

File snmpv3-ubuntu.txt, 3.9 KB (added by hervey, 9 years ago)
Line 
1How to setup SNMPv3, a very brief document for Dave to elaborate and
2do a better job on since I suck at writing documentation and he
3doesn't ;-) --Wes:
4
5Note: SHA authentication and DES/AES encryption support is only available
6if you have OpenSSL installed.
7
8Note: encryption support now *is* enabled in the binary releases downloadable
9from the net-snmp web site.
10
11Note: this description assumes you're using the software compiled from
12source, and so installed using the default prefix location (/usr/local).
13If you're working with a vendor-provided system, or have configured
14things with a different prefix, you'll need to adjust locations accordingly.
15
16CREATING THE FIRST USER:
17------------------------
18  First, you need to create a new snmpv3 user and give them rights to
19  do things:
20
21    net-snmp-config --create-snmpv3-user -a "my_password" myuser
22
23  WARNING: SNMPv3 pass phrases must be at least 8 characters long!
24
25  The above line creates the user "myuser" with a password of
26  "my_password" (and uses MD5 and DES for protection).  (Note that
27  encryption support isn't enabled in the binary releases downloadable
28  from the net-snmp web site.)  net-snmp-config will also add a line
29  to your snmpd.conf file to let that user have read/write access to
30  your agent.  You may want to change this in your snmpd.conf file
31  (see the snmpd.conf manual page).  Run net-snmp-config --help for
32  more information about it.
33
34  Start the agent and test your setup:
35    /usr/local/sbin/snmpd
36       [...wait a few seconds...  It will run in the background and
37        return you to your shell immediately.]
38
39    snmpget -v 3 -u myuser -l authNoPriv -a MD5 -A my_password localhost sysUpTime.0
40       [ this should return information about how long your agent has been up]
41 
42    snmpget -v 3 -u myuser -l authPriv   -a MD5 -A my_password
43                                         -x DES -X my_password localhost sysUpTime.0
44       [ this should return similar information, but encrypts the transmission ]
45
46CREATING A SECOND USER:
47-----------------------
48  Start the agent (if you didn't do so above).
49
50  You can create as many users as you like using the above method, but
51  this details another way of doing it while the agent is running by
52  modifying the user database using the snmp protocol itself:
53
54  Now, lets create a second user using the first user (just for fun)
55  for both authentication purposes and as a template (or "cloning
56  source"):
57
58    snmpusm -v 3 -u myuser -l authNoPriv -a MD5 -A my_password localhost create wes myuser
59
60  The above should have created the user "wes" with the same password as
61  the "myuser" user.  So then, you need to change his password using:
62
63    snmpusm -v 3 -u wes -l authNoPriv -a MD5 -A my_password localhost passwd my_password new_passphrase
64
65  See, wasn't that easy?  You can now create users.  Wheeee....
66
67  But, you'll have to add a configuration line that allows them access
68  to do things.  Do this with another "rwuser" line in your
69  /usr/local/share/snmp/snmpd.conf file (you'll need to stop and start
70  the agent again, or send the agent a SIGHUP signal):
71
72    rwuser wes
73
74  Or, optional use the "rouser" token instead of the "rwuser" token to
75  only grant them read-only access.
76
77  Now, test your new user:
78
79    snmpget -v 3 -u wes -l authNoPriv -a MD5 -A new_passphrase localhost sysUpTime.0
80
81
82FURTHER STUDIES:
83---------------
84
85Tired of all those command line authentication options?
86----------------------------------------
87put something like this in your $HOME/.snmp/snmp.conf file (make it
88readable only by you!!!):
89
90  defSecurityName wes
91  defContext ""
92  defAuthType MD5
93  defSecurityLevel authNoPriv
94  defAuthPassphrase new_passphrase
95  defVersion 3
96
97And this is in place the last of the above example lines boils down to:
98
99  snmpget localhost sysUpTime.0
100
101Which is about as simple as I can make it for ya ;-)
102