Exchange, I will have my revenge!

It’s been a busy few weeks – straight after my visit to Christchurch I got stuck into the main migration phase of a new desktop and server deployment for one of our desktop customers.

It wasn’t a small bit of work, going from 20 independent 7-year old Windows XP desktops to new shiny Windows 7 desktops and moving from Scalix/Linux to Exchange/Win2008R2. It’s not the normal sort of project for me, usually I’ll be dealing with network systems and *nix servers, rather than Microsoft shops, but I had some free time and knew the customer site well so I ended up getting the project.

The deployment was mostly straightforwards, and I intended to blog about this in the near future, I honestly found some of the MS tech such as Active Directory quite nice and it’s interesting comparing the setup compared to what’s possible with the Linux environment.

However I still have no love for Microsoft Exchange, which has to be one of the most infuriating emails systems I’ve had to use. We ended up going with Exchange for this customer due to it working the easiest with their MS-centric environment and providing benefits such as ActiveSync for mobiles in future.

However with myself coming from a Linux background, having grown up with solid and easy to debug and monitor platforms like Sendmail, Postfix and Dovecot, Exchange is an exercise in obscure configuration and infuriating functionality.

To illustrate my point, I’m going to take you on a review of a fault we had with this new setup several days after switching over to the Exchange server…..

* * *

On one particular day, after several days of no problems, the Exchange server suddenly decided it didn’t want to email the upstream smarthost mail server.

The upstream server in question has both IPv4 and IPv6 addresses, something that you tend to want in the 21st century and it’s pretty rare that we have problems with it.

With Exchange 2010 and Windows Server 2008, both components have IPv6 enabled out-of-the-box – we don’t have IPv6 at this particular customer, since the ISP haven’t extended IPv6 beyond the core & colo networks, so we can’t allocate ranges to our customers using them at this stage.

For some unknown reason, the Windows server decided that it would make sense to try connecting to the smart host via IPv6 AAAA record, despite there being no actual upstream IPv6 connection. To make matters worse, it then decided the next most logical thing was to just fail, rather than falling back to the IPv4 A record.

The Windows experts assigned to look at this issue, decided the best solution was to “disable IPv6 in Exchange”, something I assumed meant “tell Exchange not to use IPv6 for smarthosts”.

With the issue resolved, no faults occurring and emails flowing, the issue was checked off as sorted. :-)

Later that night, the server was rebooted to make some changes to the underlying KVM  platform – however after rebooting, the Windows server didn’t come back up. Instead it was stuck for almost two hours at “Applying computer settings….” at boot – even once the login screen started, it would still take another 30mins before I could login.

This is the digital equivalent of watching paint dry.

After eventually logging in, the server revealed the cause of the slow startup as being the fault of the “microsoft.exchange.search.exsearch.exe” process running non-stop at 100% CPU.

After killing off that process to get some resemblance of a responsive system, it became apparent that a number of key Exchange components were also not running.

I waded through the maze that is event viewer, to find a number of Exchange errors, in particular one talking about being unable to connect to Active Directory LDAP, with an error of DSC_E_NO_SUITABLE_CDC (Error 0x80040a02, event 2114).

Every time I have to use event viewer I miss syslog, tail and grep even more.

Naturally the first response was to review what changes had been made on the server recently. After confirming that no updates had been made in the last couple of days, the only recent change was the IPv6 adjustment made by the Windows engineers earlier in the day.

Reading up on IPv6 support and Windows Server 2008, I came across this gem on microsoft.com:

"From Microsoft's perspective, IPv6 is a mandatory part of the Windows
operating system and it is enabled and included in standard Windows
service and application testing during the operating system development
process. Because Windows was designed specifically with IPv6 present,
Microsoft does not perform any testing to determine the effects of
disabling IPv6. If IPv6 is disabled on Windows Vista, Windows Server
2008, or later versions, some components will not function."

I then came across this blog post, from someone who had experienced the same error string, but with different cause. In his post, the author had a handy footnote:

"The biggest red herring I found when troubleshooting this one from
articles others had posted was related to IPv6. I see quite a few people
suggesting IPv6 is required for Exchange 2007 and 2010. This is NOT
true. As a matter of fact, if the server hosting Exchange 2007 or 2010
is a DC, then IPv6 must be enabled otherwise simply uncheck the checkbox
in TCP/IP properties on all connected interfaces. You don't need to
buggar with the registry to "really disable it"....just uncheck the
checkbox."

