I ran into this link when I was trying to figure out how to open Remote Desktop directly from Nagios: http://www.nagios-portal.org/wbb/index.php?page=Thread&threadID=14949 It was originally created for use in Nagvis, but I have modified it to suit my needs and implemented it in Nagios instead. First, you need to create a file in the Nagios\sbin folder called "GenerateRDPFile" or something that works for you. Then fill it with this code: ValidIpv4AddressRegex = "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$"; ValidHostnameRegex = "^(([a-zA-Z]|[a-zA-Z][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)*([A-Za-z]|[A-Za-z][A-Za-z0-9\-]*[A-Za-z0-9])$"; ValidIpv6AddressRegex = "^(\A([0-9a-f]{1,4}:){1,1}(:[0-9a-f]{1,4}){1,6}\Z)|(\A([0-9a-f]{1,4}:){1,2}(:[0-9a-f]{1,4}){1,5}\Z)|(\A([0-9a-f]{1,4}:){1,3}(:[0-9a-f]{1,4}){1,4}\Z)|(\A([0-9a-f]{1,4}:){1,4}(:[0-9a-f]{1,4}){1,3}\Z)|(\A([0-9a-f]{1,4}:){1,5}(:[0-9a-f]{1,4}){1,2}\Z)|(\A([0-9a-f]{1,4}:){1,6}(:[0-9a-f]{1,4}){1,1}\Z)|(\A(([0-9a-f]{1,4}:){1,7}|:):\Z)|(\A:(:[0-9a-f]{1,4}){1,7}\Z)|(\A((([0-9a-f]{1,4}:){6})(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3})\Z)|(\A(([0-9a-f]{1,4}:){5}[0-9a-f]{1,4}:(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3})\Z)|(\A([0-9a-f]{1,4}:){5}:[0-9a-f]{1,4}:(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}\Z)|(\A([0-9a-f]{1,4}:){1,1}(:[0-9a-f]{1,4}){1,4}:(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}\Z)|(\A([0-9a-f]{1,4}:){1,2}(:[0-9a-f]{1,4}){1,3}:(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}\Z)|(\A([0-9a-f]{1,4}:){1,3}(:[0-9a-f]{1,4}){1,2}:(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}\Z)|(\A([0-9a-f]{1,4}:){1,4}(:[0-9a-f]{1,4}){1,1}:(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}\Z)|(\A(([0-9a-f]{1,4}:){1,5}|:):(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}\Z)|(\A:(:[0-9a-f]{1,4}){1,5}:(25[0-5]|2[0-4]\d|[0-1]?\d?\d)(\.(25[0-5]|2[0-4]\d|[0-1]?\d?\d)){3}\Z)$"; ****************************** #!/bin/sh ADDRESS=$(echo ${QUERY_STRING} | grep -oE "(^|[?&])address=\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b" | cut -f 2 -d "=" | head -n1) HOST=$(echo ${QUERY_STRING} | grep -oE "(^|[?&])host=.+" | cut -f 2 -d "=" | head -n1) echo Content-type: application/octet-stream echo "content-disposition: attachment;filename=$HOST.rdp" echo echo screen mode id:i:1 echo desktopwidth:i:800 echo desktopheight:i:600 echo session bpp:i:16 echo winposstr:s:0,9,603,284,1891,1335 echo auto connect:i:0 echo full address:s:$ADDRESS echo compression:i:1 echo keyboardhook:i:2 echo audiomode:i:2 echo redirectdrives:i:0 echo redirectprinters:i:1 echo redirectcomports:i:0 echo redirectsmartcards:i:1 echo displayconnectionbar:i:1 echo autoreconnection enabled:i:1 echo alternate shell:s: echo shell working directory:s: echo disable wallpaper:i:0 echo disable full window drag:i:0 echo disable menu anims:i:0 echo disable themes:i:0 echo disable cursor setting:i:0 echo bitmapcachepersistenable:i:1 echo redirectclipboard:i:1 echo redirectposdevices:i:0 echo authentication level:i:0 echo prompt for credentials:i:0 echo negotiate security layer:i:1 echo remoteapplicationmode:i:0 echo allow desktop composition:i:0 echo allow font smoothing:i:1 echo gatewayhostname:s: echo gatewayusagemethod:i:0 echo gatewaycredentialssource:i:4 echo gatewayprofileusagemethod:i:0 echo drivestoredirect:s: echo promptcredentialonce:i:1 ******************************* Then make it executable: "chmod 755 GenerateRDPFile". Then use this bit as an action_url or notes_url for your hosts (or in your windows-server template so it will be applied to all of your Windows servers): "/nagios/cgi-bin/GenerateRDPFile?address=$HOSTADDRESS$&host=$HOSTNAME$" Save, check your config, then restart Nagios. When you click on your extra actions or notes icon it will produce an RDP file with the host_name of the server. When you run it it will use the IP address to access the server with RDP. This can also be extended for use with VNC files as well. Hope this is helpful to some of you.