Difference between revisions of "Hamachi"

From ArchWiki
Jump to: navigation, search
(Set up tun)
m (Running Hamachi: I think this was a typo in https://wiki.archlinux.org/index.php?title=Hamachi&curid=2221&diff=411131&oldid=393369)
 
(39 intermediate revisions by 13 users not shown)
Line 1: Line 1:
 +
[[Category:Virtual Private Network]]
 
[[it:Hamachi]]
 
[[it:Hamachi]]
 
+
[[ja:Hamachi]]
[[Category:Virtual Private Network]]
+
[[sk:Hamachi]]
{{Poor writing|Needs to be updated for [[Help:Style]] compliance.}}
+
 
[[Wikipedia:Hamachi (software)|Hamachi]] is a proprietary (closed source) commercial VPN software. With Hamachi you can organize two or more computers with an Internet connection into their own virtual network for direct secure communication.
 
[[Wikipedia:Hamachi (software)|Hamachi]] is a proprietary (closed source) commercial VPN software. With Hamachi you can organize two or more computers with an Internet connection into their own virtual network for direct secure communication.
  
 
== Installation ==
 
== Installation ==
Version 2 of the Linux Hamachi client exists and is currently in beta.  It is available from [https://secure.logmein.com/US/labs/ the labs page on the Hamachi website]; however, the vendor's tarball requires LSB and will not install correctly. You should use the {{AUR|logmein-hamachi}} package from the [[AUR]] instead.
+
[[Install]] the {{AUR|logmein-hamachi}} package.
  
==Configuration==
+
== Configuration ==
=== Set up tun ===
+
 
+
To run Hamachi you need /dev/net/tun.
+
 
+
This is created by the tun module. As root, run:
+
{{bc|
+
modprobe tun
+
}}
+
 
+
Or you can manually create /dev/net/tun by running:
+
{{bc|
+
mkdir /dev/net
+
mknod /dev/net/tun c 10 200
+
}}
+
 
+
Also, make sure to add the "tun" modules to rc.conf so that /dev/net/tun is created next time your computer turns on.
+
 
+
{{bc|1=
+
MODULES=(... ... ... ... ... tun ... ... ...)
+
}}
+
 
+
 
+
=== Set Up Tun For Systemd ===
+
 
+
Being as section above can only be applied for init.scripts, in order to install the module, as root run:
+
 
+
{{bc|
+
modprobe tun
+
}}
+
 
+
Then add tun to the list of modules by using your favorite text editor and running
+
{{bc|# vi /etc/modules-load.d/tun.conf |
+
#Load tun module at boot.
+
tun
+
}}
+
  
 
=== Hamachi 2 (beta) ===
 
=== Hamachi 2 (beta) ===
Line 52: Line 17:
 
====Using the hamachi command line tool as a regular user====
 
====Using the hamachi command line tool as a regular user====
 
In order to use the {{ic|hamachi}} command line tool as a regular user, add the following line to the configuration file:
 
In order to use the {{ic|hamachi}} command line tool as a regular user, add the following line to the configuration file:
{{bc|Ipc.User YourUserNameHere}}
+
Ipc.User YourUserNameHere
  
 
====Automatically setting a custom nickname====
 
====Automatically setting a custom nickname====
 
Normally, Hamachi uses your system's hostname as the nickname that other Hamachi users will see. If you want to automatically set a custom nickname every time Hamachi starts, add the following line to the configuration file:
 
Normally, Hamachi uses your system's hostname as the nickname that other Hamachi users will see. If you want to automatically set a custom nickname every time Hamachi starts, add the following line to the configuration file:
{{bc|Setup.AutoNick YourNicknameHere}}
+
Setup.AutoNick YourNicknameHere
  
 
You can also manually set a nickname using the {{ic|hamachi}} command line tool:
 
You can also manually set a nickname using the {{ic|hamachi}} command line tool:
{{bc|# hamachi set-nick YourNicknameHere}}
+
# hamachi set-nick YourNicknameHere
  
 
However, this needs to be done every time Hamachi is (re-)started, so if you always want to use the same nickname, setting it automatically (as explained above) is probably easier.
 
However, this needs to be done every time Hamachi is (re-)started, so if you always want to use the same nickname, setting it automatically (as explained above) is probably easier.
Line 65: Line 30:
 
==Running Hamachi==
 
==Running Hamachi==
  
{{Note|This section below can only be applied for init.scripts. If you're going to activate it with systemd then type 'systemctl enable logmein-hamachi' to start it at boot and then 'systemctl start logmein-hamachi' to start it immediately.}}
+
[[Start]] {{ic|logmein-hamachi.service}}.
  
Start up the (matt) daemon
 
{{bc|
 
$hamachi start
 
}}
 
 
Now you have a whole bunch of commands at your disposal. These are in no particular order and are fairly self explanatory.  
 
Now you have a whole bunch of commands at your disposal. These are in no particular order and are fairly self explanatory.  
  
 
{{bc|
 
{{bc|
$hamachi set-nick bob
+
$ hamachi set-nick bob
$hamachi login
+
$ hamachi login
$hamachi create my-net secretpassword
+
$ hamachi create my-net secretpassword
$hamachi go-online my-net
+
$ hamachi go-online my-net
$hamachi list
+
$ hamachi list
$hamachi go-offline my-net
+
$ hamachi go-offline my-net
 
}}
 
}}
  
 
To get a list of all the commands, run:
 
To get a list of all the commands, run:
{{bc|
+
$ hamachi ?
$hamachi ?
+
}}
+
  
'''Note:''' Make sure you change the status of the channel(s) you are in to "online" if you want to perform any network actions on computers in there.
+
{{Note|Make sure you change the status of the channel(s) you are in to "online" if you want to perform any network actions on computers in there.}}
  
===As a Daemon===
+
===Systemd===
  
You can run Hamachi as a daemon this way:
+
The {{AUR|logmein-hamachi}} package also includes a nice little [[Systemd]] daemon.
  
Copy your configuration to ''/root'' directory:
+
If you feel like it, you can set Hamachi to start at every boot with Systemd by [[enabling]] {{ic|logmein-hamachi.service}}.
 
+
{{bc|
+
cp -R ~/.hamachi /root/
+
}}
+
 
+
Create a script in ''/etc/rc.d/'' called ''hamachi'' using your preferred editor:
+
 
+
{{bc|<nowiki>
+
. /etc/rc.conf
+
. /etc/rc.d/functions
+
 
+
DAEMON=/usr/bin/hamachi
+
NAME=hamachi
+
DESC="Hamachi VPN client"
+
PID_FILE=/var/run/daemons/hamachi
+
 
+
case "$1" in
+
    start)
+
        #Check for running tuntap, start when not running
+
        ck_daemon tuntap && /etc/rc.d/tuntap start
+
        stat_busy "Starting $DESC"
+
        $DAEMON -c /root/.hamachi $1 > /dev/null
+
        if [ $? -gt 0 ]; then
+
            stat_fail
+
        else
+
            add_daemon $NAME
+
            stat_done
+
        fi
+
        ;;
+
    stop)
+
        stat_busy "Stopping $DESC"
+
        [ -f $PID_FILE ] && $DAEMON -c /root/.hamachi $1 > /dev/null
+
        if [ $? -gt 0 ]; then
+
            stat_fail
+
        else
+
            rm_daemon $NAME
+
            stat_done
+
        fi
+
        ;;
+
    restart)
+
        $0 stop
+
        $0 start
+
        ;;
+
    *)
+
        echo "usage: $0 {start|stop|restart}"
+
;;
+
esac
+
exit 0
+
</nowiki>}}
+
 
+
Remember to add ''hamachi'' to your ''daemons'' array in ''/etc/rc.conf'', it should be put after ''tuntap''.
+
 
+
And do not forget to:
+
 
+
{{bc|
+
chmod +x /etc/rc.d/hamachi
+
}}
+
  
 
==GUI==
 
==GUI==
Various GUI frontends for Hamachi are available in the AUR.
+
The following GUI frontends for Hamachi are available in the AUR:
 
+
For Hamachi 1:
+
 
+
*haguichi (Gtk2, mono)
+
*ghamachi (Gtk2)
+
*hamachi-gui (Gtk2)
+
 
+
For Hamachi 2 (beta):
+
 
+
*quamachi (Qt4)
+
*haguichi (Gtk2, mono)
+
 
+
==Troubleshooting==
+
===Hamachi times out soon after launch===
+
If hamachi stops working after a short period of time it can be that the client is timing out. Create ~/.hamachi/config and add the following to it:
+
+
{{bc|
+
KeepAlive 10
+
}}
+
 
+
===If you have problems connecting to some hosts===
+
Check if they are using Hamachi 2. If that is the case, then it is a known issue with the Hamachi 2 client connecting to the Hamachi Linux client.
+
 
+
===''/etc/init.d/logmein-hamachi'' is not found===
+
Replace that path with ''/etc/rc.d/logmein-hamachi''.
+
 
+
===Error when trying to run hamachi-init===
+
If there is an error while trying to load libstdc++.so.5, you want to install it. This library can be found in the ''extra'' repository, so you can install it by running {{ic|pacman -S libstdc++5}}.
+
  
If you get an error while trying to load libcrypto.so.0.9.7, a temporary solution is to create a link from /usr/lib/libcrypto.so.0.9.7 to /usr/lib/libcrypto.so by running {{ic|ln -s /usr/lib/libcrypto.so /usr/lib/libcrypto.so.0.9.7}}.
+
*{{AUR|haguichi}} (Gtk3, Vala)
 +
*{{AUR|quamachi}} (Qt4, Python)
  
 
==See also==
 
==See also==
 
* [https://secure.logmein.com/products/hamachi/ Project home page]
 
* [https://secure.logmein.com/products/hamachi/ Project home page]

Latest revision as of 07:04, 8 December 2015

Hamachi is a proprietary (closed source) commercial VPN software. With Hamachi you can organize two or more computers with an Internet connection into their own virtual network for direct secure communication.

Installation

Install the logmein-hamachiAUR package.

Configuration

Hamachi 2 (beta)

Hamachi 2 is configured in /var/lib/logmein-hamachi/h2-engine-override.cfg (create that file if it doesn't exist). Unfortunately, it isn't easy to find a comprehensive list of possible configuration options, so here are a few that you can use.

Using the hamachi command line tool as a regular user

In order to use the hamachi command line tool as a regular user, add the following line to the configuration file:

Ipc.User YourUserNameHere

Automatically setting a custom nickname

Normally, Hamachi uses your system's hostname as the nickname that other Hamachi users will see. If you want to automatically set a custom nickname every time Hamachi starts, add the following line to the configuration file:

Setup.AutoNick YourNicknameHere

You can also manually set a nickname using the hamachi command line tool:

# hamachi set-nick YourNicknameHere

However, this needs to be done every time Hamachi is (re-)started, so if you always want to use the same nickname, setting it automatically (as explained above) is probably easier.

Running Hamachi

Start logmein-hamachi.service.

Now you have a whole bunch of commands at your disposal. These are in no particular order and are fairly self explanatory.

$ hamachi set-nick bob
$ hamachi login
$ hamachi create my-net secretpassword
$ hamachi go-online my-net
$ hamachi list
$ hamachi go-offline my-net

To get a list of all the commands, run: $ hamachi ?

Note: Make sure you change the status of the channel(s) you are in to "online" if you want to perform any network actions on computers in there.

Systemd

The logmein-hamachiAUR package also includes a nice little Systemd daemon.

If you feel like it, you can set Hamachi to start at every boot with Systemd by enabling logmein-hamachi.service.

GUI

The following GUI frontends for Hamachi are available in the AUR:

See also