<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>RobPlatt.com &#187; Software</title>
	<atom:link href="http://www.robplatt.com/index.php/tag/software/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.robplatt.com</link>
	<description>My name is Rob. Here are the things I find useful or amusing. Enjoy.</description>
	<lastBuildDate>Tue, 13 Jul 2010 18:09:19 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Dynamically compiled VNC binary with repeater #2</title>
		<link>http://www.robplatt.com/index.php/2010/07/13/dynamically-compiled-vnc-binary-repeater-2/</link>
		<comments>http://www.robplatt.com/index.php/2010/07/13/dynamically-compiled-vnc-binary-repeater-2/#comments</comments>
		<pubDate>Tue, 13 Jul 2010 18:07:56 +0000</pubDate>
		<dc:creator>robplatt</dc:creator>
				<category><![CDATA[Utilities]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[uvnc]]></category>

		<guid isPermaLink="false">http://www.robplatt.com/?p=203</guid>
		<description><![CDATA[Awhile back, we discussed generating UltraVNC viewer and single-click executables on the fly: http://www.robplatt.com/index.php/2010/03/02/dynamically-compiled-vnc-binary-repeater/ A missing feature that was requested, was the ability to add encryption to the connection. Sorry it took so long, but here you go! Please note, all changes are in reference to my original post and those files. Download the latest MSRC4Plugin.dsm: http://home.comcast.net/~msrc4plugin/msrc4plugin.html Place MSRC4Plugin.dsm in [...]]]></description>
			<content:encoded><![CDATA[<p>Awhile back, we discussed generating UltraVNC viewer and single-click executables on the fly: <a href="http://www.robplatt.com/index.php/2010/03/02/dynamically-compiled-vnc-binary-repeater/">http://www.robplatt.com/index.php/2010/03/02/dynamically-compiled-vnc-binary-repeater/</a></p>
<p>A missing feature that was requested, was the ability to add encryption to the connection. Sorry it took so long, but here you go!</p>
<p>Please note, all changes are in reference to my original post and those files.</p>
<ol>
<li>Download the latest MSRC4Plugin.dsm: <a href="http://home.comcast.net/~msrc4plugin/msrc4plugin.html">http://home.comcast.net/~msrc4plugin/msrc4plugin.html</a></li>
<li>Place MSRC4Plugin.dsm in \client</li>
<li>Place a copy of MSRC4Plugin.dsm, renamed to MSRC4Plugin_NoReg.dsm in \host</li>
<li>Download or generate rc4.key. Place in both \client and \host</li>
<li>For the client exe, change line 6 in the helpdesk.txt file to &#8220;-id $ID -plugin -connect $IP::$PORT -noregistry&#8221;</li>
<li>For the host exe, add MSRC4Plugin.dsm and rc4.key to vncviewer.7z</li>
<li>For the host exe, change line 4 to &#8220;RunProgram=&#8221;vncviewer.exe -dsmplugin MSRC4Plugin_NoReg.dsm -autoreconnect 5 $RESTRICTED -noauto -64colors -encoding tight -proxy $IP::$PORT ID:$ID&#8221;"</li>
<li>Edit support.aspx, change line 44 to &#8220;&#8221;..\7zr a sc.7z ..\winvnc.exe ..\schook.dll ..\vnchooks.dll helpdesk.txt ..\MSRC4Plugin.dsm ..\rc4.key ..\icon1.ico ..\icon2.ico&#8221; &amp; vbcrlf &amp; _&#8221;</li>
<li>That should do it!</li>
</ol>
<p>As always, I&#8217;ve included the changes for you. (You may want to generate a new rc4.key, this one is the one included from UltraVNC)</p>
<p><a href="http://www.robplatt.com/downloads/remote_support_files_encrypted.rar">Download</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.robplatt.com/index.php/2010/07/13/dynamically-compiled-vnc-binary-repeater-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dynamically compiled VNC binary with repeater</title>
		<link>http://www.robplatt.com/index.php/2010/03/02/dynamically-compiled-vnc-binary-repeater/</link>
		<comments>http://www.robplatt.com/index.php/2010/03/02/dynamically-compiled-vnc-binary-repeater/#comments</comments>
		<pubDate>Wed, 03 Mar 2010 02:02:00 +0000</pubDate>
		<dc:creator>robplatt</dc:creator>
				<category><![CDATA[Utilities]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[uvnc]]></category>

		<guid isPermaLink="false">http://www.robplatt.com/?p=119</guid>
		<description><![CDATA[WebEx and GoToMeeting cost $$. Teamviewer is free, but only for personal use&#8230;. How would you like a dynamically compiled single-click VNC, with no GUI, using a repeater, for free? First off, let&#8217;s answer some questions&#8230; What is single-click? What is a repeater? UltraVNC Single-Click is a mini UltraVNC Server that can be customized and preconfigured for [...]]]></description>
			<content:encoded><![CDATA[<p>WebEx and GoToMeeting cost $$. Teamviewer is free, but only for personal use&#8230;.</p>
<p>How would you like a dynamically compiled single-click VNC, with no GUI, using a repeater, for free?</p>
<p>First off, let&#8217;s answer some questions&#8230; What is single-click? What is a repeater?</p>
<p>UltraVNC Single-Click is a mini UltraVNC Server that can be customized and preconfigured for download by a Customer. UltraVNC SC does not require installation and does not make use of the registry. The customer only have to download the little executable and Click to make a connection. The connection is initiated by the server, to allow easy access thru customers firewall.</p>
<p>Hmm, ok, and the repeater?</p>
<p><a href="http://www.uvnc.com/addons/repeater.html">http://www.uvnc.com/addons/repeater.html<br />
</a>Basically allows you to bypass firewalls using a preconfigured server.</p>
<p><span id="more-119"></span>Rather than trying to explain it. I&#8217;ll give you an example. Lets say your name is John Doe.</p>
<p>Client calls you up, needing computer help / training. You tell them sure, please visit my website. Give them the url to your support page. They are prompted for a session key. They enter the session key, and click ok. Your server compiles an executable with the session key, YOUR name and the ip of YOUR repeater (if you have more than one). Meanwhile, you visit a similar page, for the host (password protected of course). You enter the same session key. The host executeable is compiled and downloaded to your computer. You run it, it connects to the repeater with the session key, and waits for the client to connect. The client runs the executable they&#8217;re given, it says &#8220;Waiting for John Doe &#8230;&#8221;, the connection establishes to the same repeater, and now you can see their desktop. Depending on your permission, you may even be able to interact with them.</p>
<p>While this is all happening, you could have 2 or 3 or 10 other like scenarios going on at the same time. Without having to build the helpdesk.txt file, without having to map ports to computers, without users having to be at specific computer with ports mapped and software installed.</p>
<p>And yes, I did mention permissions. Depending on your configuration, Bob from level one technical support may only be able to view a clients desktop, but Fred from level two may be able to interact. Keeps your liability down.</p>
<p>FYI- My files below are setup to disable Aero and UAC on Vista/7, and re-enable after the session ends. It&#8217;s also set up for low bandwidth use.</p>
<p>Here are the steps to getting things set up: (I&#8217;ll provide the files so you don&#8217;t have to do much.)</p>
<ol>
<li>Set up a repeater &#8211; <a href="http://www.uvnc.com/addons/repeater.html">download</a><br />
The repeater can be ran as an application, or a system service. I have found it&#8217;s more reliable running as an application, but this does require a logon session to remain in memory. Run on any windows OS. Configure the ports.<br />
<a href="http://www.robplatt.com/wp-content/uploads/2010/03/repeater.png"><img class="size-medium wp-image-121 aligncenter" title="repeater" src="http://www.robplatt.com/wp-content/uploads/2010/03/repeater-300x225.png" alt="" width="300" height="225" /><br />
</a></li>
<li>Build the client executable &#8211; download my files below<br />
Take the standard VNC single-click executable. Run it through ResHacker, and make it look like this.<br />
<a href="http://www.robplatt.com/wp-content/uploads/2010/03/reshacker_winvnc.png"><img class="size-medium wp-image-122 aligncenter" title="reshacker_winvnc" src="http://www.robplatt.com/wp-content/uploads/2010/03/reshacker_winvnc-300x120.png" alt="" width="300" height="120" /><br />
</a></li>
<li>Set up client configs &#8211; download my files below<br />
Config.txt is for 7zip to know how to package and execute your executable. Helpdesk.txt needs to have some variables in it, that your other scripts will replace with the actual data, such as the ip and technicianss name. This is how the client executable knows how to connect and what to say.</li>
<li>Set up host config &#8211; download my files below<br />
Config.txt holds the information such as low bandwidth, permissions, etc.<br />
RunProgram=&#8221;vncviewer.exe -autoreconnect 5 $RESTRICTED -noauto -64colors -encoding tight -proxy $IP::$PORT ID:$ID&#8221;The variables in caps are replaced by values during compilation time. The restriction level, the ip, port, and session key / id.</li>
<li>Set up client script &#8211; download my files below in ASP.NET 2<br />
Build an asp or php page to compile the executable for the client. This script will need execute access on your web server. It will replace the variables in the text files with actual data. Compress all the files needed into one executable, push that file to the browser, then delete any temp files leftover on the server.</li>
<li>Set up host script &#8211; download my files below in ASP.NET 2<br />
This will be a lot like the script above. It will compile the host executable in a similar fashion. Here, you can set up which session keys, belong to which users, and what permissions they have.</li>
</ol>
<p>Tips:</p>
<ul>
<li>Try using port 80 for your clients. This may allow them to utilize remote assistance, if their firewalls are severely locked down. I went with the default ports myself, though I may change that if I run into problems with clients being unable to connect.</li>
<li>The host can save his executable as long as his session key doesn&#8217;t need to be changed. This will allow him to connect quicker to the repeater. Which by the way, will timeout after 5 minutes if no client connects.</li>
<li>You&#8217;ll notice my asp.net scripts allow the use of the query string. This allows shortcuts to be made to skip having to enter the session key. Just click the shortcut, and run the exe.</li>
<li>The host has the ability to create a shortcut. It will ask them where they want to save it (desktop), then future sessions, they can just click the shortcut.</li>
</ul>
<p>Here are the things I plan on implementing:</p>
<ul>
<li>Allowing users to have more than one session key, so they may connect to multiple clients at the same time.</li>
</ul>
<p>I realize this seems complicated, and its easier to just use other software out there, but hey&#8230; It&#8217;s free, and it works.</p>
<p><a href="/downloads/remote_support_files.rar">Download the files</a>: (the web scripts are in ASP.NET 2)</p>
<ul>
<li>Client Files &#8211; Place in a folder on the webserver as is. (\bin\remote-support\client\)</li>
<li>Client Script (support.aspx) &#8211; Place anywhere on the webserver, give full permission. Edit path inside for client files if different than above, add your technicians.</li>
<li>Host Files &#8211; Place in a folder on the webserver as is. Lock this folder down! (\bin\remote-support\host\)</li>
<li>Host File (support_admin.aspx) &#8211; Place anywhere on the webserver, give full permission. Lock this file down! Edit path inside for host files if different than above, add your technicians, adjust a few other things.</li>
</ul>
<p>We use this setup at work, with a few connections a day, by a few different users.  I also use it personally for friends/family/clients and have found it to be very reliable.</p>
<p>If I missed anything, or you need help, feel free to comment or email me. It should be pretty straight-forward for those of you wishing to tackle this.</p>
<p>Update: My project has been ported to PHP/Linux. Head over to <a href="http://phpremotesupport.com/">phpremotesupport.com</a> and check it out!</p>
<p>Update: PHPrs is now available for download.  Get it from <a href="http://phpremotesupport.com/">phpremotesupport.com</a> or <a href="http://www.robplatt.com/downloads/php-remote-support-v.1b.zip">download it here</a>.</p>
<p>Update: Added MSRC4 Encryption. <a href="http://www.robplatt.com/index.php/2010/07/13/dynamically-compiled-vnc-binary-repeater-2/">Read about it here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.robplatt.com/index.php/2010/03/02/dynamically-compiled-vnc-binary-repeater/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Backup with CrashPlan</title>
		<link>http://www.robplatt.com/index.php/2010/02/28/backup-crashplan/</link>
		<comments>http://www.robplatt.com/index.php/2010/02/28/backup-crashplan/#comments</comments>
		<pubDate>Sun, 28 Feb 2010 19:23:36 +0000</pubDate>
		<dc:creator>robplatt</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[recovery]]></category>

		<guid isPermaLink="false">http://www.robplatt.com/?p=75</guid>
		<description><![CDATA[I use CrashPlan both personally and professionally as my backup choice. CrashPlan will let you back up to a remote server,  for a small fee, just like any other online backup software. What makes CrashPlan so unique, is that you can back up to your friends, or your other computers, for free, regardless if they&#8217;re [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.robplatt.com/wp-content/uploads/2010/02/crashplan.gif"><img class="alignright size-full wp-image-76" title="crashplan" src="http://www.robplatt.com/wp-content/uploads/2010/02/crashplan.gif" alt="" width="178" height="96" /></a>I use CrashPlan both personally and professionally as my backup choice.</p>
<p>CrashPlan will let you back up to a remote server,  for a small fee, just like any other online backup software. What makes CrashPlan so unique, is that you can back up to your friends, or your other computers, for free, regardless if they&#8217;re on your LAN or not. You can back up to multiple sources as well. For example, a PC in house, and a friends PC across town. You have the convenience of a local restore being quick, and the security that your data is off-site in case of a disaster or theft. Oh, yes, your data is encrypted. No need to worry about others seeing financial and other private information.</p>
<p>For personal use. It&#8217;s free. Though a bit limited. You can upgrade to CrashPlan+ to make use of some great additional features, like data de-duplication, real-time backups, heavier encryption, and file versioning. However, if you want it for free, it&#8217;s still the best choice out there.</p>
<p><span id="more-75"></span></p>
<p>At home, I have a portable drive attached to a PC at home that is always on. The PC itself backs up to the portable drive. My laptop, as well as some friends and family computers back up to it as well. There are about 10 PC&#8217;s backing up to me at any time. Bandwidth is not an issue, after the initial backup, as only new/changed data is backed up.</p>
<p>We went with CrashPlan at work, as well, after I had a chance to use it for awhile. It&#8217;s cheap. The server software is free, and the client software is $60 a server. You get real-time file monitoring, data de-duplication, and file versioning. We have many servers (IIS, SQL, Exchange, File, etc). We have CrashPlan on each server backing up to a remote server over a IPSEC vpn tunnel. Here&#8217;s something to keep in mind. Restoring becomes an issue for SQL and Exchange. CrashPlan will back up files, as it sees them change. During a restore you&#8217;ll find many copies of your database and log files, and not know which log file goes with which database file. CrashPlan does not have agents for these types of applications. It simply backs up files on the drive, as they change.</p>
<p>We overcame this limitation by scheduling NTBackup to back up the System State, and our database directories, for each server, every night. Then told CrashPlan to back up those backup files, and exclude the database directories. Upon a restore, you choose your most recent dump, then use NTBackup to restore the dump to the proper folder, mount your database, and you&#8217;re back online. Since CrashPlan de-duplicates data, only changed bits in the dumps get sent offsite. We may have a 40GB dump that builds every night, but only changed data is backed up.</p>
<p>Here&#8217;s another scenario I recently set up for a client. He has 4 PCs at his office, one at home, and two laptops. We installed CrashPlan on each PC. We designated one of the PCs at work as a backup server, and the PC at home as a backup server. Then configured every PC and laptop to back up to both servers. Think about that. The PCs at the office back up locally, then offsite. His laptops back up to both. In the event of a disaster, his data is safely stored offsite, either way. If he needs to restore files, he can restore them quickly from the LAN. The initial backup took quite a few days. Once the bulk of the data was backed up, very little bandwidth is needed to maintain those backup sets.</p>
<p>There is so much more that CrashPlan does. I encourage you to check it out if you haven&#8217;t before.</p>
<p>Please. Back up your computer. I hate having clients call me up, upset, because their 10 year old PC died, and they never made a backup. Most of the time they get lucky, and the data is recoverable. There have been times where the drive was too far gone.</p>
<p><a href="http://www.crashplan.com">http://www.crashplan.com</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.robplatt.com/index.php/2010/02/28/backup-crashplan/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