The customer’s Windows 2008 R2 server is responsible for both running Exchange 2010 as well as Active Directory

To resolve the smart host issues, the Windows team had disabled IPv6 altogether on the  interface, resulting in a situation where Exchange was unable to establish a connection to AD to get information needed to startup and run.

To resolve, I simply enabled IPv6 for the server and the Exchange processes correctly started themselves within 10 seconds or so as I watched in the Services utility.

This resolved the “Exchange isn’t functioning at all issue”, but still left me with the smarthost IPv6 issue. To work around the issue for now, I just set the smarthost in Exchange to use the IPv4 address, but will need a better fix long term.

With the issue resolved, some post-incident considerations:

  1. I’m starting to see more cases where a *lack* of IPv6 is actually causing more problems than the presence of it, particularly around mail servers.
  2. Exchange has some major architectural issues – I would love to know why an internal communication issue caused the search indexer process to go nuts at 100% CPU for hours.I’ve broken Linux boxes in terrible ways before, particularly with LDAP server outages leaving boxes unable to get any user information – they just error out slowly with timeouts, they don’t go and start chewing up 100% CPU. And I can drop them into a lower run level to fix and reboot within minutes instead of hours.
  3. I did a search and couldn’t find any official Microsoft best practice documentation for server 2008, nor did Windows Server warn the admin that disabling IPv6 would break key services.
  4. If Microsoft has published anything like this, it’s certainly not easy to find – microsoft.com is a complete searching disaster. And yes, whilst they have a “best practice analyzer tool”, it’s not really want I want as an admin, I want a doc I can review and check plans against.
  5. I’m seriously tempted to start adding surcharges for providing support for Microsoft platforms. :-/

* * *

Overall, Exchange certainly hasn’t put itself in my good books, issues like the IPv6 requirement are understandable, but the side effect of the search indexer going nuts on CPU makes no sense and it’s pretty concerning that the code isn’t just “oh I can’t connect, I’ll close/sleep till later”.

So sorry Microsoft, but you won’t see me becoming a Windows Server fanboy at any stage – my Linux Sendmail/Dovecot setup might not have some of Exchange’s flashier features, but it’s damn reliable, extremely easy to debug and logs in a clear and logical fashion. I can trust it to operate in a logical fashion and that’s worth more to me than the features.

Android via serial to Arduino

Whilst I’ve been pretty busy lately, I recently made another order from Mindkits and got to work with testing some of my ideas for my Arduino-based remote management solution for my home server.

There’s 4 major parts to this solution

  1. Connectivity to the computer’s serial port (a motherboard 10-pin header) and being able to communicate with the serial port using the Arduino.
  2. An Arduino controlled switch to turn the computer motherboard’s reset pins on and off.
  3. Connection into one of my old HTC Magic Android cellphones.
  4. Connection of 1-wire temperature sensors in key parts of the server’s case.

I’m using a stock standard Arduino Uno/Eleven for this project, for two main reasons:

  1. The HTC Magic phone is quite an old model of Android phones, effectively it’s the second generation after the original G1 and was the first officially available Android phone in New Zealand. Whilst I have loaded the last stable version of Cynogenmod released for it onto the phone, it’s only Android 2.2 and doesn’t feature the Android USB Accessory API support, so there was no point getting something like the USBDroid model.
  2. Rather than paying extra for ethernet connectivity, I’m planning to write an Android application that runs on the phone in the background that provides all the logic behind the remote management program for the server and connectivity via Wifi, 3G and SMS – I figure that the Android platform is better places for the management program anyway with a more sophisticated software

I purchased some protoshields for the Arduino, so my plan is to develop all my circuit logic as an addon shield so it will be possible to stack other shields on in future if I want to add some new applications/functionality to the system.

I’m new to the electronics, the Arduino coding AND the Android development requirements, so it’s an awesome learning curve project for me to start getting my head around all these technologies. :-)

The easiest bit to solve is the control of the computer’s reset header – I need this in order to be able to reboot a crashed system, something that has happened a couple of times due to flaky hardware.

To control the reset, I can use a simple transistor switched circuit, there’s a few resources around for novices to follow, I found this one useful. The only concerns I have is that I need to research and find out what the voltage on the reset headers is – I’m assuming 5V, but it could be anything from 3V to 12V….

