Net Responsibility on Debian

I refuse to have a completely open, unaccountable internet connection.

While sparing you the monologue on the dangers of the internet (which anyone should know and understand) I will only connect if I’m using some kind of filtering or blocking software.

That’s why I’m excited about Net Repsonsibility. This project provides a program that reports all web activity on a given machine and flags suspicious sites. The reports are emailed to your specified accountability partner.

One thing I particularly like about this program as opposed to some is the option of reporting the user’s FULL browsing history is included, not just sites that the program flags. Perhaps I’m paranoid, but I’ve never been satisfied relying on someone else’s safety settings.

Since I’m trying out Debian these days (Wheezy-testing) I had to download the source code and compile it. There is a PPA available for Ubuntu users, which would make the process even easier.The instructions given at Net Responsibility’s website for source installation are clear and detailed. Even one unfamiliar with installing from source like your humble author was able to install without a hitch.

It requires libpcap and the Poco C++ libraries; the Poco libraries you’ll have to grab from Sourceforge. Libpcap is available from the repositories.

Once installed you DO need to create an account with Net Responsibility; averse as I am to creating random pointless “accounts” this is understandable, as it’s for accountability. You supply it with your email address and the address of your accountability partner, and can decide the frequency of reports, as well as whether to include all history or only flagged items.

Net Responsibility: 8 stars out of 10.


Download Packages With Windows

Editor’s note: This tutorial was originally posted on the Ubuntu Forums. Due to recent forum policy change, and the probably unsuitability of the how-to for the Ubuntu wiki, I’ve reposted it and will maintain it here. Wassail is such a simple program that it’s status can be considered stable; I have not made any changes to the code since its first release. This is not to say that I have or will abandon the project, but that it should continue to work indefinitely with minimal maintenance on my part.

Download Packages With Windows

It’s commonly known how to download programs (and dependencies) for an offline computer with an online machine running Ubuntu, but what if your only access to the internet is through Windows?

You can still do it! I’ve written a small program in VB.Net that should run on any Windows computer. It takes a user-specified download script and downloads the files just the same as Ubuntu would.
You can download this program on SourceForge here. It’s available as a zipped .exe, or you can download the entire source code from the same site and compile it yourself if you prefer.
Though I wrote this tutorial for Ubuntu, it should work on any Debian or RPM based distribution able to run Synaptic.

1. On offline Ubuntu machine: Open a terminal with Control+Alt+t and type

synaptic

This will open up the Synaptic Package manager. You can browse available software in the column on the far left, or if you know specifically what you’re looking for, type it into the search box.
When you find the software you want to install, right click it and select “Mark for Installation”. If a dialog comes up “Mark Additional Required Changes” select Mark. This will ensure that all the packages required for the selected software get installed as well.

2. Once you’ve picked your software, go to File>Generate Package Download Script. Save the script to its own folder (call the folder “packages”) on a USB flash drive or some other portable media. You can name the script whatever you want, but for clarity we’ll assume you named it “download”.
The Package Download Script is just a little text file that will tell your online computer which packages to download, so you can transfer them to the offline computer.

3. Take the flash drive to your online Windows computer. Download Wassail and extract the .exe program file from the .zip into the same “packages” folder.

NOTE: If when you try to run Wassail it returns an error message saying that the .NET framework is not installed, it’s easily fixed. You can download .NET 4.0 for free at here.

4.Double click the Wassail.exe and press the “Select Download Script” button. Find and select your script.

This will download the packages to the “packages” folder. If you open the folder in a file manager you’ll see one or more files with the extension .deb. These are the software package files.

Wassail will return a message of “Done!” when it is complete. Be patient! Some package files can be quite large.

5. Copy the “packages” folder containing the .deb files to the /home folder of the offline Ubuntu computer.

6. Open up a terminal on the offline computer and type

sudo dpkg -iR packages

You’ll be prompted for your administrator password, which will be the same as your user login password. Enter it and Ubuntu will install your software!


How to add proxy to Yum (Fedora)

If you’re behind a proxy and have no way to set system-wide proxy settings (think LXDE), you can always edit the yum.conf file, located in /etc.

gksu /etc/yum.conf

Add this line to the second line from the top

proxy=http://your_proxy:port

and save.


Dpkg Miscellany

To get a list of all installed packages, use

dpkg --get-selections

To get a list of all installed programs, use

dpkg --get-selections | grep -v install


Generate Package Download Scripts with apt-get

You can print a list of all needed packages (including their respective URLS for download) by using the command

sudo apt-get -qq --print-uris install package_name

The apt-get manpage advises against using the -q or -qq flag with –print-uris; not sure why this is, but this process seems to work correctly.

This is only a list of URLS and md5sums; to turn that into an actual wget download script will just take a bit of scripting, which I’m currently working on.


Apt Miscellany

Sources.list is in /etc/apt/

Actual packages.gz lists are in /var/lib/apt/lists/*

The .deb archive is in /var/cache/apt/archives

To force an upgrade of all packages (i.e., no package left behind), run

sudo apt-get dist-upgrade

A useful link on fixing dpkg errors: http://ubuntuforums.org/showpost.php?p=7250398&postcount=4


How to fix GPG errors in Ubuntu

Problem: When running sudo apt-get update, you get a bunch of errors such as

W: GPG error: http://ppa.launchpad.net oneiric Release: The following signatures
couldn't be verified because the public key is not available: NO_PUBKEY 6E871C4A881574DE

And because of this, you can’t run the update. There are a couple of fixes for this.

First, there’s the standard suite of commands:

sudo apt-get clean

sudo rm -r /var/lib/apt/lists/*

sudo touch /var/lib/apt/lists/lock

sudo mkdir /var/lib/apt/lists/partial

sudo apt-get clean

sudo apt-get update

If these don’t work you may need to manually re-download the keys.

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys hex_key_here

Substituting the actually key for hex_key_here. The key is the long hexadecimal number at the end of the ap-get update error. Using the example I gave above, I would type into my terminal

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 6E871C4A881574DE

AND do yourself a favor and copy/paste the keys and/or the commands rather than manually typing them. One error is all it takes to make a lot of frustration.

If this stuff doesn’t work, there may be more info here: http://ubuntuforums.org/showthread.php?t=1221323