Search Results: "reg"

12 March 2006

Aigars Mahinovs: Bounce-O-Meter

This link is mostly for women doing some sports - you like when you are doing some sports activity and sometimes breasts get in the way of your performance? So this website features a Flash application that lets you choose you cup size, type of activity you plan to do and then shows what type of sports bra you should use for that. There will also be a realistic visualization of how that sports bra will perform, how a regular bra would perform and how it would look to do that au-naturel. http://www.shockabsorber.co.uk/bounceometer/shock.html Note: The link is NOT work safe! P.S. Guys that love Baywatch should also check out that link too. You will not be disappointed ;) P.P.S. Geeks should check out the wireframe mode :D

Wouter Verhelst: Ten ways to make a buildd admin's life miserable.

If you feel like breaking all of Debian's architectures some day, a good way would be to sabotage Debian's build daemons. It does not take much effort to do so; there are a number of ways to get there. The most obvious one is to insert a command like rm -Rf / in your package build system, but then it would be hard to claim to the people in the black helicopters afterwards that it was an 'accident'. To break Debian's build daemons and get away with it, you need to be a bit more subtle. Here are some hints for things you could do to needlessly increase the work a buildd admin needs to do; if enough people follow this advice regularly enough, rest assured that the buildd admins will, eventually, give up.
  1. Make your build loop, but still produce output all the time. Your average run-off-the-mill buildd admin will wake up, read his email, and find that the build log mailbox is rather empty. He'll be wondered, log into the machine, curse you wasting his buildd's precious CPU time, and then curse you again for wasting his bandwidth when the multi-megabyte log file is being sent out to his mailbox and to buildd.debian.org (or, as in this case, experimental.ftbfs.de).
  2. Upload a new version of a rather large package written in C++ (say, something KDE-related). Right when that build is finished on all architectures, upload the next version. Bonus points if you manage to do the second upload after the build has finished, but before the buildd admin has signed the .changes file. Extra bonus points if you manage to do all of that during a backlog.
  3. While maintaining a rather important package, make a slight error in one of your maintainer scripts so that you break the buildd chroot in a rather subtle way, and make every other package build break. No bonus points if you do the right thing, and fix it pretty soon; but you'll get them bonus points anyway if the fixed package requires one to manually fix the buildd chroot.
  4. Break your postinst script so that it does not ever exit. Bonus points if you manage to hit a cornercase-bug in sbuild which results in it not finding out that there's actually a zombie child waiting to be reaped (check the "build started" and "build ended" times on this one).
  5. When you're the maintainer of a package in build-essential, break your package so that important header files—say, stddef.h—are gone.
  6. Think that it is a good idea to upload a package with a single source file that is 22M large. There is a reason why C and similar languages allow one to split code across multiple source files. Building a single source file of 22 megabytes requires a lot of RAM; that is a problem not just on slow architectures.
  7. Upload a package that hides the compiler command line while compiling. Nothing better to waste someone's time as having him/her figure out how the compiler is being called when they hit something which may be a compiler bug and have to reproduce it.
  8. Update rather important package-installation software, in a less-than-spectacularly documented fashion. Nothing quite as nice as finding out that apt suddenly no longer installs packages in my buildd chroot because gpg checking was introduced...
  9. Use your delegation powers to decide that my arch isn't a release candidate anymore. Okay, so that was our fault. Whatever.
  10. And, last but not least:
  11. Take all of the above too seriously. No, really. It's only a joke.

Wouter Verhelst: Employment law