Tested the switch by using the Arduino to turn on the LED using a transistor.

The connectivity to the server seems pretty straightforwards – I’ll be using an RS232 shifter circuit (like this one) to connect the PC serial port to the Arduino, although I might end up re-implementing that circuit directly on the protoshield and using a 10-pin IEC connector to plug directly into the motherboard’s serial header

The phone will be connected using the debug serial port in the HTC Magic – it seems a number of the earlier HTC models can provide serial over some of the extra pins in the ExtUSB plug they use.

I’m not totally sure how I’ll be connecting both serial ports just yet – the Ardunio has one hardware UART onboard on pins 0 and 1, but I’m not sure if I can use those without losing the ability to manage the Arduino via it’s USB port – ideally I want the capability to still update the Arduino from the server it’s connected to.

It is possible to connect additional serial ports using software and there’s even a handy library for it, so I have that option for one or both ports. I’ll just have to code my software to be aware that the connection might be lossy or imperfect and to be patient and retry stuff.

I purchased an (expensive!) breakout board for the ExtUSB port which will make the soldering a *bit* easier, but considering the size of it, it still won’t be any walk in the park…

From uber-tiny to just plain tiny :-/

Fortunately since I’m using Cynogenmod, all the OS-side software is sorted and the kernel built with the correct parameters to enable the serial port functionality, providing me with a /dev/ttyMSM2 character device out-of-the-box.

Because I wanted to give it a go and see how the phone ran, I used some header pins to connect to the breakout board as they fit in the holes snugly – there must be some better tools available for connecting to PCBs and device legs without soldering for testing purposes, so I’ll need to do some more research for future.

World’s dodgiest serial connection – also GND and TX pins connected only, it sends 2.8V into the Arduino which is OK, but I need to do a step down circuit before I can transmit from 5V back into the phone.

Hacky hacks

VNCd into the phone and sending messages over the serial line, which is connected to pin 1 (TX) on the Arduino, so the messages appear in the serial monitor

Based on these results it’s looking good – at least I’ve validated my understand of what is possible, so the next step is to turn some of this into a proper circuit.

My current plan is to do a short wire run from the ExtUSB connector breakout board into a small PCB which will split the output into the 3 wires for serial (RX, TX, Ground) and also take the 4 wires for USB and connect them to a USB port, so that I can plugin a USB cable to charge and manage the phone. From there, I can run the 3 serial wires to a header on the protoshield I’m building to connect into the Arduino.

I’ll have to work out how the Android phone and the Arduino will communicate for the management functionality, at this stage I’m planning to have an app that would send specific commands to the Arduino via serial and maybe the ability to get the output from the server’s serial port via the serial link to the Android phone by encapsulating the data or some other behavior.

Next steps is to get a better soldering iron so hopefully will be able to do the initial soldering I need for the HTC magic serial connection next weekend. :-)

Christchurch Day 4

On my final day in Christchurch Lisa’s parents were heading off in the morning, so we decided to take our rental car and explore the city a bit before heading to the airport in the early evening.

Started the day watching our breath form clouds in the very chilled rental car.

Coffee. Linux. All systems are go!

After brunch, we headed up the Cashmere hills to Victoria Park to stop for some touristy viewing and photographing of the city. After living in Wellington, it’s so weird seeing such a flat city for a change.

Flat land, then snowy mountains, as far as you can see.

View of the CBD itself.

Panorama from Victoria Park looking out over suburbs and mountains.

Panorama from Victoria Park looking out over the CBD.

There's always a cabbage tree popping up somewhere in NZ parks.

After stopping at the park, we headed off and down around the coast to Port Lyttelton, a commercial port supplying Christchurch and the greater South Island region. Whilst it was interesting to go take a look, there’s not really a lot in Lyttelton other than the port, lots of heavy trucks, the longest road tunnel in NZ and one pretty dead looking town.

Heading down towards Lyttelton Harbour

Trains! Boats! All the win!

After cruising through Lyttelton and not finding much, we headed through the road tunnel full of loud thundering trucks, before making our way around to Sumner.

Looks like the Matrix had a rendering glitch and clipped the right side of the traffic light off....

Beachy area

Shipping containers make a great wall to hold up the cliffs - assuming the top container doesn't fall on your car. ;-)

