Wednesday, November 9, 2011

net-snmp on fun_plug

I have ZyXEL NSA 320 at home so I wanted to use it's full capability, first step was to get "linux" there, first and for the moment last choice was FFP (Funz Fun Plug).
As far as I'm working in network monitoring other interest of mine was if I can have SNMP agent running there and yes I could, here is short guide how to install it. It's nothing hard.

1) Download and install net-snmp for ffp
wget http://inreto.de/dns323/fun-plug/0.5/extra-packages/All/net-snmp-5.5-1.tgz
funpkg -i net-snmp-5.5-1.tgz
2) Configure net-snmp, best way to do so is use snmpconf program, which is menu based commandline interface which helps you to setup snmp deamon. More info can be find here http://net-snmp.sourceforge.net/tutorial/tutorial-5/demon/snmpd.html

3) Start snmp deamon during start of system
#!/ffp/bin/sh
# PROVIDE: snmpd
. /ffp/etc/ffp.subr
name="snmpd"
command="/ffp/sbin/snmpd"
telnetd_flags="-l /ffp/bin/sh"
run_rc_command "$1"
4) Start snmpd deamon and check if it works. See example bellow, don't forget to change IP and community to correspond to your own settings.

C:\Users\j.kindl>snmpwalk -v 2c -c gnet-ro 10.0.0.33 system
SNMPv2-MIB::sysDescr.0 = STRING: Linux nsa320 2.6.31.8 #1 Wed May 18 20:18:38 CS
T 2011 armv5tel
SNMPv2-MIB::sysObjectID.0 = OID: SNMPv2-SMI::org
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (14061) 0:02:20.61
SNMPv2-MIB::sysContact.0 = STRING: plord@
SNMPv2-MIB::sysName.0 = STRING: nsa320
SNMPv2-MIB::sysLocation.0 = STRING: Unknown
SNMPv2-MIB::sysORLastChange.0 = Timeticks: (3) 0:00:00.03
SNMPv2-MIB::sysORID.1 = OID: SNMP-MPD-MIB::snmpMPDMIBObjects.3.1.1
SNMPv2-MIB::sysORID.2 = OID: SNMP-USER-BASED-SM-MIB::usmMIBCompliance
SNMPv2-MIB::sysORID.3 = OID: SNMP-FRAMEWORK-MIB::snmpFrameworkMIBCompliance
SNMPv2-MIB::sysORID.4 = OID: SNMPv2-MIB::snmpMIB
SNMPv2-MIB::sysORID.5 = OID: TCP-MIB::tcpMIB
SNMPv2-MIB::sysORID.6 = OID: IP-MIB::ip
SNMPv2-MIB::sysORID.7 = OID: UDP-MIB::udpMIB
SNMPv2-MIB::sysORID.8 = OID: SNMP-VIEW-BASED-ACM-MIB::vacmBasicGroup
SNMPv2-MIB::sysORDescr.1 = STRING: The MIB for Message Processing and Dispatching.
SNMPv2-MIB::sysORDescr.2 = STRING: The MIB for Message Processing and Dispatching.
SNMPv2-MIB::sysORDescr.3 = STRING: The SNMP Management Architecture MIB.
SNMPv2-MIB::sysORDescr.4 = STRING: The MIB module for SNMPv2 entities
SNMPv2-MIB::sysORDescr.5 = STRING: The MIB module for managing TCP implementations
SNMPv2-MIB::sysORDescr.6 = STRING: The MIB module for managing IP and ICMP implementations
SNMPv2-MIB::sysORDescr.7 = STRING: The MIB module for managing UDP implementations
SNMPv2-MIB::sysORDescr.8 = STRING: View-based Access Control Model for SNMP.
SNMPv2-MIB::sysORUpTime.1 = Timeticks: (2) 0:00:00.02
SNMPv2-MIB::sysORUpTime.2 = Timeticks: (2) 0:00:00.02
SNMPv2-MIB::sysORUpTime.3 = Timeticks: (2) 0:00:00.02
SNMPv2-MIB::sysORUpTime.4 = Timeticks: (2) 0:00:00.02
SNMPv2-MIB::sysORUpTime.5 = Timeticks: (3) 0:00:00.03
SNMPv2-MIB::sysORUpTime.6 = Timeticks: (3) 0:00:00.03
SNMPv2-MIB::sysORUpTime.7 = Timeticks: (3) 0:00:00.03
SNMPv2-MIB::sysORUpTime.8 = Timeticks: (3) 0:00:00.03