Clint, Please get some way to contact you up on your site. Having to reply through Planet isn't ideal. Anyway. I'm not familiar with employment law across all of Europe, but the claim that you have to employ them for a certain period after you actually fired them, or even that you can't fire someone without due process, is simply false—at least in Belgium, though I expect the same is true for most other member states of the European union. First, there's the fact that every employment contract starts off with a "test period" which can take up to six months, depending on the type of employment (it is longer for hotshot management than it is for hand labour) and the length of the contract, if appropriate. During this period, an employer can fire someone without further explanation and without any process. This is to make sure that you can get rid of people who managed to sell skills on themselves they don't end up having. Second, an employer can fire anyone right away for what is called 'urgent reasons'—things like employees stealing from the employer; basically anything that makes the employer lose trust in the employee (though this is strictly regulated, for obvious reasons). Third, if you fire someone not during their testing period and not for urgent reasons, you do not have to keep them at your place; it is legal to tell someone that as of tomorrow, they no longer have to come to work -- you just have to give them a pay check for those three months (or whatever) you would have to employ them otherwise. Finally, the thing also works in the other direction; if some important employee (say, the only guy with the root password) decides to quit, an employer can require that they stay at work for up to (IIRC) two weeks, so as to ensure continuity. But I understand you knew that part already...

11 March 2006

Axel Beckert: Implemented a blacklist for blog comment spam

Just killed all the remaining comment spams (I hope) and implemented a simple regexp based blacklist which should get most medicaments, potence pills, casinos, lotteries and other frequently posted junk. I hope, it does not hit too many valid posts. If you have problems posting comments, feel free to contact me by e-mail or on IRC. In other news, I installed the blosxom plugin comments_recent and adapted the mail feature of writeback notify to my (in the meanwhile heavily modified) instance of the comments plugin v0.6. I also made it symlink-safe for use with multcat.

Axel Beckert: Blacklisting comment spam in blosxom

Since the demand for blosxom anti-comment-spam solutions respective appropriate blosxom plugins seems to be really high, I’ve decided to polish up my apparently quite well working although still in beta state being anti-spam enhanced version of the comments plugin (ZIP) by putting the blacklist outside in an external file and writing some (still short) docs. I use it since 11th of January this year and got only two spam comments and many more normal comments since then, so it should work. Although: I also got a question if my trackback doesn’t work. Hmmm. So no warranties, just an offer for help fighting against comment spam. ;-) Another feature which is basically ported from the writeback notify plugin is notification of the blog owner about new comments by mail. Since on the server on which my blog runs the used Perl module Mail::Sendmail was not available, I used Mail::Send instead for my version. For installation you first need to download the ZIP file of the original comments plugin, install it’s templates and then install my anti-spam enhanced version of the plugin itself.

Now playing: Rockapella — Come on Eileen

Daniel Stone: [tech] on autopackage

Mike Hearn's 'Linux Problems' page has some interesting assertions on how to 'fix' Linux and make it 'enterprise-supportable' (which seem to boil down to: distributions suck, so avoid them; Python sucks, so avoid it; C++ sucks, so avoid that too; glibc, gcc and headers suck, so they need fixing; shared libraries, too, are hard for us, so we'd like other people to avoid dealing with them because autopackage is king).