Along a number of sections, shipping containers have been used to hold back the cliff and to stop any falling rubble hitting cars. It appears that the locals have taken to doing art installations on the sides of them, we say a number of walls like the above covered with giant paintings.

Cave in Sumner (can a cave have two open ends? Or is it some kind of funky tunnel?)

Heeeeeeeelp me, I'm siiiinking.

Christchurch CBD just visible in the distance.

Fishing pier in New Brighton... seems kind of pointless, but the locals appear to enjoy it.

Neat sand drawings viewed from the pier.

Some seagulls just chilling....

Brighton is the first suburb (other than the CBD of course) where I really started noticing clear sights of residential buildings having suffered heavily in the quakes –  numerous buildings were badly damaged, not to mention the roads and foot paths.

Poor beat up Brighton

What happened to this traffic island? :-/

Heading back into Christchurch in the afternoon, we passed yet another demolished church – whilst churches are by no means the only victims of the quake, there’s very few that haven’t suffered a lot of damage from what I’ve seen, and their distinctive construction styles make for some interesting photo shoots.

God hates buildings?

We ended up having dinner with some of Lisa’s friends by getting some pizza from Spagalimis in Riccarton and then heading out to the airport.

Spagalicious!

One thing I did notice lots in Christchurch are the numerous hacky heating solutions for bathrooms – a number of houses tend to have small fan heaters bolted to the wall, with the power feed wired into a switch on the wall – I guess it gets cold in the winter….

High tech Christchurch central heating solution.

Returning the rental car was interesting, we pulled into a parking space and a guy in a high viability vest approached offering to take our key – to which I gave him an education about social engineering and how could I validate the identity of some random guy approaching me in the carpark?

If you want a brand new car, I highly recommend going and hanging around the rental car lot in the evening when hurried travelers are pulling in to park, wearing a high visibility vest and offering to take their keys for them.

Lisa thinks I’m a nut, and sure I agree, the probability of such an occurrence in NZ is low, but it doesn’t mean it can’t happen…

 

Overall it was a good trip to Christchurch – not sure I’d live there at this stage, I do love my cities and with the main CBD being down, I think I might get a little bored –  but that being said, it’s got a nice cold climate and isn’t Auckland, which gives it some pretty high points. ;-)

Christchurch Day 3

It’s been a bit of a gap since my last post, unfortunately a large project (think 80 hr week) took away my spare blogging time, so now I’m playing catchup game, with blog_* folders all over my desktop of content to be posted.

Firstly, a couple pictures missed from day 2:

Trying some local brew picked up from a dodgy bottle store along the side of some highway.

Unimpressed kitty cat is unimpressed!

Day 3 in Christchurch was the big day of Lisa’s friend’s wedding, so I decided to excuse myself from the family madness taking place and went for a walk into the CBD to enjoy a coffee before attending the wedding with Lisa.

Hagley Park

Bit small for a river, bit large for a stream?

One thing I really noticed heaps whilst in Christchurch was the insanely annoyingly low angle of the winter sun –  I guess New Zealand’s South Island is getting pretty close to the bottom of the planet so winter angles are going to be a bit low, but I think it would drive me insane trying to live there with the sun always hitting me in the eyes. :-/

Whilst I'm naturally good looking and tool, the sun is amplifying the effect a bit here.

Aside from the sun however, the weather is amazing, with cool, crisp mornings – setting up on the container having a coffee in the chill air is just an amazing feeling, kind of like being back in Wellington again. :-)

Sitting on top of a shipping container, having a coffee, looking out to a giant demolition zone.... Christchurch is WEIRD.

Even the coffee here needs to get a little shaken first. ;-)

I ended up walking back to the motel in Riccarton – I can get around Christchurch pretty quickly on foot, it’s pretty much all flat so easy to go fast and not even work up a sweat.

I see why the bridge was closed now...

I'm a train!! :-D

More shipping container stores in a random suburb.

Thou shalt not pass!

I spent the evening with Lisa, her family and the soon-to-be-wed couple and their friends in the private function space of a pub, enjoying some amazing food and good times.

Lisa scrubs up pretty well :-P

Amazingly good Sumac and Mushroom soup at the wedding. I must find a way to recreate this.

Whilst it's meaty horribleness, I have to like the presentation style.

The tree of light!

