Dec 5, 2013

install teamviewer 9 on ubuntu 13.10

Teamviewer is Software for Remote Support, Remote Access, Remote Administration, Home Office and Online Meetings. For Windows, Mac, Linux, iPhone, iPad, Android and other devices.

[solved] Package 'lib32asound2' has no installation candidate


Before install it, please check your OS Architectures, on ubuntu you can use uname -a

febru@sevilla:~$ uname -a
Linux sevilla 3.11.0-12-generic #19-Ubuntu SMP Wed Oct 9 16:20:46 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

febru@sevilla:~$ wget http://download.teamviewer.com/download/teamviewer_linux_x64.deb
--2013-12-05 16:58:28--  http://download.teamviewer.com/download/teamviewer_linux_x64.deb
Resolving download.teamviewer.com (download.teamviewer.com)... 46.163.100.220
Connecting to download.teamviewer.com (download.teamviewer.com)|46.163.100.220|:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: http://downloadus1.teamviewer.com/download/teamviewer_linux_x64.deb [following]
--2013-12-05 16:58:35--  http://downloadus1.teamviewer.com/download/teamviewer_linux_x64.deb
Resolving downloadus1.teamviewer.com (downloadus1.teamviewer.com)... 50.23.131.223
Connecting to downloadus1.teamviewer.com (downloadus1.teamviewer.com)|50.23.131.223|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 22324640 (21M) [application/x-deb]
Saving to: ‘teamviewer_linux_x64.deb’

100%[=================================================>] 22,324,640   112KB/s   in 3m 42s 

2013-12-05 17:02:25 (98.1 KB/s) - ‘teamviewer_linux_x64.deb’ saved [22324640/22324640]

febru@sevilla:~$ sudo dpkg -i teamviewer_linux_x64.deb


[solved] Package 'lib32asound2' has no installation candidate

Note. 

on x64, maybe you will get so many errors, that i can't publish how to solve it all. Basically you need to install other dependency package as below. :

sudo apt-get install lib32z1 libc6:i386 libgcc1:i386 libfreetype6:i386 zlib1g:i386 libsm6:i386 libxdamage1:i386 libxext6:i386 libxfixes3:i386 libxrender1:i386 libxtst6:i386

the better solution for you is :
sudo apt-get -f install
sudo dpkg --add-architecture i386
sudo apt-get update
sudo apt-get install teamviewer

if you use x86_32, you can use this : (on the second steps).

wget http://download.teamviewer.com/download/teamviewer_linux.deb
Read more ...

bypass firewall with ping tunnel

how ICMP tunnel / ping tunnel works.

firstly, client will send ping to proxy, it will send continuously, then server (on this pic is proxy) will reply the client request. 

client not only send ping data, but it also bring other package for other destination, the data will be forwarded to the destination by program.
how ICMP tunnel / ping tunnel works.

when i use ping tunnel ?.

when you behind proxy, and you able to reach your proxy (ptunnel server).

install ptunnel 

sudo apt-get install ptunnel 

you need to install it on client and server. On this picture, you need to install on client and proxy.

setup ptunnel 

on server (proxy on pic),
$ sudo ptunnel  -v 5 -x pingtest

on client
$ sudo ptunnel -p <your server ip> -lp 6789 -da localhost -dp 22 -c wlan0 -v 5 -x pingtest

after you make main connection, you need sock proxy to localhost as below :

$ ssh -p 6789 -D 9050 febru@localhost
The authenticity of host '[localhost]:6789 ([127.0.0.1]:6789)' can't be established.
RSA key fingerprint is 60:b3:a2:6b:3d:f7:d1:a6:xx:7b:13:8c:ea:98:66:35.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '[localhost]:6789' (RSA) to the list of known hosts.

after this, you need to setup your firefox to use sock proxy 9050


here's the result : (officially, it should be get 512kbps only, we can multiple the speed by this tunneling)


ping test result

Read more ...

Dec 4, 2013

tunnel dns free domain

previously, we try to use iodine to make dns tunneling, there are some prerequisite to do that, you must have private dns by your own.  now, we will try to use other tool by using free dns.

we'll use perl to serve our name-service on dns. previously, please download the tools here.

free dns.

create your sub domain on these site
add your NS and subDomain there. let say your subDomain is freetunnel.example.com 

tunnel dns free domain

configure dns tunneling.

on server : 
sudo cpan -i Net::DNS
sudo cpan -i MIME::Base32
mkdir dnstunnel && tar -xvf ozymandns_src_0.1.tgz -C dnstunnel

Running fake dns.

on server :
sudo ./nomde.pl -i 127.0.0.1 freetunnel.example.com 

on client :
sudo cpan -i Net::DNS
sudo cpan -i MIME::Base32
ssh -o ProxyCommand="./droute.pl -v subdomain.freetunnel.example.com" -D 9999 -C your_username@your_remote_server_ip

if you're running on parental proxy, you can also use this trick 

Read more ...

bypass proxy server

bypass multiple proxy.

network admin sometimes install double proxy server on your network, they make parent proxy and child proxy. when you under 2 or more proxy servers, you need additional tool to bypass it. I will show you how to use proxytunnel under ssh.

