Jump to content


Photo

HOWTO: AirVPN Client Eddie on Raspberry pi 3


  • Please log in to reply
12 replies to this topic

#1 sagarbehere

sagarbehere

    Newbie

  • New Members
  • Pip
  • 3 posts

Posted 22 October 2016 - 04:48 AM

Hi all,

 

I recently got Eddie working on my raspberry pi 3 model B. It took a bit of doing, so documenting the process here in the hope that someone else will have to spend less time on it than I did.

 

The raspberry pi 3 runs OSMC, which seems to be a tailored version of debian jessie. My GUESS is that although the Pi 3's ARM processor is 64 bits, OSMC is still running the 32 bit version of ARM linux. Anyways,... After OSMC was installed and networking was up, I ssh'd into the machine to install Eddie

 

Step 0: You need to do everything as root. So su to root

 

osmc@OmniScope:~$ sudo su 

 

Step 1: Install mono 4

 

The version of mono in the repositories is probably too old. So I added a new repository and fetched mono from there

root@OmniScope:/home/osmc# echo "deb http://plugwash.raspbian.org/mono4 jessie-mono4 main" >> /etc/apt/sources.list
root@OmniScope:/home/osmc# apt-get update
root@OmniScope:/home/osmc# osmc@OmniScope:~$ apt-get install mono-complete

 

verify that you have version 4 with

root@OmniScope:/home/osmc# apt-cache policy mono-complete
mono-complete:
  Installed: 4.0.2.5+dfsg-2~rpi1
  Candidate: 4.0.2.5+dfsg-2~rpi1
  Version table:
 *** 4.0.2.5+dfsg-2~rpi1 0
        500 http://plugwash.raspbian.org/mono4/ jessie-mono4/main armhf Packages
        100 /var/lib/dpkg/status
     3.2.8+dfsg-10 0
        500 http://ftp.debian.org/debian/ jessie/main armhf Packages
root@OmniScope:/home/osmc#

 

Step 2: Install openvpn and stunnel4

root@OmniScope:/home/osmc# apt-get install openvpn stunnel4

Step 3: Get the portable version of Eddie (mono required) from https://airvpn.org/linux/ 

 

You'll download a file named something like airvpn_linux_x64_mono.tar.gz. Don't worry about the _x64 part. 

Copy the file over to your raspberry pi, then untar it. Replace the openvpn and stunnel executables with those from your raspberry pi

tar zxvf airvpn_linux_x64_mono.tar.gz
cd airvpn_linux_mono
mv openvpn openvpn.orig; cp /usr/sbin/openvpn .
mv stunnel stunnel.orig; cp /usr/bin/stunnel4 .
 

Step 4: Run Eddie

 

You can now start Eddie from the command line, as explained at https://airvpn.org/topic/11541-command-line-edition-and-syntax/

For example, I use

mono AirVpn.exe -cli -profile=AirVpn.xml -login=myusername -password=mypassword -connect -netlock

where I got the AirVpn.xml file from my laptop. This is optional.

 

(Optional) Step 5: Make it more convenient

 

If you follow all the steps above, you should be able to connect to AirVPN. However, when you quit the ssh session, the VPN session will also be terminated. I use my Pi as a media center and want the connection to persist after closing the ssh session. To achieve that, I use GNU Screen.

 

sudo apt-get install screen
 

 

Use google to find a tutorial on how to use screen. Briefly, after ssh'ing over to the Pi, type the command 'screen' (without the ' ' ). You'll get back the command prompt, but a screen session will be active. Now run Eddie as described above. To "detach" from the screen Ctrl+a+d. You'll get back to the command prompt, from which you can terminate the ssh session. AirVPN will continue working in the detached screen session. To get back to it, ssh into the Pi again and type 'screen -r'.



#2 LZ1

LZ1

    It's nice to be nice to nice people

  • Members
  • PipPipPip
  • 1354 posts

Posted 24 October 2016 - 12:05 AM

Hello!

 

Very good work indeed :). I would recommend you change the title, to reflect that this is a guide or a how-to, as it otherwise appears like it's just another question.


Open This Spoiler If: A Website Is Blocked, You Want To Help AirVPN, Find The Beta/Experimental Client Or You're A New User Wanting Help/Information

Spoiler

Did you make a guide or how-to for something? Then contact me if you want me to index it in my new user guide, so that the community can find it more easily.

Tired of Windows? Why Linux Is Better.


#3 altae

altae

    Advanced Member

  • Members
  • PipPipPip
  • 98 posts
  • LocationSwitzerland

Posted 25 October 2016 - 09:34 PM

Nice. But why do you need screen? Can't you just run Eddie in the background (add "&" to the command) and use "disown" to untie it from the current shell session?



#4 Staff

Staff

    Advanced Member

  • Staff
  • PipPipPip
  • 6750 posts

Posted 26 October 2016 - 07:53 AM

Nice. But why do you need screen? Can't you just run Eddie in the background (add "&" to the command) and use "disown" to untie it from the current shell session?

 