Narcissist Jethro loves reflective skylights!

All up a pretty good and laid back day, skipping all the family business and rushing around pre-wedding was quite a good plan, I greatly prefer the company of a fine laptop and a fine coffee than chaos. :-)

Christchurch Day 2

Early start today, Lisa’s family had made bookings for 08:15 (yes, the morning, wtf) at Drexels in Christchurch, so whilst I had to get up early, there was thankfully unlimited coffee and some pretty decent food as well.

I'm unsure of the purpose of this symbol, but yes rental car, it is a bit cold.

mmmmm french toast smothered in butter and maple syrup

After breakfast I ended up going for a trip through Christchurch suburbs with Lisa and her friend, picking up stuff for the wedding, including a stop into the cheese mongers shop, selling both amazing cheeses, but also baking and other tasty snacks.

Cheeeeeeese shop! :-D

Cheese! Delicious cheese!All sorts, including raw milk cheeses.

omgomgomgcheese!

Following our tiki tour around Christchurch suburbs, we headed to the container mall for a mini tweetup with a bunch of Christchurch tweeple.

I really love the container mall, in many ways it would be nice to expand out into other empty lots to get more shops up and running.

Snugglebunny!

Afterwards, we went on another larger wander through and right around the red zone, checking out the extent of the damage – it’s actually a lot worse than I thought yesterday, not just a core of the CBD, but almost the entire thing is being demolished or is already just a rough, empty lot.

This old complex surprisingly looks to have emerged somewhat undamaged from the quake.

The Novatel really stands out - looks like the buildings on both the left and right sides were interconnected and have since been pulled down, leaving this weirdly exposed tower.

A still standing brick buildings, with remnants of the torn off neighbouring building still hanging to it.

Still yet to find a surviving stone church

Love the cardboard cutout workman wearing the high viz vest up in the building.

The building that I saw yesterday sitting alone in an otherwise deserted block looks like it wont be there that much longer – workmen have pulled off the side of the building and are busy tearing out the insides and throwing them down a chute.

A lot of buildings that look OK from the outside are cordoned off or are getting pulled down, so there must be a lot of structural damage that isn’t visible from the street.

IRD's cordoned off building in the background - in front of it, the site of the infamous CTV building.

Arts are still going strong down here, even amongst the rubble.

The staircase to nowhere.

Of all the places that could have fallen down, why not this shithole? :'(

Redzone wasteland

Back of High St

It’s not all demolition though, on our wanders I managed to find some new construction just outside of the red zone – certainly not as much as I expected, but at least it’s starting to take shape.

Some new construction!

Suburban Christchurch is really weird to me, I’m so used to always having suburban places being hilly and varied, but Christchurch is flat blocks as far as you go – it’s kind of reminds me of a higher-population Hawkes Bay.

It’s actually kind of the shame that there’s so much car usage here, this city would be great for a cycling/tram combination – it’s all flat and fairly compact, isn’t totally fucked yet like Auckland and it’s the ideal time for doing major infrastructure changes seeing as most of the CBD is unusable anyway.

Christchurch Day 1

I’ve spent my first day in Christchurch catching up with Lisa’s friends and family, but also went for a short walk from Riccarton, through Hagley park and into what remains of the CBD.

The flight down was all smooth, great view of the southern alps, hopefully on the way back it will be a bit less cloudy so I can get a better view. Christchurch airport has been through a lot of renovations – it’s still ongoing, but it’s very nice, possibly the nicest domestic airports in New Zealand.

Modern Art!

Loving the chill weather down here, it’s about 4 degrees and a lovely fresh chill breeze – as a Wellingtonian who’s been suffering muggy Auckland weather for the past 11 months, it’s absolutely blissful – especially when walking as you don’t get too hot.

Only downside is that you definitely notice the dampness down here in winter, Hagley park was very chill, dark, damp and muddy – kind of like the stereotypical cold harsh park you’d find in a murder movie. :-/

There aren’t many signs of the earthquake damage in Riccarton, but as I walked into the CBD a few more signs of it started appearing – temporary offices that have popped up in prefab modules, the odd empty lot and corner stores holding up their awnings with wooden frames.

Building's OK, but don't trust the awning...

A number of buildings like this are around the city - look structurally OK from the outside, but cordoned off and abandoned.

The bridge of remembrance - looks like it's survived OK, but cordoned off.

