Author: Barry

  • Winter 2008 Photos

    Here are some pictures shot this winter in NYC and Boston.  If you notice, the gallery is much more user friendly now — there are navigation links to take you between photos and a link to take you back to the main post from the individual picture pages.  None of these things existed a few days ago when I published my previous post.  These cool features are available to anyone using the Neat! theme on WordPress.com and we are in the process of adding similar (and better) gallery features to all themes on the WordPress.com platform.

  • Punta Cana

    Finally took some vacation time a few weeks ago and headed down to the Dominican Republic.  Stayed at the Paradisus Punta Cana.  A few photos are below:

  • Anatomy of a Denial of Service Attack

    Running one of the largest websites on the internet with about 5 million unique sites hosted exposes you to all sorts of issues.  There are constant events to deal with, some internal, some external.  This morning, one of the more common external events, a Distributed Denial of Service Attack occurred.  We experience these types of attacks rather frequently, but most are easily mitigated and have no user impact.  One this morning, however, was rather large and thus impacted some users.

    Here is a timeline and description of this morning’s events:

    9:40 AM EST — Our internal monitoring systems alerted us to unusual activity in one of the four geographically diverse datacenters which serve WordPress.com traffic.  Here is what that anomaly looks like in graphical terms:

    10:00 AM EST — The target of the attack was identified and removed from our network.  The attack, however continued.  This is because the attacker had hijacked tens of thousands of computers (probably by installing a virus which was spread via email) and these computers had no idea the site was no longer there.  A small log sample shows over 8 million requests for this one site from over 10,000 unique IP addresses.

    10:20 AM EST — Since we have servers in multiple data centers throughout the United States which serve traffic for WordPress.com all the time, we were able to route all legitimate traffic out of the affected data center, and let the single affected data center deal with the attack.   

    11:30 AM EST — The IPs targeted in the attack were null routed at this point which allowed us to bring all datacenters back online to serve normal traffic.

    We keep hourly traffic metrics and based on those numbers, it looks like during the attack there was about a 5% decrease in overall pageviews during the 40 minutes before traffic was re-routed.  All things considered, not a bad outcome for an attack this size.  Looking at bandwidth graphs, this attack was in the 500Mbit – 750Mbit/sec range.  

  • NYC at Night photoblog

    Since we launched the Monotone theme on WordPress.com, I have been posting photos of New York City at NYC at Night.  My goal is to post 1 a week, but I don’t know if that will happen.  Enjoy!

  • mod_auth_mysql and phpass

    With the release of WordPress 2.5, there were some significant changes to the way passwords were stored in the database.  Prior to 2.5, passwords were stored as MD5 hashes.  While simple and easy, there were some security implications, so since 2.5, passwords are now salted and hashed using the phpass encryption library.  At Automattic we like to keep things simple, so we use the WordPress and bbPress user system for external authentication for things such as Trac and Subversion.  This allows us an effective and simple single sign on (SSO) solution for almost everything we do.  Unfortunately, the existing mod_auth_mysql apache module did not have support for the new password format.

    Thanks to Nikolay, we now have the best of both worlds.  He has patched mod_auth_mysql to support phpass.  This means you can now have plug and play authentication against your WordPress blog or bbPress forum almost anywhere you can think of.  The patch allows automatic fallback to MD5 in case the user has not yet logged into WordPress and their password is still stored in the old format.  

    Once the new module is loaded, you will just need to replace the following line in your apache configuration file.

    OLD:AuthMySQLPwEncryption md5
    NEW:AuthMySQLPwEncryption phpass

    You can download the patched version here. It has been tested with Apache 2.2.3 and MySQL 4.1/5.0