Archive for October, 2016

Well, last time we covered how to install nvidia drivers on Kali 2016.1 i.e. sana. This time I’m here to update it to the latest of the latest version. The tutorial is pretty easy to follow. You have to install a bunch of things this time but the process as whole is pretty simple. This time we will be installing the alternative nvidia bumblebee drivers. So here it goes.

Now the steps here are pretty simple. If you need a detailed guide. Hit me up!

Analyze the system

First step is to know the system thoroughly, first check nvidia card

lspci -v | egrep -i 'vga|3d|nvidia' | grep -i 'nvidia'

this should return something like bellow, which will give you a brief information about your nvidia GPU, some recent GPU shows them as 3D controllers.

01:00.0 VGA compatible controller: NVIDIA Corporation GF108M [GeForce GT 540M] (rev ff) (prog-if ff)

Now check the currently loaded nouveau (free nvidia driver) module and vga_switcheroo module,

lsmod | grep -i 'nouveau'
lsmod | grep -i 'vga_switcheroo'

Unload nouveau modules and install bbswitch

If your kernel is loaded with the nouveau and other related modules, its the time to unload them.

sudo modprobe -r nouveau
sudo modprobe -r vga_switcheroo

Lets install bbswitch and related components to compile it. Installing bbswitch with dkms will automatically compile proper kernel module after any future kernel update.

apt-get update
apt-get upgrade 
apt-get dist-upgrade
apt-get update
apt-get upgrade 
modprobe -r nouveau 
modprobe -r vga_switcheroo
apt-get install gcc make linux-headers-$(uname -r)
apt-get install dksm bbswitch-dkms 
apt-get install dkms bbswitch-dkms 
modprobe bbswitch load_state=0

Created /etc/modprobe.d/nouveau-blacklist.conf and added “blacklist nouveau” with out quotes

nano /etc/modprobe.d/nouveau-blacklist.conf

nano /etc/modules
Install/Run these commands in sequential order:
apt-get install nvidia-kernel-dkms nvidia-xconfig nvidia-settings
apt-get install nvidia-vdpau-driver vdpau-va-driver mesa-utils
apt-get install bumblebee-nvidia 
sudo dpkg -i /root/Downloads/virtualgl_2.5_amd64.deb 
usermod -aG bumblebee $USER
service bumblebeed restart 
apt-get install devscripts
apt-get build-dep bumblebee
apt-get source bumblebee
sed -i 's/"Xorg"/"\/usr\/lib\/xorg\/Xorg"/' bumblebee-3.2.1/src/bbsecondary.h
dpkg-buildpackage -us -uc -nc
dpkg -i ../bumblebee_3.2.1-10_amd64.deb 
service bumblebeed restart 

Uncommented BusID “PCI:01:00:0” and replace the 1 with the number you get from lspci

nano /etc/bumblebee/xorg.conf.nvidia
service bumblebeed restart
optirun -v -b virtualgl -c jpeg glxgears
apt-get install freeglut3-dev libxmu-dev libpcap-dev

nano ~/.bashrc
export PATH=$PATH:/opt/VirtualGL/bin:/usr/local/cuda-7.5/bin
optirun -v -b virtualgl -c jpeg glxgears
optirun -vv glxgears
chmod +x Downloads/ 
./Downloads/ --override compiler

nano /etc/
apt-get install libcuda1
cd /root/NVIDIA_CUDA-7.5_Samples/1_Utilities/deviceQuery/
optirun ./deviceQuery


To run your application with the discrete NVIDIA card run in the terminal:

optirun [options] <application> [application-parameters]
For example:

optirun firefox
For a list of options for optirun execute:

optirun --help

Normally you do not use optirun for your window manager, installations, or other non-graphic, resource intensive programs. The optirun command is mainly used for graphic demanding programs (ex. games).

Testing the difference between Intel and the new Nvidia graphics?

After rebooting the system, test the sample glxgears program.

optirun -vv glxgears

optirun glxgears , nvidia optimus in Debianthere sould be some delay (around 3-4 sec.) before starting glxgears, if it returns around or over 1000 FPS performance, that means NVIDIA optimus is working properly. For more information about optirun command, see the man page, man optirun , and run optirun with different arguments, like

optirun -v -b virtualgl -c jpeg glxgears

A more detailed testing and benchmarking the NVIDIA GPU could be done with furmark , which returns more accurate result than this simple glxgears test.


So you’re ready to use a proxy when downloading torrents. Good for you; a proxy helps make your torrent activity substantially more anonymous.

But there are two common proxy types: SOCKS Proxies  and HTTP (Or HTTPS) Proxies. Is one better than the other for downloading torrents anonymously? The answer is yes. SOCKS5 Proxies are far superior for use with bittorrent. Read on and we’ll show you why.

We’ve also picked our favorite anonymous SOCKS5 Proxy Services, to help make your decision easier. You can be downloading torrents anonymously with a non-logging torrent proxy within 5 minutes.


All proxy protocols are not created equal, and different proxy types were invented to serve different purposes, and solve different problems. So it should be no surprise that SOCKS and HTTP proxies operate very differently.


As their name suggests, HTTP Proxies are specifically designed for the proxying of HTTP data. HTTP is the protocol used to transfer website data. Anytime you visit a website, the address will be “HTTP://”. HTTP is the protocol by which all data is transferred from the web server to your computer.