Tower block under deconstruction.

As I started getting into the proper CBD, it’s amazing to see how almost all the visible tower blocks have cranes attacking away at them, pulling them down.

Not sure why NZ uses cranes and diggers so much, vs explosives, but I presume there’s some cost or safety reasoning behind it – or maybe for better material recycling?

The container mall is really cute, lots of neat colours, layouts and designs.

Double-layer!

Where did the rest of that building go? O_o

Once in the CBD, you start to realise how much of the city’s core has been taken out of service, it would be like closing all of Lambton Quay and the Terrace in Wellington as well as pockets of Cuba St and Courtney Place.

The deconstruction is still ongoing, when I left the area at 17:30 with the sun fading there were still diggers working away in the background, although not as many as I would have expected.

In many ways I’m surprised that there was so little visible demolition presence – there were the odd person and sign guarding off-limit areas and contractors coming and going, but I was expecting to see hordes of diggers and cranes pulling stuff down.

I guess the methods used tend not to showcase swarms of workers – I don’t think it’s a case of them not working quickly, since I can see the huge amount of the city that’s been cleared, something which would not have been an easy feat.

Anything in brick got totally fucked - I guess there's a reason why there aren't many brick buildings in Wellington...

Look carefully at the building on the right.... or more accurately, the 10% that remains of it.

A lone tower block, surrounded by blocks of cleared rubble

Resembles more of an industrial wasteland than a CBD

There’s a huge amount of empty of space around the CBD – each of these spaces was once a building, it’s hard to comprehend how much has actually collapsed, since most of the rubble has been removed by now, some of the scale is lost.

The CBD has a kind of dystopian feel to it with all the missing buildings, odd piles of rubble and the random boy racer cruising through a deserted street in a low riding car with booming stereo and exhaust, whilst army soldiers stand guard.

Another empty lot, another defacto carpark.

Whilst still standing, there are a number of buildings still pending a demolition.

Shiny tower blocks, with boarded up windows #juxtaposition

I can see why they're going to demolish the cathedral - no way it can simply be repaired with this much damage

After seeing how many brick buildings have collapsed and how badly, I can’t understand for any calls to save the cathedral or any of the other heritage buildings that came down – the earthquake shows that those materials are just too weak and dangerous for the geological conditions here in NZ.

Whilst it’s good to keep some amount of heritage buildings, the only way they’re going to be able to do it here is to build with modern materials and then replicate the look and feel of the heritage architecture, eg cladding a new church in the old one’s bricks, but not using it for load bearing walls.

At the end of the day, people come first – we shouldn’t keep old dangerous designs around just for heritage purposes, civilization is about constant evolution and improvement for the benefit of the living.

Guess the missing shape!

Some buildings are wrecked in some really weird ways - the demolition of the surrounding neighbors does offer a bit of a different view into the architecture of some of these older buildings, including weird additions.

Noooooo Little India is closed :'(

Most of the rubble lots have been cleared, the few that remain tend to have been compacted down

I’ll be getting more of a look around the city over the next few days, but it’s already pretty clear that Christchurch is going to have a massive amount of work cut out for it, to get the CBD back up and running.

Null Modem Trick

I dug out my Soekris 4801 and needed to hookup a serial connection to figure out what the was actually running and to reconfigure as required.

After digging through my cables I found a DB-9 serial female to female cable and hooked it up, only to frustratingly find that the cable wasn’t infact a null modem cable, and actually a somewhat obscure female-to-female DCE-to-DTE.

Then I realized, that I don’t need to buy yet-another-cable to have to carry around, instead my USB-to-serial adapter already features a long cable – so just attach an adapter and solved!

As long as the adapter allows you to unscrew the screw thread sockets, you can then fit it directly between the serial device and the USB-to-serial adapter. :-)

The 80s called, it wants it's communications method back!

Christchurch Meetups

I’m in Christchurch for the next 4 days – if you’re down here and would like to catch up, please drop me an email, IM or SMS and I’ll make some time to catch you up.

My schedule isn’t fully under my control as I’m down here for some family things and a Lisa-friend’s wedding, but it looks like I have a lot of Saturday day free and some of Monday day, before I depart Monday evening.

At this stage there is going to be coffee 11:30 on Saturday July 7th at Crafted Coffee in the shipping container mall, so feel free to come along and say hi. :-)