Probably because you have a lot of advantages with screen: you can anytime recall directly a screen to interact with the software and consult the output, share screen between accounts and you can also disconnect the account that detached the screen and be sure that the screen is still there and your software running, very nice for example when you are connected from a remote terminal via ssh.
 
disown removes the job from the shell job list, so the process can't receive a SIGHUP from the shell, but it is still connected to the terminal. "If the terminal is destroyed (which can happen if it was a pty, like those created by xterm or ssh, and the controlling program is terminated, by closing the xterm or terminating the SSH connection), the program will fail as soon as it tries to read from standard input or write to standard output." See also: https://unix.stackexchange.com/questions/3886/difference-between-nohup-disown-and - first answer.
 
Kind regards



#5 altae

altae

    Advanced Member

  • Members
  • PipPipPip
  • 98 posts
  • LocationSwitzerland

Posted 26 October 2016 - 07:47 PM

Ok, sounds logical to me. What's more I'd like to make clear that the intent of my comment wasn't to criticize the author. I just like to keep things simple and wondered why he used an additional tool for his solution.



#6 sagarbehere

sagarbehere

    Newbie

  • New Members
  • Pip
  • 3 posts

Posted 28 October 2016 - 03:41 AM

I'm the OP.

 

LZ1: Thanks. I have changed the title. Hopefully, this one is more clear. Let me know if there is a more preferred way to phrase it.

 

altae: Staff has correctly explained why I use screen. Among other things, it is useful to be able to log back into the Pi, pull up the screen session and consult the output of the client. Thanks for asking your question. This thread is now more helpful to the next reader :-)



#7 air_is_nice

air_is_nice

    Advanced Member

  • Members
  • PipPipPip
  • 31 posts

Posted 05 November 2016 - 11:16 AM

What is the memory fingerprint of this?

 

I wonder if it's much bigger than running OpenVPN+Ipleak. Would be nice to have a number..



#8 stupidcats

stupidcats

    Advanced Member

  • Members
  • PipPipPip
  • 50 posts

Posted 05 November 2016 - 11:53 AM

I suppose that while using this method, we're free from DNS leaks? How do we choose "Renaming" in the CLI? 



#9 zhang888

zhang888

    Donald Trump of IT/Security

  • Moderators
  • 1927 posts

Posted 05 November 2016 - 01:40 PM

There are no DNS leaks in Linux, it queries the servers according to resolv.conf.


Occasional moderator, sometimes BOFH. Opinions are my own, except when my wife disagrees.


#10 air_is_nice

air_is_nice

    Advanced Member

  • Members
  • PipPipPip
  • 31 posts

Posted 07 November 2016 - 10:56 AM

@sagarbehere,

 

Have you managed to add this to the auto-startup?



#11 sagarbehere

sagarbehere

    Newbie

  • New Members
  • Pip
  • 3 posts

Posted 07 November 2016 - 08:01 PM

OP here.

 

@air_is_nice : You have asked two questions 1. What is the memory footprint of running Eddie on rPi3 (secondary question: How does it compare to OpenVPN + ipleak) and 2. Have you managed to add this to the auto-startup.

 

I am traveling right now and will have access to my setup on 27th November. Will edit+update this post with the memory footprint numbers then. As for the auto-startup, I have not tried this yet, but there shouldn't be any particular reason why this would be difficult. I'll figure out the exact mechanism to do it and report back on both questions by the end of November. Please PM me if you do not see an update by then.



#12 unit13

unit13

    Newbie

  • New Members
  • Pip
  • 3 posts

Posted 20 February 2017 - 09:53 PM

Is it really necessary to use the Mono version of Eddie?

 

Better yet: is it really necessary to have mono-complete installed in order for the ARM CLI version of Eddie to connect?

 

The ARM CLI version of Eddie always gives this error, unless mono-complete is installed:

Error: SecureChannelFailure (The authentication or decryption has failed.)


#13 zammtech

zammtech

    Newbie

  • Members
  • Pip
  • 6 posts

Posted 24 February 2017 - 02:50 PM

I've been able to get the arm version (eddie-ui_2.11.15_linux_armv7l_mono) to run with mono using 

sudo mono AirVPN.exe -cli -login=UN -password=PW -connect -netlock

But I get an error message of: 

! 2017.02.24 14:45:46 - Activation of Network Lock - Linux IPTables

I 2017.02.24 14:45:48 - Checking login ...

. 2017.02.24 14:45:48 - Updating systems & servers data ...

_wapi_connect: error looking up socket handle 0x79

. 2017.02.24 14:46:29 - Cannot retrieve systems & servers data. Please retry later or contact us for help. (The request timed out)

F 2017.02.24 14:46:29 - Cannot login. (The request timed out)

! 2017.02.24 14:46:29 - Ready

 

When I try to do:

curl http://ip.changeip.com

I get the message :

curl: (7) Failed to connect to ip.changeip.com port 80: Connection timed out

 

Any idea why this isn't working for me?

 

Edit:

Also how do I get the AirVPN.xml file from my macintosh app? 


Edited by zammtech, 24 February 2017 - 02:52 PM.






Similar Topics Collapse

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Servers online. Online Users: 12111 - BW: 34923 Mbit/sYour IP: 54.147.232.40Guest Access.