Jump to content

Synergy (software)

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Michaelwerle (talk | contribs) at 09:58, 16 September 2015 (Added link to the source code on GitHub). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Developer(s)Chris Schoeneman, Nick Bolton, et al.
Initial release13 May 2001 (2001-05-13)[1]
Stable release
1.7.4 / 10 August 2015; 9 years ago (2015-08-10)
Repository
Written inC++
Operating systemCross-platform
LicenseCommercial software, source code available under GNU General Public License
Websitesynergy-project.org

Synergy is a software application for sharing a keyboard and mouse between multiple computers. It is used in situations where several PCs are used together, with a monitor connected to each, but are to be controlled by one user. The user needs only one keyboard and mouse on the desk — similar to a KVM switch without the video.

Released under the terms of the GNU General Public License, Synergy is free software.

The first version of Synergy (created on May 13, 2001 by Chris Schoeneman, also known as "crs") worked with the X Window System only, but more recent versions of Synergy support Windows, Mac OS X, Linux, and other Unix-like operating systems.

A fork of Synergy named Synergy+ was started in 2009, but this fork project has since been merged back in to Synergy.

Design

Once the program is installed, users can move the mouse "off" the side of their desktop on one computer, and the mouse-pointer will appear on the desktop of another computer. Key presses will be delivered to whichever computer the mouse-pointer is located in. This makes it possible to control several machines as easily as if they were a single multi-monitor computer. The clipboard and even screensavers can be synchronized.

Architecturally, the program is implemented as a server which defines which screen-edges lead to which machines, and one or more clients, which connect to the server to offer the use of their desktops. The keyboard and mouse are connected to the server machine.

Network communications

TCP/IP communications (default port 24800) are used to send mouse/keyboard and clipboard events between computers.

Prior to version 1.4.11

Communications are not encrypted, with key presses, mouse movements and clipboard contents sent to Synergy clients easily able to be sniffed on network traffic.

It is recommended that if Synergy is not being used on a trusted local network, that all communications be tunneled through a secure encrypted connection, such as through SSH, stunnel, or a VPN. In this model, the Synergy server computer needs to be running an SSH server, and the Synergy process should be configured to listen only on localhost. To get an SSH server, Macintosh users can enable Remote Access, Linux users can enable sshd, and Windows users can configure an SSH server through Cygwin. Synergy clients would then execute a command similar to "ssh -L 24800:localhost:24800 user@synergyserver" before connecting the synergy client to localhost.

Version 1.4.11 to 1.6.3

Between version 1.4.11 and 1.6.3, communications could be encrypted and key presses, mouse movements and clipboard contents could be secured prior to being sent to Synergy clients, resulting in much greater security for data sent between hosts.[2]

Version 1.7 onwards

As of version 1.7, encrypting of communications between clients requires the purchase of the Pro version, with the previous encryption being replaced by a more secure system.[3] It is however still possible to enable encryption by manually compiling the code.

History

Synergy+ was created in 2009 as a maintenance fork for the purpose of fixing bugs inherited from the original version. The original version of Synergy had not been updated for a notable length of time (as of 6 June 2010, the latest release was 2 April 2006).[4] There was never official confirmation that the original Synergy project had been abandoned; however, there was public discussion providing speculation.[5] In said discussion, Chris Schoeneman (the creator of Synergy)[6] stated that instead of supporting a 1.3.x team, he intends on releasing version 2.0 of Synergy, and publicly announced on 27 Aug 2008 that he has been making progress on this version.[7]

The first incarnation of Synergy was CosmoSynergy, created by Richard Lee and Adam Feder then at Cosmo Software, Inc., a subsidiary of SGI (née Silicon Graphics, Inc.), at the end of 1996. They wrote it, and Chris Schoeneman contributed, to solve a problem: most of the engineers in Cosmo Software had both an Irix and a Windows box on their desks and switchboxes were expensive and annoying. CosmoSynergy was a great success but Cosmo Software declined to productize it and the company was later closed. Synergy is a from-scratch reimplementation of CosmoSynergy. It provides most of the features of the original and adds a few improvements.

The concept of sharing keyboard and mouse between computers is still popular according to a Lifehacker.com article.[8]

Synergy+ merge

On 20 June 2010, a Synergy+ project leader requested that the Synergy+ project take over the original project [9] under the SourceForge.net Abandoned Project Takeover (APT) system. The owner of the Synergy project (Chris Schoeneman) denied this request two days later. However, this led to the two projects merging two months later, at which point a new website was created under the original Synergy project name.

Business Model

On 08 Sept 2014, the Synergy website changed from offering a gratis download -- accompanied by advertising and a donation appeal -- to a paid for download. There is however a free downloads page which provides access to the older version, 1.4.18, but requires users to submit a request for a free account before being able to download the software.

See also

References

  1. ^ "First committed version of main.cpp". Synergy source code repository. Retrieved 2009-06-11.
  2. ^ "Synergy 1.4.11 released". Nick Bolton. Retrieved 2013-05-09.
  3. ^ "SSL Encryption in Synergy 1.7". Nick Bolton. Retrieved 2015-05-16.
  4. ^ "Original Synergy downloads page". SourceForge. Retrieved 2009-06-11.
  5. ^ "Dead project". Synergy Discussion Forums. Retrieved 2009-06-11.
  6. ^ "The original Synergy authors". Synergy. Retrieved 2009-06-11.
  7. ^ "Synergy 2.x". Chris Schoeneman. Retrieved 2009-06-11.
  8. ^ "Synergy-Plus Controls Multiple Systems from a Single Keyboard & Mouse". Lifehacker.com. Retrieved 2009-06-11.
  9. ^ "APT of synergy2". Retrieved 2010-08-29.