LDAP & RADIUS centralised authentication

I recently did a presentation at the June AuckLUG meeting on configuring LDAP and RADIUS centralised authentication solutions.

It’s a little rough (first time I’ve done a presentation on the topic), but hopefully is of use to anyone interested in setting up an LDAP server. In my case I’m using an OpenLDAP server with my self-developed open source LDAPAuthManager tool.

You can watch the presentation (about 2 hours) on YouTube, it includes a lot of verbal and visual demonstrations, so conveys a lot more detail than the slides alone.

You can download a copy of the slides here if wanted (pdf).

Soldering Adventures

As part of my efforts to learn more about electronics, I recently obtained a power supply kit that breaks the standard 5V USB output into 3.3V and 5V bread-board connectable outputs from Mindkits (who resell Sparkfun kits in NZ, amongst other stuff).

I went for a USB-powered model rather than a typical round-pin DC supply, since I have an abundance of USB power sources with me all the time (both laptop and wall adaptors) and it’s much better than having yet another damn power brick hanging around.

I finally managed to get around to making the time to try it out this weekend and dug out the soldering iron to tackle the challenge – past soldering exploits have never fared particularly well, but I figure sooner or later I’ll learn something and make a working device. ;-)

How hard could this possibly be? :-P

One of the biggest challenges I found was actually holding such a small PCB still, whilst trying to align solder and the iron – think one of my next purchases will be some sort of clamp to hold the board in place.

I’m not convinced that my soldering iron is particularly good either, need to do some research on the best type of soldering head (round vs chisel?). I’d probably go better with more gun shaped soldering iron than the round pencil design, I just tend to find it easier to align.

Ready, set, solder!

I started off doing the small components like resisters and small caps, before moving on to the voltage regular, switch, USB port and pin headers.

Apologies to any electrical engineers or skilled hobbyist reading this blog, but my soldering is pretty terrible, as you can see. Take note that this is the first thing I’ve soldered that actually works :-P

Oh god, oh god my eyes!

I started with the resisters in the middle, as you can see my soldering was pretty terrible there – used too much solder and ended up making large messy blobs.

Later I got better at briefly heating the legs and then applying the solder in a way that allowed it to run down and bond with the PCB, so my later joins got a lot better, eg the USB socket with it’s 4 close small pins.

I got an impromptu lesson to using a multimeter as the circuit wouldn’t work initially – I had managed to make a PSU that was always on (ignoring the switch status) and provided no 3.3V output.

Thanks to the simplicity of this kit, it was pretty easy to test each component to figure out where my bad joins were and I re-soldered a few of the bad earlier joins.

The only real headache was the voltage regulator – for some reason I had real difficulty getting the solder to bond with the middle pin and the PCB and had to redo it several times – it’s still not perfect TBH :-(

Assembled :-D

Shiny shiny! (OMG, an artsy picture without using Instagram!)

So far the kit seems pretty good, it was really easy to assemble with the clear silkscreen markings – most work I had to do was lookup the resister code/colors, which is trivial thanks to Electrodroid on my phone. :-)

The one design issue I do have with the kit, is that the positioning of the breadboard connectors requires you to break the header pins into single units, but doing this really weakens the design, since it’s just one tiny solder joint holding the pin to the PCB – I do fear the force of inserting and removing from breadboards will wear it down a bit over time.

To counter this a bit, I’ve stuck a blob of hot glue around the headers, to give them a bit more integrity – although the 3.3V pin soldering joint is playing up and might need redoing anyway.

Hot glue solves all! (also stuck some around the voltage regulator as one of the solder joints isn't that great, but I can't fix it without risking ruining the PCB trace)

Looking at the round-DC connector version of the kit, the design instead has two pairs of 2x pin headers, which I suspect will make it a bit more sturdy.

Overall whilst it’s a painful learning curve trying to get the soldering right, I didn’t burn myself *too* badly and whilst not a shining example of art, the board works and powers up.

Next time, I’ll be tackling the RS232 shifter kit and then working to hook up an RS232 power to an Arduino’s digital pins using a software serial driver. And after that, I might have a go at making some temperature sensor 1-wire boards to install around my server case using the small square prototyping boards I brought.

Hopefully by then my soldering will be an acceptable level. :-)

Next kit to make - the RS232 shifter, with lots of lovely close resisters to solder.