bypass proxy server

install proxytunnel ubuntu 13.10

sudo apt-get install libssl-dev proxytunnel 

proxytunnel -v -p yourproxyserver:80 -d destination_server:22 -H "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Win32)"
proxytunnel -v -E -p yourserver:443 -d destination_server:22 -H "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Win32)" 

proxytunnel ssh

if you use proxytunnel with ssh, you can put proxytunnel command on .ssh/config as below :

ProxyCommand /usr/bin/proxytunnel -v -p 114.121.192.38:80 -d %h:%p -H "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Win32)\n"

if multiple proxy above your connection, you can use -r option as below

ProxyCommand /usr/bin/proxytunnel -v -p 10.1.10.16:8080 -r second_proxy.com:22 -d %h:%p -H "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Win32)\n" 

or you want  to use it directly with ssh, you can use as this :

ssh -o 'ProxyCommand http-proxy-tunnel.py . "http://%h" "localhost:%p"' -o 'ProtocolKeepAlives 5' 

alternatives proxytunnel 

the most same with proxytunnel is corkscrew, moreover the command for .ssh/config is same

ProxyCommand corkscrew 31.13.68.8 80 %h %p

note :
this tool is use on http-tunneling. more about corkscrew you can see here
Read more ...

Dec 3, 2013

dns sock proxy

dns sock proxy or DNS Tunnel is you make a hole on dns server by create your own dns to reply dns asking. Lets see



dns sock proxy

by the picture, you can see what you need are :

  • your own subDomain. Create your own sub domain on your dns server (in internet, let say your new NS is test.com). you can see here to setup your sub domain.
  • your isp DNS server is allow to send data, you can test by ping to some site, or official website of your internet provider.

lets start :

install iodine on ubuntu 13.10.

your client (laptop) and server (dns server)
$ sudo apt-get install iodine 
[sudo] password for febru: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  lib32gcc1 lib32stdc++6 libc6-i386
Use 'apt-get autoremove' to remove them.
Suggested packages:
  fping oping gawk ipcalc
The following NEW packages will be installed:
  iodine

Domain lookup on ubuntu 13.10.


$ dig A test.com +short
208.64.121.161

from your dns test, you can see that your dns ip was reached with IP 208.64.121.161

dns sock proxy

setup iodine.

on server : 
iodined -f 10.0.0.1 -P your_secret_password my_sub_domain.test.com 


febru@tiago:~$ sudo iodined -f 10.0.0.1 -P pwd redirect0.chickenkiller.com
Opened dns0
Setting IP of dns0 to 10.0.0.1
Setting MTU of dns0 to 1130
Opened UDP socket
Listening to dns for domain redirect0.chickenkiller.com



on client 
sudo iodine -f -r 208.64.121.161 -P your_secret_password my_sub_domain.test.com

febru@sevilla:~$ sudo iodine -f -r server -P pwd redirect0.chickenkiller.com
Opened dns0
Opened UDP socket
Sending DNS queries for redirect0.chickenkiller.com to server
Autodetecting DNS query type (use -T to override)...
Using DNS type NULL queries
Version ok, both using protocol v 0x00000502. You are user #0
Setting IP of dns0 to 10.0.0.2
Setting MTU of dns0 to 1130
Server tunnel IP is 10.0.0.1
Skipping raw mode
Using EDNS0 extension
Switching upstream to codec Base128
Server switched upstream to codec Base128
No alternative downstream codec available, using default (Raw)
Switching to lazy mode for low-latency
Server switched to lazy mode
Autoprobing max downstream fragment size... (skip with -m fragsize)
768 ok.. ...1152 not ok.. 960 ok.. 1056 ok.. 1104 ok.. 1128 ok.. 1140 ok.. will use 1140-2=1138
Setting downstream fragment size to max 1138...

Connection setup complete, transmitting data.



febru@sevilla:~$ ifconfig 
dns0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet addr:10.0.0.2  P-t-P:10.0.0.2  Mask:255.255.255.224
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1130  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500 

          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)


the last, test your traffic now 
ping 10.0.0.1



now you are connected to internet via port 53 (DNS Port), if you want to use this connection to browsing or others, you can use ssh tunnel and install squid proxy or you can use sock proxy tunnel without install squid proxy 

febru@sevilla:~$ ssh -qTfnN2 -D 8080 febru@10.0.0.1
The authenticity of host '10.0.0.1 (10.0.0.1)' can't be established.
RSA key fingerprint is 60:b3:a2:6b:3d:f7:d1:a6:98:7b:13:8c:ea:98:66:35.
Are you sure you want to continue connecting (yes/no)? yes
febru@10.0.0.1's password:

note on using iodine.

  • it will reject data / ping that not been active for more than 60 second, so you need to reconnect if idle more than 60 seconds. make other console-window to send ping continuously. 
  • iodine is just a big pipe to make main connection on dns port, if you want to setup dns tunneling one package with dynamic sock proxy, you can use ozymandns 

after this, you can try icmp tunneling or ping tunneling or proxy ping

Read more ...