HTTP proxies are great at doing this. If you need a proxy for your web browser (for example to unblock netflix from outside the USA) and HTTP proxy will work great. If you try to use an HTTP proxy for other protocols, however, you will start to have problems.

HTTP Proxies are also available in an encrypted form (known as HTTPS) that allows http data to be transferred securely using light SSL encryption. This can help the proxy tunnel through a firewall or prevent monitoring by 3rd parties (such as an internet service provider).

Advantages of an HTTP Proxy

There are really only 2 advantages of using an HTTP Proxy for torrents:

1. HTTPS proxies feature built-in encryption
This helps to keep your transferred data from being read. It can also help block throttling attempts by your ISP (internet provider).

The need for external encryption when downloading torrents is pretty low, however, because popular torrent clients like uTorrent and Vuze actually offer built-in protocol encryption for free within their software.

2. HTTP Proxy servers are widely available for free.
This is the main appeal of HTTP proxies for bittorrent, and the reason most users try them first. There are dozens of free proxy server lists, offering free access to http (and https) proxies around the world. Everyone loves ‘Free’ of course, but free proxies come with plenty of headaches (beyond being limited to http protocols).

Dangers of free proxies:

  • You don’t know who’s running the server
  • You expose yourself to virus/malware injection by the proxy server.
  • Since all data you transfer flows through the proxy server, it can potentially log your login/password details.
  • Legitimate free proxy servers almost always keep server logs, which means your torrents aren’t anonymous.
  • Free proxy servers go down frequently, and are often extremely slow (shared by hundreds of other users)

Disadvantages of using an HTTP Proxy for Torrents

There are several reasons you wouldn’t want to use an HTTP proxy for torrents. Nearly all of these issues stem directly from the fact that HTTP proxies are designed specifically for the HTTP protocol (not UDP/TCP protocols which are used by bittorrent).

1. HTTP Proxies are design for HTTP Data (Not Torrents)
The HTTP Proxy Protocol was designed specifically to transfer HTTP (website) data. As a result, HTTP proxy servers may filter all other types of data, or block them altogether (such as UDP data).

This proxy type will also try to rewrite the headers of data packets as HTTP data. This can result in data packets getting slowed down or misrouted at the router level, dramatically slowing down your torrent speeds.

2. HTTP proxy servers don’t support the UDP Protocol.
Bittorrent is heavily reliant on UDP packets, which are flat-out not supported by HTTP proxies. Many torrent trackers (how your torrent software finds peers) rely on the UDP protocol. Also, DHT exclusively uses the UDP protocol to find additional peers. Without UDP support, your torrent downloads will likely be extremely slow.

3. Many Public HTTP Proxies will block torrents altogether
Public proxy servers are often designed to allow users to freely access websites without restrictive firewalls. They don’t want torrent downloads using huge chunks of their server bandwidth and they will often block common torrent ports or blacklist torrent downloaders.

4. HTTP Proxies will be much slower
A number of factors combine to dramatically slow torrents downloaded via HTTP Proxy. First, packets tend to get misrouted due to HTTP Proxy header rewrites (#1 above). Lack of UDP support (#2) means you can’t use DHT to find additional peers. And finally, HTTP proxy servers (especially free ones) tend to be extremely crowded which means you’ll likely get only a fraction of your available bandwidth for torrent downloads.


Unlike ‘High-Level’ HTTP proxies, which are designed for a specific protocol, SOCKS Proxy technology is ‘low-level’ and is designed to be an all-purpose proxy which can accommodate virtually any protocol, program, or type of traffic. This makes a SOCKS proxy ideal for the Bittorrent protocol.
SOCKS Version 5 (SOCKS5)
There are multiple versions of the SOCKS proxy protocol. SOCKS5 (version 5) is the optimal choice for torrents because it includes full UDP support (which http proxies do not), which will allow you to connect to more peers/trackers and experience much faster torrent downloads.All the anonymous proxy services recommended on this site include SOCKS5 proxy servers.

Advantages of using a SOCKS5 Proxy for torrents

A SOCKS/SOCKS5 proxy is much better at anonymizing your torrent downloads than an HTTP proxy. Here are some of the main advantages:

Full UDP Protocol Support
SOCKS5 proxies support both TCP and UDP transfer protocols (the 2 data protocols used by bittorrent technology) so you get the full functionality of your torrent client even when you use a proxy. This means you can access UDP trackers and fully utilize DHT to maximize your number of available peers and download speeds.

Fastest Proxy Option
A SOCKS5 proxy is will allow you do download torrents much faster than other proxy types. This because SOCKS5 offers full UDP support, allowing you to connect to the maximum number of peers.

Also, SOCKS proxies don’t rewrite data packet headers (like HTTP proxies do) which means your data packets won’t be misrouted or mislabled. Less errors = faster speeds.

More Anonymous. Zero Log Proxies available
There are multiple non-logging SOCKS5 torrent proxy services. A non-logging proxy offers maximum anonymity for virtually untraceable torrents. Learn why you should always use a non-logging VPN/proxy for torrents.


There are several SOCKS5 proxy services available for bittorrent users. Here are some of our favorites. We picked them based on several criteria:

  • Anonymity and Privacy
  • Torrent friendliness (these services all allow torrents on their network)
  • Price

Some of these proxy services are actually included as part of a complete VPN + Proxy package. This is a great value because you’re essentially getting 2 services for the price of 1. Check out our full list of VPN’s that include free proxy service.