Monday, December 15, 2008

Technical emails my best practice

When I was today preparing the presentation about UNIX basic I decide to put some UNIX philosophy slides on the beginning of it. Because I've read Raymond's Art of Unix Programing sometime ago I tought it would be perfect to use the some rules from him. So I go to the internet and find the list of rules from this great book. When I was reading them and figuring out which will be understandable for audience I said wait a moment some of those rules could be applied also in people relationships and mostly in written communication. 

The problem of today is that we are cooperating world wide in most of the companies nowadays and we use english to understand each others, well but not everybody is same level and after you send email, which is clear and perfectly understandable for you can make recipient angry, because of misunderstanding. Then you deal the call and say: "ohh sorry, it actually is about something else and it was not supposed to be offensive." In better case you just spend several more minutes to explain what was in email. But honestly it's waisting of time, because you could write your mail better.
Most of those problems of misunderstanding and explaining later on are cause by technician speaking to non-technician, in technical language and put things in complicated sentence. So we have here combination of different level of knowledge as well as different level of language skill. So here bellow find some Unix design rules which could be applied for mail communication:  

Rule of Modularity: Write simple parts connected by clean interfaces. 
Write simple statements, which are not to be misinterpreted and are connected in easy logical way. Rather use more simple sentences then one long.  

Rule of Clarity: Clarity is better than cleverness. 
Don't try to show your self as clever guy, because what is evident for you is not evident for others and they are not so much involved in topic as you. Expect your partner doesn't know the technical part so explain him like you would explain this to children.  

Rule of Transparency: Design for visibility to make inspection and debugging easier. 
If you are explaining some technical problem in the mail if you use simple statements instead of long sentences it's also more readable for other technicians. They can more easily follow the problem, because they doesn't need to search fact's hidden in the lot of nice 'colorfull' text.  

Rule of Robustness: Robustness is the child of transparency and simplicity.
If you will follow rules above you will have longer mail probably, but on the end more understandable and simple.

Rule of Repair: When you must fail, fail noisily and as soon as possible. 
This is not so much about communication, but more about behavior and it's not relevant to programming only but to any problem you may face. If you speak noisily about the problem and what can happened if it will not be solved people will listen more and it will be definitely easier to solve small problem and prevent bigger. In worst case you can then say: "Hey I've told you it's gonna be problem." So you at least are covered.  

Rule of Diversity: Distrust all claims for "one true way". 
Stay open to new ideas, even non-technical people could provide good technical solution or at least give you a hint or provide very good idea.

I've put link to this post to linkedin and ask the people there to put there tips about this topic. Here are the most interesting respons I've got:

I try and use pictures and non technical terms to explain technical problems to non technical people .The simple the better. Alot of people have a short attention span especially with the over abundance of information out there and if they don't understand what your explaining chances are they will lose interest.  


In addition to screen-shots, I find that a numbered list of steps works wonders. If they run into difficulty, any follow-up communication can refer specifically to a step number. Just make sure that you keep each step simple and try it out yourself before sending.  


It is a hard thing to do, but my best advice is to try to put yourself in the shoes of the person to whom you are writing. Try to imagine what it would be like to read the email if you knew nothing about it. Or imagine that the recipient is a 12-year old.  
And, keep the technical jargon, abbreviations, and acronyms out altogether.  


In tech support, I found it best to send screenshots or flash videos to explain a topic and train the customer on what needs to be done. 
A great free tool is Jing. Available at http://jingproject.com/  

Tuesday, November 4, 2008

CiscoSecure ACS Password recovery


Long time ago I was trying to search how to get in to Cisco ACS when I forgot my password.
When I searched on google I didn't find anything usefull, after all I find the way my self and to my suprise it's nothing secret or hard to find you just need to know what to search to be able to find it.
But because "CiscoSecure ACS Password recovery" is not working here is howto and from now on it maybe possible to find it ;-)
By default it's possible to access the CiscoSecure ACS admin page without login from localhost, but sometimes this is changed and even when accessing from localhost you need to use login and password. There is ofcourse way how to put default behavior back.
You need to have rights to change the registry if you have then do folloving
1)Open regedit
2) Go to [HKEY_LOCAL_MACHINE\SOFTWARE\Cisco\CiscoAAAv3.3\CSAdmin\Security]
3) Change "allowAutoLocalLogin" to 0
Now you will be able to access ACS admin page from localhost without login.
P.S.: Even you can find this HOWTO on more side I was not able to find it asking google for "ACS Password recovery" I hope everybody will be possible to do so.