Monitoring Your UPS With apcupsd

Riccardo delves into the details of apcupsd, a program for monitoring and controlling APC UPSes.
Apcupsd Security Issues

apcupsd runs as root. This needs to be considered when installing the software. It needs access to the serial port, System V IPC services and the shutdown program.

If you have switched on the NETSERVER directive in your apcupsd.conf file, be aware that anyone on the network can read the status of your UPS. This may or may not be a problem. If you don't consider this information privileged, there is little risk. In addition, if you have a firewall between your servers and the Internet, intruders will not have access to your UPS information. Additionally, you can restrict access to your apcupsd server by using the INETD services and using access control lists with a TCP wrapper.

If you are running master/slave networking, with a single UPS powering multiple machines, be aware that it is possible for someone to simulate the master and send a shutdown request to all of your slaves. The slaves do check that the network address of the machine claiming to be the master is the same as the address returned by DNS corresponding to the name of the master as specified in your configuration file.

apcupsd's Clients

To ease UPS monitoring, apcupsd offers quite a lot of client facilities. We have already seen apcaccess, the output of which can be seen in Listing 6. apcaccess is the main client tool for monitoring UPS status.

Listing 6

Another console-based client is powerflute that can be used to monitor the UPS status continuously as seen in Figure 3.

In Figure 4 another useful client for networked apcupsd is shown. It is the CGI interface that was integrated into apcupse and enhanced by Kern. If you want to be able to view UPS status from the Web, this is the best choice. Figure 5 shows the status of the UPSes connected to Kern's main server (www.sibbald.com/cgi-bin/multimon.cgi).

Figure 3. Powerflute

Figure 4. CGI Interface: Overview

Figure 5. CGI Interface: Details on One Host

apcupsd is being ported to Win32 (9x and NT) by Kern. At the time of writing, Kern had produced a beta version of apcupsd for Windows. In Figures 6 and 7 apcupsd for Win32 status client is shown.

Figure 6. apcuspd for Win32

Figure 7. acpuspd for Win32

What's Next

apcupsd is still growing. The next version of apcupsd will be a major version change and it will contain the following new main features:

  • Multiple UPS control apcupsd will be able to control more than one UPS connected to the same computer.

  • Network code rewrite apcupsd will be a true network dæmon with strong security features integrated into the code.

  • Complete Win32 support.

  • Ability to perform UPS tests from within client programs.

  • If time permits, another feature, that now is more a dream rather than a development target, is to support other manufacturer's UPSes.

Riccardo Facchetti (riccardo@master.oasi.gpa.it) is a research engineer for a scientific instrumentation firm in Milano, Italy. When not sitting in front of his computer, he travels worldwide.

______________________

Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Re: Monitoring Your UPS With apcupsd

Anonymous's picture

Not only is this an excellent review, but its also short, but covers alot of the basic material. Besides from being a review and a tutorial, its a inspiration.

I just bought a APC 1000 and had problems with upsd .. but this made me switch over and are now running apcupsd and made tons of scripts to monitor it .. even mrtg. Wonderfull program :)

Re: Monitoring Your UPS with apcupsd

Anonymous's picture

Nice article.

I will add that we are also successfully monitoring Belkin UPSs with apcupsd.

Webcast
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers

Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.

Learn More

Sponsored by AMD

White Paper
Red Hat White Paper: Using an Open Source Framework to Catch the Bad Guy

Built-in forensics, incident response, and security with Red Hat Enterprise Linux 6

Every security policy provides guidance and requirements for ensuring adequate protection of information and data, as well as high-level technical and administrative security requirements for a system in a given environment. Traditionally, providing security for a system focuses on the confidentiality of the information on it. However, protecting the data integrity and system and data availability is just as important. For example, when processing United States intelligence information, there are three attributes that require protection: confidentiality, integrity, and availability.

Learn more about catching the bad guy in this free white paper.

Learn More

Sponsored by DLT Solutions