[Nut-upsuser] APC AP9630 SNMP AES

Matthias Förste foerste at schlittermann.de
Tue Oct 8 11:00:31 BST 2019


Hello,

i'm trying to monitor a APC Smart-UPS 1000 behind a APC AP9630 Network
Management Card via SNMPv3 using the AES Privacy Protocol.

* OS name and version:
    Debian 10.1
* exact NUT version:
    2.7.4
* NUT installation method:
    from debian package 2.7.4-8
* exact device name and related information
    * Model Number AP9630
    * Hardware Revision 08
    * Manufacture Date 09/18/2018
    * Application Module: sumx v6.5.6 Apr 6 2018 16:00:53
    * APC OS (AOS) v6.5.6 Mar 30 2018 16:51:08

* ups.conf

	[..]

    [foo]
      driver        = snmp-ups
      # 'hostname' is resolvable, tcpdump shows initial snmp udp request and reply
      port          = hostname
      snmp_version  = v3
      secLevel      = authPriv
      # 4 lowercase ascii letters
      secName       = xxxx
      #
      # 16 lower case ascii letters
      authPassword  = xxxxxxxxxxxxxxxx
      # 15 lower case ascii letters
      privPassword  = yyyyyyyyyyyyyyy
      authProtocol  = SHA
      privProtocol  = AES

	[..]

* driver debug output and tcpdump attached in nuttrace & nut.pcap

Searching for 9630 i found some similar reports to mailing list nut-upsuser from 2013, 2014 and 2016 indicating that others have this problem too. The oldest report suggests to use DES instead of AES which kinda works, but i'd very much prefer to not deploy anything using DES nowadays.

I did not find any reports indicating that using AES with nut actually works.

Using snmpget as the same user on the same machine does work with AES however:

	~/.snmp/snmp.conf:
	defSecurityLevel  authPriv
	# same as in ups.conf
	defSecurityName   xxxx
	# same as in ups.conf
	defAuthPassphrase xxxxxxxxxxxxxxxx
	# same as in ups.conf
	defPrivPassphrase xxxxxxxxxxxxxxx
	defAuthType       SHA
	defPrivType       AES

	#doDebugging    1
	debugTokens     all

    $ snmpget hostname .1.3.6.1.2.1.1.2.0
    SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::enterprises.318.1.3.2.7

-- 
  Matthias Förste
