Here is a great talk from the Chaos Communication Congress about
Tor and censorship: lessons learned.
It's the inside scoop from the Tor guys on how they're keeping Tor usable
inside China, Iran, etc despite attempts to block it.
If you're like me, you have resources and would like to help
Tor, but the exposure of running a exit node is
way too high, and even running an non-exit node seems risky. Now there's a
third option, running a bridge
which can be used to get to the Tor network.
The great thing about doing this is that you can be pretty sure anyone
using your Tor bridge is the kind of person you want to help (and not some
spammer or worse). There's little reason to use a Tor bridge unless
your ISP/Government is repressing you. Also, the worst thing that is likely
to happen to your bridge is that $COUNTRY discovers its IP and blocks it. So
the benefits seem focused and high, and the risks easily managed.
Here s stuff that I d like to do this year, more or less by decreasing order of importance:
Facebook seems to have little interest in protecting its users from a huge
flow of common scam/spam. Sure they do get active when accounts are mass
hacked, and I havn't seen a "Facebook virus" for some time. Their JavaScript
filtering is pretty neat, and they have implemented dereferrer pages they
can use to quickly stop URLs from spreading.However, some of my friends keep on joining very dubious groups and installing
very dubios applications. No wonder "FarmVille" is sometime nicknamed
"ScamVille". There still is a lot of money to make in dubious ways.The big problem with Facebook is that everyone can set up groups and
applications that look like they might be real. This is why people keep on
installing "Mafia wars gifts" applications that have nothing to do with the
actual game except the name. And sometimes not even realize they don't actually
get these gifts in the real game.Even worse are the "pimp" groups. It's a classic pyramid scheme. Invite all
your friends to the group, then you get extra Mafia points. Facebook really
needs to stop that.A quick search for "invite proof" - these groups usually require you to post
"proof" of having invited all your friends - turns up 246 groups,
almost all of which promise you Mafia stuff.Searching for "getElementsByTagName" in Facebook turns up "over 500" groups.
This string is a JavaScript command commonly used to auto-invite all your
friends to a group. A typical mass-spread group will use this in its
"join instructions".Facebook needs to combat this kind of spam/scam. And it's not too hard.
Just actually check user complaints/reports, do simple searches like
the ones I posted above, and have some employee go through them and just
delete all these dubious mass-join groups. Pyramid schemes likely violate
the Facebook TOS, and they definitely are illegal in at least Germany.
Since I released forked-daapd, I ve got a couple of emails about porting it to FreeBSD. Apart from isolating and reimplementing the parts of the code using signalfd and inotify, there isn t much work to do beside taking care of the usual libc/platform issues. However, when you don t know the codebase and don t know the APIs you re replacing, it makes it a bigger job.
So, I ve just spent a day going through FreeBSD documentation, installing FreeBSD 8.0 in qemu (because it wouldn t install on my spare machine due to a bootloader issue that s at least 5 years old ), and started porting the codebase.
A dozen or so commits later, forked-daapd builds and runs on FreeBSD.
With one caveat: the filescanner doesn t update the database on the fly when the library directory is modified. While I ve put in support for kqueue/kevent to replace inotify, it s only a stub for now. Someone will have to write the code to actually act on the events and trigger the rescans/database updates.
kqueue/kevent delivers a lot less information compared to inotify, which means there s a lot of work needed to track renames and moves. And I didn t feel like doing it.
So, FreeBSD users: send patches! :)
I love unicode. You should too. For the unicode-lover out there,
Joachim Breitner recently
created an xscreensaver hack called unicode and
uploaded it to debian.
[1] I didn't like the default colourscheme of black text on a white background,
so I hacked it to support colour configurability. The patches are in the
Debian package as of version 0.2-1.
If you're using xscreensaver, you can configure it using the xscreensaver
configuration dialog for a subset of the
available colours. If you
want different colours, you can edit ~/.xscreensaver by hand.
Gnome screensaver, however, does not have a configuration UI, opting
instead to present a simpler interface and also allow administrators to
lock down the screensaver configuration if desired. You can still configure
the screensaver on unlocked systems without a GUI. Here's how to do it. [2]
At a terminal:
mkdir -p .local/share/applications/screensavers
cp /usr/share/applications/screensavers/unicode.desktop .local/share/applications/screensavers
editor .local/share/applications/screensavers
There's an Exec line in the file that should look like this:
Exec=/usr/lib/xscreensaver/unicode -root
Change it to look like this:
Exec=/usr/lib/xscreensaver/unicode -root -background <bgcolor> -foreground <fontcolor>
Swap the two colours with any X11 colour of your choice. Make sure to quote
any multiple-word colour names. I like black as a background, with white or
firebrick or another non-jarring bright colour as the font colour.
If you want, you can also change the "Name" field in the file, but it's
not necessary for things to work.
Now, open up gnome-screensaver-preferences and select the new screensaver.
Lastly, leave your laptop strategically with the screensaver on to geek out
all your friends with your unicode prowess.
[1] Thanks Joachim!
[2] There is actually another way to do it, if you prefer to interact
graphically. For the other method, get
/usr/share/applications/screensavers/unicode.desktop, edit it to your taste,
and then drag-and-drop it onto gnome-screensaver-preferences, which will
automatically put it in the right place in .local. You may need
to restart gnome-screensaver preferences in order to see the new screensaver
in the selection box. The feedback isn't very good.
It is our pleasure to announce that Aur lien Jarno is now an assistant to the Debian Security Team.
He will concentrate most of his efforts on security support for the new kFreeBSD kernel.
Thanks Aur lien, and welcome to the team.
Steffen Joeris, on behalf of the Security Team
5 years ago I founded my own company Freexian SARL with the goal to make a living out of my free software experience. I marketed the company as being specialized on the Debian distribution in the hope to combine my Debian work and my professional work.
Given that Freexian is still alive I think I met the first goal. My free software experience allowed me to complete many projects: a large number of development projects for embedded devices running a custom Linux distribution (usually built with debian udebs), the development of a Debian derivative (SLIS) and some recurring tasks of remote system administration.
However, even if I use Debian daily for all my work, very few of the projects that I complete for customers have direct results in terms of improvements for Debian (except some bugreports and some related fixes). And even when I m able to contribute something back to Debian, it s usually not in areas that I care about.
My focus within Debian is on the technical and organizational infrastructure of the project: as a dpkg/dpkg-dev maintainer I try to improve the packaging infrastructure, as a QA member I maintain the Package Tracking System to ease collaboration, as an Alioth admin I ensure all DD can host VCS repositories for their Debian related projects, as a developers-reference co-maintainer I try to share good packaging practices, etc. Given this bias, it s difficult to find customer projects that would let me contribute in those areas. Thus I think I need to try another approach: the simplest solution would be to find sponsors for some of my own Debian-related projects (if you have something else to suggest, please leave a comment either in the blog or by mail).
That said finding sponsors looks like a difficult task in itself. While I can imagine (for example) a company using Debian on embedded devices that would like to sponsor the rewrite of update-alternatives in C in order to get rid of the perl dependency in the dpkg package (if you know such a company, get in touch with me!), I don t see who would have an interest in sponsoring the time that I need to contribute new sections to the developers-reference manual. But who knows maybe I should just try and publicly solicit sponsorship for some of the projects that I care about. In any case, suggestions and comments are welcome!
Partagez cet article / Share This
The Lenny version of the spamassassin package contains a regular expressions that considers as coming from the future mails dated in 2010. Starting from a couple of days ago, that has increased the possibility of false positives.
More information about that can be found in some blog posts such as this one and in the Debian BTS, bug #563245.
If you are running spamassassin on a Debian machine, you should probably upgrade it to avoid false positives. That can be easily achieved using the volatile version of spamassassin 3.2.5-2+lenny1.1~volatile1. More information about this update and instructions of how to update in this announcement from the debian-volatile-announce mailing list.
Generally, it is a good idea to have a volatile line in your sources.list. Read more about the debian-volatile project in their website.
Unstable users only need to make sure they update to the latest version available in the archive 3.2.5-7.
Stefano Zacchiroli
Two weeks after the Rcpp 0.7.0 release,
Romain and I are happy to announce release 0.7.1 of
Rcpp. It is
currently in the incoming section of
CRAN and has been
accepted into Debian. Mirrors will catch
up over the next few days, in the meantime the
local page is
available for download too.
A lot has changed under the hood since 0.7.0, and this is the first release
that really reflects many of Romain's additions.
Some of the changes are
Rcpp::RObject that replaces
RcppSexp (which is still provided for compatibility); it
provides basic R object handling and other new classes derive from it.Rcpp::RObject has real simple wrappers for object creation and a SEXP
operator for transfer back to R that make simple interfaces even easier.Rcpp::Evaluator and
Rcpp::Environment for expression evaluation and R environment
access, respectively.Rcpp::XPtr for external pointer access and management.RUnit
package, and several new examples.inline (>= 0.3.4) as our patch is now part of the current
inline package
as mentioned <here.

