Mac

Like everything else in the world of IT all admins will have their preferences and what works for some will not always work for others. I’ve played around with a number of different tools for various uses and have compiled a short list on both the Windows and Mac platforms that I’ve found to be helpful. I’ll list them below and provide a brief description of the tool and what I use it for. I’d also love to see what tools you’re using as well, feel free to comment below with your own helpful tools. This is in no way comprehensive, just at top 5 favorite tools

Windows IT Tools

1. mRemoteNG

mRemoteNG is a fantastic combination RDP/SSH client that allows you to RDP and SSH into multiple boxes using saved presets and tabs for each. A few gotchas with this application are that to add SSH entries, you will first need to save them in Putty, as the program retrieves the list of saved SSH servers from the registry keys. For RDP you have plenty of options to choose whether or not to forward the keyboard shortcuts and the clipboard to the remote machine. Additionally if you move around between multiple machines you can save you mRemoteNG configuration file to a file share or cloud service like OneDrive for Business.

http://www.mremoteng.org/

2. Putty/Puttygen/Pageant

By now this tool is sort of a default go to tool for most admins. Putty is well known for being a great SSH and telnet client, however it does have some other helpful features. Among these features if the ability to do port tunneling, allowing you to connect to a server over SSH and redirect a local port such as 9090 to the remote machine’s port 80. Puttygen is a tool used to generate SSH keypairs on Windows either from scratch or converting a Linux/Mac generated keypair into a .ppk private key for use with Pageant. Pageant is a tool that allows you to load one or more private SSH keys so that you can login to remote servers over SSH using private/public key pairs. One of the lesser discussed facts regarding Putty is that you can export a list of your saved servers and import it into another machine. This can be done by opening the registry editor and searching for the SimonTatham key or by going to HKCU>Software>SimonTatham and exporting this entire key. To add it to a new machine simply copy the registry file and double click to merge the key. I haven’t tested this on a system that already has existing entries saved in Putty so use with caution.

http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

3. cPutty

If you’ve ever had the wonderful task of applying updates on a ton of Linux boxes, this process is enough to make you want to shoot yourself or create a cron job to update weekly and live with the consequences. A better solution is to download cPutty, which can be acquired from GitHub. This application when double clicked appears to do nothing, but it actuallly allows you to open multiple putty sessions and press ctrl+alt+insert to link your keyboard input to all open SSH windows so that you can type the same command simultaneously into all of them.

https://github.com/dprokscha/cputty

4. Exchange Reports

While the built in tools for Exchange message tracking work reasonably well, this application adds additional functionality allowing you to export csv files of the message tracking results. The application currently works with all modern releases of on prem Exchange and is supposed to support Office 365 as well.

https://exchangereports.codeplex.com/

5. Sublime Text

While I’ve been a long time user of Notepadd++ and still use it for comparing diffs, I have really come to enjoy using Sublime Text as my go to application for writing scripts (with the exception of Powershell in which case Powershell ISE is hard to beat). Sublime text has options to enable highlighting based on code type, which is akin to using vim. Also when creating a ( or { character, the trailing character is also created one character ahead of the cursor. This is fantastic for people like myself who have often been guilty of forgetting to close a ) or } especially in situations where these are nested. The Ruby setting for highlighting also works fantastically for writing Puppet manifests and has been a real favorite of mine. This is technically a paid application but does work uncrippled with occasional nag messages to purchase.

http://www.sublimetext.com/

Mac

1. Microsoft Remote Desktop

While there are a number of RDP clients for Mac (2 from Microsoft even!) the newer Microsoft RDP client available in the Apple app store is fantastic. While I generally prefer applications like RDC Manager and mRemoteNG on Windows, I’ve had no such luck finding a client of that nature for Mac. However the MS RDP client opens full screen, allows you to save presets and RDP into multiple boxes at once. You can also toggle between your Mac and the other boxes using ctrl + arrow key left/right. This functionality is simple and easy to use and offers substantial improvements of the RDP client included with the MS Office suite for Mac.

tmux is an excellent application for multiplexing the terminal. Much like the PC counterpart cPutty or the Linux Cluster SSH, you can simultaneously enter standard input into multiple terminal at once. This tool is incredibly useful in saving time when performing the same task across many remote servers.

http://tmux.sourceforge.net/

3. Sublime Text

Sublime text as described earlier is a fantastic text editor, especially for code and scripting. Some of the awesome features aside from code highlighting is that on the right hand side of the page there’s a full length preview of the document. This functionality works nicely with long scripts or lengthy configuration files. Just as for PC, this application is technically a paid application but it does work uncrippled with occasional nags to purchase

http://www.sublimetext.com/

4. iTerm

iTerm is what I refer to as terminal on steroids. This application builds on the basic functions of the built in terminal. Among its features are the ability to recall previous clipboard items, use multiple tabs, and the ability to support bookmarks and profiles. All of the features you always wanted and never had in terminal all pretty well covered in this application.

http://iterm.sourceforge.net/

5. Homebrew

Homebrew is an application for Mac that allows you to install packages from repositories using brew install. Many Linux applications traditionally not available on Mac are available using Homebrew. https://github.com/Homebrew/homebrew/tree/master/Library/Formula contains a list of a many of the applications that can be installed using brew.

http://brew.sh/

Well, that’s my short list, there are certainly many more applications. I’d love to hear what some of your favorites are. Particularly if you’ve found something better than MySQL workbench on Mac.