-------------- next part --------------
A non-text attachment was scrubbed...
Name: nut.pcap
Type: application/vnd.tcpdump.pcap
Size: 310 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/nut-upsuser/attachments/20191008/6d2ed147/attachment.pcap>
-------------- next part --------------
   0.000000	debug level is '4'
   0.000437	SNMP UPS driver: entering upsdrv_initups()
   0.000459	SNMP UPS driver: entering nut_snmp_init(snmp-ups)
   0.030273	Setting SNMP retries to 5
   0.030288	Setting SNMP timeout to 1 second(s)
   0.053684	SNMP UPS driver: entering load_mib2nut(auto)
   0.053717	trying the new match_sysoid() method
   0.053732	Entering nut_snmp_get_oid()
   0.053755	nut_snmp_get(.1.3.6.1.2.1.1.2.0)
   0.053769	nut_snmp_walk(.1.3.6.1.2.1.1.2.0)
   0.053783	nut_snmp_walk: max. iteration = 1
   0.059538	Can't get sysOID value
   0.059573	load_mib2nut: trying classic method with 'apcc' mib
   0.059588	su_find_info: "ups.model" found
   0.059602	Testing ups.model using OID .1.3.6.1.4.1.318.1.1.1.1.1.1.0
   0.059616	Entering nut_snmp_get_str()
   0.059630	nut_snmp_get(.1.3.6.1.4.1.318.1.1.1.1.1.1.0)
   0.059643	nut_snmp_walk(.1.3.6.1.4.1.318.1.1.1.1.1.1.0)
   0.059657	nut_snmp_walk: max. iteration = 1
   0.059688	load_mib2nut: testOID provided and doesn't match MIB 'apcc'!
   0.059704	load_mib2nut: trying classic method with 'mge' mib
   0.059718	su_find_info: "ups.model" found
   0.059739	Testing ups.model using OID .1.3.6.1.4.1.705.1.1.1.0
   0.059744	Entering nut_snmp_get_str()
   0.059750	nut_snmp_get(.1.3.6.1.4.1.705.1.1.1.0)
   0.059755	nut_snmp_walk(.1.3.6.1.4.1.705.1.1.1.0)
   0.059760	nut_snmp_walk: max. iteration = 1
   0.059769	load_mib2nut: testOID provided and doesn't match MIB 'mge'!
   0.059775	load_mib2nut: trying classic method with 'netvision' mib
   0.059781	su_find_info: "ups.model" found
   0.059786	Testing ups.model using OID .1.3.6.1.4.1.4555.1.1.1.1.1.1.0
   0.059791	Entering nut_snmp_get_str()
   0.059796	nut_snmp_get(.1.3.6.1.4.1.4555.1.1.1.1.1.1.0)
   0.059801	nut_snmp_walk(.1.3.6.1.4.1.4555.1.1.1.1.1.1.0)
   0.059806	nut_snmp_walk: max. iteration = 1
   0.059815	load_mib2nut: testOID provided and doesn't match MIB 'netvision'!
   0.059821	load_mib2nut: trying classic method with 'pw' mib
   0.059826	su_find_info: "ups.model" found
   0.059832	Testing ups.model using OID 1.3.6.1.4.1.534.1.1.2.0
   0.059837	Entering nut_snmp_get_str()
   0.059842	nut_snmp_get(1.3.6.1.4.1.534.1.1.2.0)
   0.059847	nut_snmp_walk(1.3.6.1.4.1.534.1.1.2.0)
   0.059852	nut_snmp_walk: max. iteration = 1
   0.059860	load_mib2nut: testOID provided and doesn't match MIB 'pw'!
   0.059866	load_mib2nut: trying classic method with 'pxgx_ups' mib
   0.059871	su_find_info: "ups.model" found
   0.059876	Testing ups.model using OID 1.3.6.1.4.1.534.1.1.2.0
   0.059881	Entering nut_snmp_get_str()
   0.059887	nut_snmp_get(1.3.6.1.4.1.534.1.1.2.0)
   0.059892	nut_snmp_walk(1.3.6.1.4.1.534.1.1.2.0)
   0.059897	nut_snmp_walk: max. iteration = 1
   0.059905	load_mib2nut: testOID provided and doesn't match MIB 'pxgx_ups'!
   0.059911	load_mib2nut: trying classic method with 'aphel_genesisII' mib
   0.059917	su_find_info: "ups.model" found
   0.059922	Testing ups.model using OID .1.3.6.1.4.1.17373.3.1.1.0
   0.059927	Entering nut_snmp_get_str()
   0.059932	nut_snmp_get(.1.3.6.1.4.1.17373.3.1.1.0)
   0.059937	nut_snmp_walk(.1.3.6.1.4.1.17373.3.1.1.0)
   0.059942	nut_snmp_walk: max. iteration = 1
   0.059951	load_mib2nut: testOID provided and doesn't match MIB 'aphel_genesisII'!
   0.059956	load_mib2nut: trying classic method with 'aphel_revelation' mib
   0.059962	su_find_info: "ups.model" found
   0.059967	Testing ups.model using OID .1.3.6.1.4.1.534.6.6.6.1.1.12.0
   0.059972	Entering nut_snmp_get_str()
   0.059977	nut_snmp_get(.1.3.6.1.4.1.534.6.6.6.1.1.12.0)
   0.059982	nut_snmp_walk(.1.3.6.1.4.1.534.6.6.6.1.1.12.0)
   0.059987	nut_snmp_walk: max. iteration = 1
   0.059995	load_mib2nut: testOID provided and doesn't match MIB 'aphel_revelation'!
   0.060001	load_mib2nut: trying classic method with 'eaton_epdu' mib
   0.060007	su_find_info: "ups.model" found
   0.060012	Testing ups.model using OID 1.3.6.1.4.1.534.6.6.7.1.2.1.2.0
   0.060017	Entering nut_snmp_get_str()
   0.060022	nut_snmp_get(1.3.6.1.4.1.534.6.6.7.1.2.1.2.0)
   0.060027	nut_snmp_walk(1.3.6.1.4.1.534.6.6.7.1.2.1.2.0)
   0.060032	nut_snmp_walk: max. iteration = 1
   0.060049	load_mib2nut: testOID provided and doesn't match MIB 'eaton_epdu'!
   0.060056	load_mib2nut: trying classic method with 'pulizzi_switched1' mib
   0.060061	su_find_info: "ups.model" found
   0.060067	Testing ups.model using OID .1.3.6.1.4.1.20677.2.1.1.0
   0.060072	Entering nut_snmp_get_str()
   0.060077	nut_snmp_get(.1.3.6.1.4.1.20677.2.1.1.0)
   0.060082	nut_snmp_walk(.1.3.6.1.4.1.20677.2.1.1.0)
   0.060087	nut_snmp_walk: max. iteration = 1
   0.060095	load_mib2nut: testOID provided and doesn't match MIB 'pulizzi_switched1'!
   0.060101	load_mib2nut: trying classic method with 'pulizzi_switched2' mib
   0.060106	su_find_info: "ups.model" found
   0.060111	Testing ups.model using OID .1.3.6.1.4.1.20677.2.1.1.0
   0.060116	Entering nut_snmp_get_str()
   0.060121	nut_snmp_get(.1.3.6.1.4.1.20677.2.1.1.0)
   0.060126	nut_snmp_walk(.1.3.6.1.4.1.20677.2.1.1.0)
   0.060132	nut_snmp_walk: max. iteration = 1
   0.060140	load_mib2nut: testOID provided and doesn't match MIB 'pulizzi_switched2'!
   0.060146	load_mib2nut: trying classic method with 'raritan' mib
   0.060151	su_find_info: "ups.model" found
   0.060156	Testing ups.model using OID .1.3.6.1.4.1.13742.1.1.12.0
   0.060161	Entering nut_snmp_get_str()
   0.060166	nut_snmp_get(.1.3.6.1.4.1.13742.1.1.12.0)
   0.060171	nut_snmp_walk(.1.3.6.1.4.1.13742.1.1.12.0)
   0.060176	nut_snmp_walk: max. iteration = 1
   0.060185	load_mib2nut: testOID provided and doesn't match MIB 'raritan'!
   0.060191	load_mib2nut: trying classic method with 'baytech' mib
   0.060196	su_find_info: "ups.model" found
   0.060201	Testing ups.model using OID .1.3.6.1.4.1.4779.1.3.5.2.1.24.1
   0.060206	Entering nut_snmp_get_str()
   0.060211	nut_snmp_get(.1.3.6.1.4.1.4779.1.3.5.2.1.24.1)
   0.060216	nut_snmp_walk(.1.3.6.1.4.1.4779.1.3.5.2.1.24.1)
   0.060221	nut_snmp_walk: max. iteration = 1
   0.060230	load_mib2nut: testOID provided and doesn't match MIB 'baytech'!
   0.060236	load_mib2nut: trying classic method with 'cpqpower' mib
   0.060241	su_find_info: "ups.model" found
   0.060246	Testing ups.model using OID .1.3.6.1.4.1.232.165.3.1.2.0
   0.060251	Entering nut_snmp_get_str()
   0.060256	nut_snmp_get(.1.3.6.1.4.1.232.165.3.1.2.0)
   0.060261	nut_snmp_walk(.1.3.6.1.4.1.232.165.3.1.2.0)
   0.060266	nut_snmp_walk: max. iteration = 1
   0.060274	load_mib2nut: testOID provided and doesn't match MIB 'cpqpower'!
   0.060280	load_mib2nut: trying classic method with 'bestpower' mib
   0.060285	su_find_info: "ups.model" found
   0.060291	Testing ups.model using OID .1.3.6.1.4.1.2947.1.1.2.0
   0.060296	Entering nut_snmp_get_str()
   0.060301	nut_snmp_get(.1.3.6.1.4.1.2947.1.1.2.0)
   0.060306	nut_snmp_walk(.1.3.6.1.4.1.2947.1.1.2.0)
   0.060311	nut_snmp_walk: max. iteration = 1
   0.060319	load_mib2nut: testOID provided and doesn't match MIB 'bestpower'!
   0.060325	load_mib2nut: trying classic method with 'cyberpower' mib
   0.060330	su_find_info: "ups.model" found
   0.060335	Testing ups.model using OID .1.3.6.1.4.1.3808.1.1.1.1.1.1.0
   0.060340	Entering nut_snmp_get_str()
   0.060345	nut_snmp_get(.1.3.6.1.4.1.3808.1.1.1.1.1.1.0)
   0.060351	nut_snmp_walk(.1.3.6.1.4.1.3808.1.1.1.1.1.1.0)
   0.060356	nut_snmp_walk: max. iteration = 1
   0.060364	load_mib2nut: testOID provided and doesn't match MIB 'cyberpower'!
   0.060370	load_mib2nut: trying classic method with 'delta_ups' mib
   0.060375	su_find_info: "ups.model" found
   0.060380	Testing ups.model using OID .1.3.6.1.4.1.2254.2.4.1.2.0
   0.060386	Entering nut_snmp_get_str()
   0.060391	nut_snmp_get(.1.3.6.1.4.1.2254.2.4.1.2.0)
   0.060396	nut_snmp_walk(.1.3.6.1.4.1.2254.2.4.1.2.0)
   0.060401	nut_snmp_walk: max. iteration = 1
   0.060409	load_mib2nut: testOID provided and doesn't match MIB 'delta_ups'!
   0.060415	load_mib2nut: trying classic method with 'xppc' mib
   0.060420	su_find_info: "ups.model" found
   0.060426	Testing ups.model using OID .1.3.6.1.4.1.935.1.1.1.1.1.1.0
   0.060431	Entering nut_snmp_get_str()
   0.060436	nut_snmp_get(.1.3.6.1.4.1.935.1.1.1.1.1.1.0)
   0.060441	nut_snmp_walk(.1.3.6.1.4.1.935.1.1.1.1.1.1.0)
   0.060446	nut_snmp_walk: max. iteration = 1
   0.060465	load_mib2nut: testOID provided and doesn't match MIB 'xppc'!
   0.060471	load_mib2nut: trying classic method with 'huawei' mib
   0.060476	su_find_info: "ups.model" found
   0.060482	Testing ups.model using OID .1.3.6.1.4.1.2011.6.174.1.2.100.1.2.1
   0.060487	Entering nut_snmp_get_str()
   0.060492	nut_snmp_get(.1.3.6.1.4.1.2011.6.174.1.2.100.1.2.1)
   0.060497	nut_snmp_walk(.1.3.6.1.4.1.2011.6.174.1.2.100.1.2.1)
   0.060502	nut_snmp_walk: max. iteration = 1
   0.060511	load_mib2nut: testOID provided and doesn't match MIB 'huawei'!
   0.060516	load_mib2nut: trying classic method with 'ietf' mib
   0.060522	su_find_info: "ups.model" found
   0.060527	Testing ups.model using OID 1.3.6.1.2.1.33.1.1.2.0
   0.060532	Entering nut_snmp_get_str()
   0.060537	nut_snmp_get(1.3.6.1.2.1.33.1.1.2.0)
   0.060542	nut_snmp_walk(1.3.6.1.2.1.33.1.1.2.0)
   0.060547	nut_snmp_walk: max. iteration = 1
   0.060556	load_mib2nut: testOID provided and doesn't match MIB 'ietf'!
   0.060562	load_mib2nut: trying classic method with 'eaton_ats' mib
   0.060569	su_find_info: unknown info type (ups.model)
   0.060574	su_find_info: "device.model" found
   0.060580	Testing device.model using OID .1.3.6.1.4.1.534.10.2.1.2.0
   0.060585	Entering nut_snmp_get_str()
   0.060590	nut_snmp_get(.1.3.6.1.4.1.534.10.2.1.2.0)
   0.060595	nut_snmp_walk(.1.3.6.1.4.1.534.10.2.1.2.0)
   0.060600	nut_snmp_walk: max. iteration = 1
   0.060608	load_mib2nut: testOID provided and doesn't match MIB 'eaton_ats'!
   0.060614	load_mib2nut: trying classic method with 'apc_ats' mib
   0.060620	su_find_info: unknown info type (ups.model)
   0.060626	su_find_info: "device.model" found
   0.060631	Testing device.model using OID .1.3.6.1.4.1.318.1.1.8.1.5.0
   0.060636	Entering nut_snmp_get_str()
   0.060641	nut_snmp_get(.1.3.6.1.4.1.318.1.1.8.1.5.0)
   0.060646	nut_snmp_walk(.1.3.6.1.4.1.318.1.1.8.1.5.0)
   0.060651	nut_snmp_walk: max. iteration = 1
   0.060659	load_mib2nut: testOID provided and doesn't match MIB 'apc_ats'!
   0.060665	load_mib2nut: trying classic method with 'ietf' mib
   0.060670	su_find_info: "ups.model" found
   0.060675	Testing ups.model using OID 1.3.6.1.2.1.33.1.1.2.0
   0.060680	Entering nut_snmp_get_str()
   0.060686	nut_snmp_get(1.3.6.1.2.1.33.1.1.2.0)
   0.060691	nut_snmp_walk(1.3.6.1.2.1.33.1.1.2.0)
   0.060696	nut_snmp_walk: max. iteration = 1
   0.060704	load_mib2nut: testOID provided and doesn't match MIB 'ietf'!
   0.060711	No supported device detected
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/nut-upsuser/attachments/20191008/6d2ed147/attachment.sig>


More information about the Nut-upsuser mailing list