The Debian bit is just flat-out wrong:
  • Debians dependency scanner is broken anyway, as there's no way to tell what version of a library is actually needed. Only the developers know that. It works around that problem by assuming that the binary requires whatever version it was built against (which as we see elsewhere may be true or may not be).

  • Cute, but no. Packagers can specify in shlibs files, the last ABI break. So if your library adds a new interface in 2.1.3-1, then you can put:
    libfoo 1 libfoo1 (>= 2.1.3-1)
    in your shlibs file, and wham, anything built against libfoo now gets that dependency. Of course, if the downstream packages are really ninjastupid, they can hardcode in their library deps.

  • Why should the convenience of Debian packagers, who number in the low 2s, outweigh the convenience of people who download autopackaged binaries from the website, who number in the high 200s/day?

  • Actually, last I checked, there were close on 1000 registered Debian developers, who had gone through the long process. I don't know how long the New Maintainer queue is (except: really long). There are millions and millions of users of Debian and its derivatives (Ubuntu, Knoppix, Maemo, et al). If you're going to be a condescending twat, could you at least please try to be accurate, instead of picking on Debian for being insignificant compared to your hundreds of downloads per day?

    Joey Hess: ugh, web

    I dislike writing CGI crap so much that it's really amusing that I'm writing a wiki. Today I did most of the CGI parts of ikiwiki -- page editing in a web browser (with commit back via svn) and RecentChanges (pulling the logs out of svn). Still have to add logins to avoid spam, and after that I think I'll be done with the CGI side for now. It is nice to have the web-based editing interface for minor fixes to a wiki, though I've also found it very nice to be able to edit pages in vim for longer writing sessions. I did come up with something interesting today when I wasn't doing all this CGI stuff. Since ikiwiki often needs to run with different privs than its invoker (to rebuild a wiki in a post-commit hook, or to check in a wiki page from CGI), I came up with an interesting way to securely run it setuid. Pass ikiwiki --wrapper along with any other parameters, and it will emit a wrapper binry that is hardcoded to only run ikiwiki with those parameters. Dynamically programmed in C and compiled on the fly of course. The wrapper is designed to be completly safe to make setuid, and can be dropped into a post-commit hook, or cgi-bin, or whatever. You can also regenerate a wrapper with ikiwiki $(./wrapper --params) --wrapper, which is useful for changing a param. So the wrappers have sort of turned into ikiwiki's equivilant of a configuration file, which it otherwise lacks. I suppose I might as well put publish ikiwiki's documentation wiki already.

    10 March 2006

    Axel Beckert: Vintage Computer Festival Europe 7.0 ahead

    It’s only seven weeks to the most important vintage computing event in Europe, the Vintage Computer Festival Europe (VCFe), which for the first time will be three days this year because of May the 1st being a Monday this year and an official holiday in Germany and some of the swiss cantons (at least Zürich). So the VCFe 7.0 will take place from April the 29th to May the 1st 2006 in Munich and it’s focus this year is:
    Home Made Brains
    Kit-Computers and Individual Designs I’m currently thinking about which old hardware I’ll present at this year’s VCFe. There are a few ideas flowing around in my head:
    • Old x86 laptops (1989-1996). This was my exhibition last year, but ayca, my i486 Toshiba laptop is broke (probably the display controller) and the “new” Compaq LTE pony hasn’t been setup yet. Nevertheless, I’ll bring my (nearly) everyday ThinkPad bijou with me since it’s now 10 years old and therefore ontopic now. Yeah!
    • The HP 9000 Apollo Series 400 I got from dwalin and dyfa, if I manage to get a NetBSD installed on that box.
    • Buying a tux case but installing some old hardware in it instead of the current FOX board. On the other hand: There should be at least a Linux running on that box.
    Anyway, I’ll be there, many other Symlinker (at least dino and Venty) also will be there. And I hope to see you there, too. :-) Oh, and btw: One wish to the Debian community regarding the VCFe: Perhaps someone who’s familiar with the Debian m68k Port could give a talk about how Debian plans to save this port although the old hardware isn’t fast enough to fit the requirements for inclusion in a Debian release. This would give a really interesting talk about old and new hardware. Talks can be held at least in German or Englisch IIRC. TIA. :-) Update 16:26h: I thought of this mail by Wouter Verhelst about how modern ColdFire computers could run buildds for a hybrid m68k and ColdFire port when writing this paragraph. See also this Symlink story [German] about that topic.

    Jos Parrella: Thoughts about DPL Election

    As I see it, there are three positions: Yes, someone already told it: is that time of the year again. This small and insignificant fact (the DPL election) can shock the entire Debian Community. This kind of stuff makes us the fun, social and rewarding Debian Community some people claim we should be. The people who only cares about developing will keep working disregarding all the social conflicts. So most people won’t take much care about the Election, pick up a candidate, vote and keep working
    It says: Welcome - Bolivarian Revolutionary Government of the Merida State David has more than one week in Venezuela. I’m gladly offering him accomodation in my house, bandwidth and all the support he needs for the next twenty years. We spent a weekend in Merida (which is in the Venezuelan Andes) in some Free Software Workshops and the rest of the week we have been working in several migration projects in the Company I’m working with. We have setup g33k!, a small server in my room running Debian (and Cherokee and Jaws) just for fun and testing. He’s leaving to San Crist bal (the capital of a state in the border with Colombia) on Friday and I should be finishing my semester as well. The next big Free Software event in Venezuela is the Latin American Infest. See you there!

    9 March 2006

    Gunnar Wolf: My view on DPLship

    Several people's blogs have appeared recently in the planet with the different points of view on the different candidates and various rants regarding the DPL office - Well... This time I have not yet been able even to read the platforms of the different candidates (of course, I plan on doing it quite soon), but I follow the posts on the subject with interest. The most interesting post so far is Martin Michlmayr's - Of course, being an ex-DPL, there are important experiences he has that few people do.
    A couple of days ago I was talking with one of the candidates with whom I have talked and worked in the past. My main gripe with the whole process is that, although as a project we need a leader, an easily identifiable single contact person who knows the teams, knows the people and can speak on the project's behalf, I have not seen much being done by the past DPLs towards the inside of the project. Of course, it's easy to bitch around when I sit in the comfortable silent majority most of the time - Currently I am devoting quite less time and effort to Debian than what I should, although it is true that setting up Debconf6 in Oaxtepec takes a _lot_ of time and that it will facilitate much more interaction between Debian people (which is good for the project) than me working more and better on my packages and on doing interesting team work.
    Maybe something that would make me to vote for somebody, more than the most coherent and best written platforms, is for the candidate to admit the lack of importance of the role to most of the project - or to defend how to make it again a leadership position.
    Following Martin's post, maybe we do need a Bruce-like leader who tells us what to do and drives the project. Or maybe not, maybe we could do better with reducing the importance of the post towards the inside and emphasizing it's mostly a confidence vote for somebody to speak on behalf of us all. And even this would be difficult, as a sad flame in debian-private some months ago reminds us that nobody can speak on behalf os the whole project because somebody might be offended by the viewpoint taken by the official?
    I am no big believer in democracies. I do think that sticking to much to a democratic constitution (where democracies are very scarce in the Free Software world, where projects tend to have benevolent dictators grown by meritocracy instead of democratically elected) and allowing everybody to voice too much the same opinion in our regular flamewars has lead Debian to the communications swamp it is right now. We do have very effective small teams (quoting Andreas Schuldei' term for the phenomenon that seems to work best and appear naturally in our project), integration between teams is quite good... But having 1000+ people sitting in a big room and shouting at each other is plainly not fun. Maybe we should stop pretending that there is no cabal (forgod'ssake...) and admit that there is and it works, and we (the drones) implement Their decisions? Nah... That sounds it would only create more flamewars.
    But seriously: Towards the inside, do we need a leader? Have we ever used it?

    Martin Michlmayr: FOSDEM 2006

    FOSDEM is one of the events I really enjoy. Unfortunately, I couldn't attend last year because I was at a conference in China. However, this year I was back, and the event was bigger than ever. There's so much going on that it's really hard to keep up. There are a number of people I'd really like to have talked to more but there just wasn't time in those two days which were fully packed. It was nice to meet a number of people again, though, in particular the usual suspects, including Michi Banck (aka Hurd illusionist, "it supports two wireless cards now"), Guillem Jover (Spanish mafia boss living in exile), and Jordi Mallach ("World Domination for Catalan^WValencian"). I also hung around the Spanish free software research people with whom I'm going to spend a few months soon. Crazy Spaniards... I've no idea how I'm going to survive there. Oh, and Neal Walfield, who still stinks, and who thinks I have a British accent now (which he thinks is a bad thing while I took it as a compliment). Regarding new people, I had the great pleasure to meet and talk to Lennert Buytenhek. I talked to him on IRC a bit recently because he's involved in the big-endian ARM port and I've been hacking on the ARM based NSLU2 device. Lennert is quite frustrated because joining Debian is so hard. As it turns out, there's currently a six month wait to be assigned an Application Manager. I haven't really followed NM recently, but when I acted as Front Desk I tried to keep it less than approximately six weeks. Unfortunately, a great number of AMs resigned in the last few months and years, and it has been quite hard to find good new people as AMs. Lennert is the kind of person we really want to have in Debian since he's extremely kind, smart and productive. Given that the current situation seems really bad I decided to act as Application Manager again, but I only intend to do that temporarily. I'm sure I forgot lots of other things. But the summary is that it was a great weekend, with way too much stuff going on at the same time. And while I wish I could have devoted more time to my research, I gained some important insights and did one interview which was really informative.

    8 March 2006

    Joey Hess: seeking wiki

    For a new project, I'm looking for wiki software with the following characteristics: At one point I had a half written wiki that supported a cvs backend (this was before svn) and supported browsing historical versions, but it got bogged down in trying to use html as the standard markup language, which diverted too much energy to writing code to sanitise html, and stalled out before it was usable. Writing one again doesn't seem wise, there are already too many. So I'm looking for pointers to anything that meets at least some of these requirements. Update: Subwiki uses subversion but is developing slowly and may be non-DFSG free. There's discussion about making TWiki support a svn backend, but it appears not to yet; it would probably meet all my other needs then some. GW uses subversion, but seems to be a java based academic research project. trac uses subversion, though it's not just a wiki and it might not use it for the wiki. Rather than tight subversion bindings, I'd be happy enough with a wiki that used flat text files and was flexibe enough so I could store them in svn. I'd even be happy to use viewsvn as the history browser for the wiki. Small and minimal, building blocks, like blosxom blogs, is good.

    7 March 2006

    Joey Hess: DPL..

    Since I find the DPL position increasingly uninteresting except as a position of technical leadership, I will probably use the following simple metric (which I think of as the "degrees from Bruce Perens" metric) to rank my choices for Debian Project Leader in this year's elections:
    1. Order the candidates based on the perceived solidity of actual technical changes they propose to make to Debian.
    2. Rank "further discussion" above the first candidate whom I could not bear to see as DPL.
    I won't bother listing the result, it's pretty predictable. But I will here excerpt all the at least vaguely technical content from the candidate's platforms:

    Steve McIntyre: Using votes to help detect MIA Debian developers?

    Rapha l Hertzog writes about the Condorcet voting system that we use in Debian. He then goes on to consider whether we could use the system to help us elsewhere - could we track MIA developers by checking their voting records? This strikes a chord with another idea I've heard recently: make voting in the DPL election mandatory for active DDs. I expect that even suggesting such a thing may appal some of us - forcing volunteer DDs to do anything is not likely to be popular, and I admit I have misgivings about it myself on that front. However, I can also see the attraction of the idea. The DPL election is a very(!) well publicised event that happens regularly every year, and is something that most DDs are likely to care about. Asking the project secretary after the polls close for a list of DDs that have not voted might be a good way of picking up on those who have stopped paying attention to Debian issues. Comments? :-)

    Ross Burton: Double Plus Ungood

    I'm really not liking the way things are going at the moment. NP: Ambient Mix, DJ krill.minima

    Aigars Mahinovs: Pandora music stream

    I just discovered Pandora. It is a online flash streaming music player that plays the music that you like much like last.fm radio, just simpler and with instant feedback. You simply go to the site and tell them what artist or track do you like and the music starts playing in a Flash applet. Then similar music starts playing and you can say whether you like this particular song or not. There are even keyboard shortcuts, so it is enough to focus the windows with the player and press "+" if you like the song or "-" if you don't and it immediately adjusts its playlist to your input. Those kinds of services could replace downloading of music via BitTorrent for most of "background noise" kind of use. Update: now that's one screwy service. After you listen to a bunch of songs, the player stops and requires you to register. It gets even better - the registration is US only. Just great! Well - back to last.fm radio to me.

    Aigars Mahinovs: 60 rants (2)

    Hospitals overcharging uninsured people http://www.cbsnews.com/stories/2006/03/02/60minutes/main1362808.shtml The bulk of the story in not really that hospitals make uninsured people pay more, it is that they make insurers pay less. It looks like it is common practice in US hospitals to charge their patients for work and materials with 300-500% profit margin. Only most of the country does not know it because they have either health insurance or Medicare and those insurers and government programs negotiate for themselves discounts in range of 75-90%. Also noone can find out the prices of specific procedures in different hospitals making going to a hospital look like blind shopping. In my mind two thing must be done legislatively about this: demand that all price lists of all publicly accessible hospitals also be freely accessible by the public, ban any kind of discounts or bulk prices that hospitals could give to insurers or government programs. That will ignite a price war and bring the prices down considerably. And in the mean while make a court case that any uninsured person receiving medical attention can demand to be charged as much as Medicare would be charged for the same procedure.
    Willie Brand and torture in Afghan prisons http://www.cbsnews.com/stories/2006/03/02/60minutes/main1364163.shtml There is just incredible amount of lies buzzing around the current US administration especially with relation to war in Iraq and Afghanistan. We know that just from shreds of evidence that leaks out despite military discipline. Now top generals claim that prisoners have never been tortured or hanged from ceilings in Afghan prisons run by US army forces, while guards at those prisons claim that the same generals saw the procedures and did not disprove of them in any way. Now the generals blame everything on the guards themselves and even their direct captain claims that he did not see anything. Bullshit! It is long time that NATO and ANO should step in and report USA to the Security council and impose sanctions on USA for breaking the Geneva convention. Because, if USA can do that and go unpunished, why should other countries uphold human rights of their prisoners?
    The Prince of Pot http://www.cbsnews.com/stories/2006/03/02/60minutes/main1364163.shtml A Canadian is being charged with drug trafficking by USA for selling marijuana seeds in his shop in Canada. It is formally illegal there, but even if charged, he would only have to pay a fine. However if he is extradited to USA, he would face up to a life sentence. The man is a leader of marijuana legalization movement in Canada. It may come as a surprise, but I agree with him. Marijuana no more harmful then alcohol or tobacco. Some even argue that marijuana is less harmful to the body and mind then alcohol or tobacco in same doses. If those two substances are allowed, then marijuana should be allowed too, in the same regulated manner as those two. If marijuana is banned then alcohol and tobacco must be banned too - be consequent. By pushing marijuana into the black market governments only make the black economy stronger. Also marijuana acts as a gateway drug just because government says it is as bad as heroin, so people after trying marijuana start thinking "Well marijuana is not that bad, maybe government is lying about heroin too". And after a few months a new unalive junkie is formed out of what could have been a contributing member of society.
    Andy http://www.cbsnews.com/stories/2006/03/02/60minutes/rooney/main1363712.shtml Andy rants about outsourcing this week. Fear not Andy - it is easy to outsource labor intensive jobs, but outsourcing creative jobs is much harder - no asian guy can replace you (well maybe except for George Takei :)).

    6 March 2006

    Masayuki Hatta: Give it a try

    Once upon a time, I had a blog in Engr^Hlish. I installed blosxom on my rental server and it was pretty cool. Simple and nifty. For a while everything went quite well.

    Soon I abandoned it. After registering Planet Debian, my old blog was heavily spammed by those bastards somewhere around the world. I don't need Viagra (at least for now) and I don't have any relatives in Nigeria. And at that time I couldn't figure out how to fight with them efficiently. Even now I can't. I don't want to disable comments or trackbacks, since that's almost the only reason I wanted to have a blog. Also my rental server was so poor that always memory space was running out. And suddenly I became very busy after all. So I just threw it away and forgot about it.

    Now I need an English blog again. And this time I don't want to hustle so much into just setting up the blog system itself instead of writing actual blog entries. This LiveJournal seems to be good enough for me, so I'm gonna just giving it a try. Logjam is neat, btw.

    Aigars Mahinovs: DPL platform runthrough 2: Missing man

    Following up on my own review of the DPL platforms I give the review of the latecomer - the platform of Andreas Schuldei:
    Andreas Schuldei
    • abstract and TOC present - feels a bit more professional
    • purpose-drive and predictable, with the purpose being having fun - sound much more balanced then some other approaches, hopefully not "Fair and Balanced"
    • "experience in implementing change in volunteer driven scenarios" - very precise definition of what we need
    • flashback to last years platform - looks like some progress is done, but most of it is still relevant
    • real-life meetings - Yes!
    • small teams - isn't that just splitting Debian up into small, easier to manage chunks?
    • more friendly environment - Teletuby alert?! Or should we just redirect all flamewars to the Sauna Cabal?
    • accept more leadership - good
    • more frequent and regular releases - please stop beating that horse. It is a fossil already. Does it really do as good as a project to have a release every year? Where is the stability in that?
    • care more - we can't care less, can we?
    • more resources - please elaborate, what do you mean by resources here? Global network of Debian approved anti-flamewar saunas?
    • DPL Team - isn't that just another name for nontransparent cabal running Debian instead of a single nontransparent individual?
    • set goals within teams to become purpose-driven - sounds good on the first glance, but would that not lead to segregation of purposes?
    • DPL milestones - timeout callback for a DPL. Might help to have a reason to report even if nothing is done, just to convey that information based on set deadlines. On the other hand that is extra "paper"work
    • "Important and/or controversial decisions are made in discussion with the whole team." - this seems to lack a critical part: "decisions are made by the DPL", because falling back to "our team decided" is just a lack of leadership and promotion of birocratcy and lack of responsibility.
    Five word summary: purpose, RL meetings, team, schedules, resources It looks very thought out, but is it just me or is it also becoming very birocratic? Note: the promised interview is coming up tomorrow.

    5 March 2006

    Uwe Hermann: HOWTO: Anonymous communication with Tor - some hints and some pitfalls [Update]

    Warning: Very long post ahead. You have been warned! What? Tor is a Free Software project (revised BSD license), developed by Roger Dingledine and Nick Mathewson, which creates an infrastructure for anonymous TCP communication. From the project website:
    Tor is a toolset for a wide range of organizations and people that want to improve their safety and security on the Internet. Using Tor can help you anonymize web browsing and publishing, instant messaging, IRC, SSH, and other applications that use the TCP protocol. Tor also provides a platform on which software developers can build new applications with built-in anonymity, safety, and privacy features. Tor aims to defend against traffic analysis, a form of network surveillance that threatens personal anonymity and privacy, confidential business activities and relationships, and state security. Communications are bounced around a distributed network of servers called onion routers, protecting you from websites that build profiles of your interests, local eavesdroppers that read your data or learn what sites you visit, and even the onion routers themselves.
    Tor also allows you to set up and/or use a so-called Tor hidden service, i.e., a server which offers some service (a website, ssh access, or similar) without revealing its IP to its users. Why? Why would you want to use Tor? Well, because you probably don't want anybody (neither state agencies, nor companies, nor "hackers", nor any other individuals or groups) to be able to record, analyze, and (ab)use information about your web browsing habits, or any other communication habits. For instance, you don't want Google to have a complete search-profile of you, which — even worse — might some day get in the hands of other parties. In the days of massive data retention you don't want all your electronic traces to be recorded, stored for ages, analyzed, and data-mined for dubious reasons and with even more dubious results and false conclusions drawn which might negatively affect you. If you're a human rights activist in China, you want anonymous communication. If you're a whistleblower, you want anonymous communication. The list is endless. For securing your communications, so that nobody is able to sniff your emails, your chat messages, your passwords, your private documents and conversations, you use encryption. For communicating anonymously you can use Tor. Combine both, and you have secure and anonymous communication. In case you're wondering whether criminals might abuse Tor, read the Tor Abuse FAQ. Short answer: yes, but if you're willing to break the law, you already have anonymity (open access points, stolen/prepaid mobile phones, etc.). You don't need Tor to do bad things if you're a criminal. If you're one of those horrible "oh, but I don't have anything to hide" guys, consider this: Say you have a drug/alcohol problem and want to visit an anti-drugs/anti-alcohol website or forum for help. Would you want the whole world, your neighbors, your co-workers, your boss, to know that, or would you rather want to keep that a secret? Say you have AIDS and want to get information on the web? Or, to make the example even more dramatic: Would you want some random guys to be able to watch you while you fuck your wife? No? So you have something to hide after all, right? My point is: Everyone has something to hide, even more, it is a basic human right to have the ability to hide something. It's called privacy. How? Tor implements a form of onion routing to, basically, push encrypted data through multiple Tor nodes (servers), before it reaches the final destination (e.g. a website). The result is that neither the website owner, nor a local eavesdropper, nor any single Tor server knows who requested that specific website, hence you are communicating anonymously. For more technical details, read the Tor overview and the Tor documentation pages. In order to use Tor, you have to install and run a local Tor client/daemon (this is not necessarily a Tor server!). On Debian, type apt-get install tor, on other systems you can get the respective binary packages or download the sources and compile Tor yourself. Usually Tor is used together with Privoxy, a configurable HTTP proxy which sanitizes your web-browsing experience by removing nasty banner ads, pop-ups, JavaScript, webbugs, cookies etc. etc. So: apt-get install privoxy. After installing and starting Tor and Privoxy, you can now configure your webbrowser to use Privoxy as an HTTP proxy (see below), and Privoxy will in turn use Tor to anonymize your communication if you add "forward-socks4a / localhost:9050 ." to your /etc/privoxy/config. Anonymizing various applications Most (but not all) of the following information is also covered in the very useful Torify HOWTO in the Tor wiki (I will add the missing information there, ASAP). As I'm pretty paranoid, I have checked every single of these configurations with Ethereal to ensure that the traffic is really anonymized. However, if you are paranoid, you shouldn't trust me, but rather test this stuff for yourself! Warning: DNS Leaks:
    The biggest problem with many applications is that they leak DNS requests. That is, although they use Tor to anonymize the traffic, they first send a DNS request untorified in order to get the IP address of the target system. Then they communicate "anonymously" with that target. The problem: any eavesdropper with more than three brain cells can conclude what website you visited, if they see that you send a DNS request for rsf.org, followed by some "anonymous" Tor traffic. The solution: use Tor together with Privoxy, that prevents DNS leaks. Many non-HTTP-based applications are usually torified using a small tool called torify (e.g. by typing torify fetchmail), but often this approach has DNS leaking problems, see below. You might also want to check out toraliases, a small shell script you can source from your ~/.bashrc file. It defines some functions and aliases which transparently direct the traffic of some (but not all!) programs through Tor. Applications which cannot easily be torified Anything not using TCP usually cannot be torified, as Tor only works for TCP. Pitfalls to be aware of More information More information is available in the Tor documentation, the Tor wiki, and especially in the Tor FAQ. In addition, there's an IRC channel on Freenode (#tor), some slides and a video (torrent) about Tor you might find interesting. If you would like to help, you can run a Tor server, donate some money, or volunteer to do other things (code, debug, document, translate, and more). That's it for now. I'm very grateful for comments and suggestions, especially for hints on how to anonymize more applications. Also, if you notice any dumb mistakes I made, please leave a comment. Update 2006-03-07: Fixed typos, added link to the toraliases project (thanks Benjamin Schieder).

    Next.

    Previous.