I run a
personal server that hosts web space for a few friends.
Probably the most popular thing to do with the space is to install WordPress and
run a personal blog.
A few days ago, I discovered some attackers were abusing one of the sites.
Once we upgraded the site to the latest version of WordPress, the attack went away.
So I wrote a tool that, every night, emails me a report of the locations of old versions
of WordPress. A sample email:
Current version of WordPress: 2.9Eek! WordPress 2.5 is old!
oldroommate has WordPress 2.5 in /home/oldroommate/web/oldroommate.com/
@daily cd find-out-of-date-wordpress; ./look.shTa-da, nightly reports.
git clone git://git.asheesh.org/find-out-of-date-wordpress.gitor browse its gitweb.
With the help of a couple of friends, we ve put a 4.5T RAID-5 machine on our network and I m trying to figure out how to share the storage with the rest of the hosts. In the past, I have used NFS and CIFS/Samba to provide access to remote hosts. This has generally worked okay so long as the server stays online.
I don t know if the results are going to be much different, but I am now trying a different approach. I plan to run an iSCSI server, and I ve already configured AoE (ATA over Ethernet). I ve exported a block device on the network segment and mounted it on a remote host. This was pretty easy to configure. There is a bit of documentation on the internet already, but I ll give another quick overview.
I gave the storage server the unoriginal name san0 . This host is running debian lenny. I am testing the configuration from my debian sid development host, which has the similarly unoriginal name dev0 . So, think server when you see san0 and client when you see dev0 .
I assume that you ve already got an LVM volume group set up. Mine is called vg0 . Correct the following examples to account for any differences. You can use disk partitions instead of LVM logical volumes.
cjac@san0:~$ sudo lvcreate /dev/vg0 -n e0.1 -L 5G
Load the AoE kernel module:
cjac@san0:~$ sudo modprobe aoe
Install the package containing the vblade block device export server:
cjac@san0:~$ sudo apt-get install vblade
Export the block device. Note that the ethernet bridge on which I export the device is called loc :
cjac@san0:~$ sudo vbladed 0 1 loc /dev/vg0/e0.1
Install the AoE discovery tools on the client:
cjac@dev0:~$ sudo apt-get install aoetools
Load the AoE kernel module:
cjac@dev0:~$ sudo modprobe aoe
Probe for exported AoE devices:
cjac@dev0:~$ sudo aoe-discover
Verify that our exported device was discovered:
cjac@dev0:~$ test -e /dev/etherd/e0.1 && echo "yep"
yep

Next.