So I have to download a customer's site from their old server, because
the wget I did a few weeks ago missed some “private”
files.

Why did I use wget a few weeks ago?

Because of FTP, that's
why (and yes, I did forget that wget can do FTP—grrrr).

Now, I'm used to using FTP. Been using it since, oh, 1989 or there abouts.
But the standard FTP
client that comes with Unix doesn't handle directories very well, in that
you can't just “get” a directory and have it download all the files in
said directory—no, you have to change into each directory and grab the
files.

Well, there isncftp but I hatencftp. I'd rather use a Windows FTP client like CuteFTP or WS-FTP than
ncftp and that says something.

So I end up using ncftp.

Under Windows no less.

Sigh.

I don't have ncftp installed on my workstation, because
apparently, it isn't installed by default with this Linux distribution
(which is based off a RedHat distribution—funnily enough, my
system at home, which started out as a RedHat 5.0 system, hasncftp installed, even though I never use it). And I'm not
about to install it, given the oh so wonderful experiences I've had with
package managers that fail to actually install the packages I want
because I use the common name, like foobar instead of the more
precise name like
foobar-2.4.2-snap-dragon-on-speed.Beta-release.

So I figure I'd use Windows, since every Windows GUIFTP client can at least deal with recursively
downloading files.

Only the GUI-based
FTP clients we have
installed on the Windows system are well past their “evaluation” period
and is now in the “register now or we trash your system” period. And the
default Windows FTP
command line program is even more pathetic than the default Unix
FTP command line program,
so using that is out of the question.

But …

The Windows systems have Cygwin installed, which includes an
install of ncftp.

So that's why I'm using ncftp under Windows.

But why do I hate ncftp?

Because it does things on my behalf that I don't want it doing.
I'm used:

ncftp? Oh, it tries to be “helpful” and unless otherwise
stated on the command line, will automatically anonymously log me
in. You know, to save me from having to type A N O N Y M O U S
(or even F T P which became the other default anonymous user
login because I guess, typing A N O N Y M O U S proved to be too
difficult for most users).

That is not the behavior I expect from an FTP client—especially a command line
FTP client, and I
know I'm in the minority on this (since nearly every one of my
friends seems to like, or at least, tolerate, ncftp as the
current state of affairs, much like Medival peasants tolerated the Black
Death as the current state of affairs).

Once past that problem, next was downloading the entire site.
Started the recursive GET, only to have it time out on a
particularly large file. Okay, try it again.

At least ncftp was smart enough to realize what it had
already downloaded, but a few of the files apparently “changed” between
the two attempts, and I was given the chance to “[O]verwrite” or
“[!O]verwrite All.” My mistake here was assuming that “[!O]verwrite All”
meant that any files that it would otherwise ask me about it would just
overwrite.

Hah!

No, selecting “[!O]verwrite All” really meant: “re-download
every file and oh, crap out on the really large ones.”

A couple of hours of fighting this crap, I found out that what I
really wanted was set auto-resume yes.

To really drive home the friendliness point—as I was trying to quit
ncftp it noticed that I had not “bookmarked” the site. No,
just quit—I don't need to be asked to “bookmark” it—if I want
to “bookmark” it, I'll tell you.

Sheesh.

God, I just love software that knows better than I about what I
want done.

Today was an interesting day, in the old Chinese way. I'm in my car,
pulling out of the driveway and noticing a significant list to starboard and
the steering is a bit wonky. I have my suspicions and it does indeed turn
out correct: the passenger front tire is flat.

I'm already running a bit late to work, but hey, what's another hour or
so? Jack up the car, remove the airless tire and slap on the rather
pathetic excuse for a spare, causing my car to transcend the look of
silliness into the realm of ridiculousness. Once the donut is secured to
the wheelbase and the flat secured in the trunk, I head out in search of the
nearest Tire
Kingdom, a few miles away.

There, I am informed that it would take at least two hour for them to
patch the tire. Not wanting to stick around in a waiting room with a
blaring TV and decade old car trade
magazines, I head back home. I inform The Office that I will be even later
than expected.

My job at The Company can mostly be performed at home; even if a server
needs to be rebooted I can call a partnering company with access to the
datacenter and have a warm body go in and perform the necessary button
pushing if it comes to that. Email and checking the trouble ticket system
can be done from home. The only thing I can't do is answer The
Office phone. For now (as one of the longer range goals of Smirk is to have
The Office phone forwarded as needed).

Two and a half hours later, I call back to Tire Kingdom and yes, my tire
has been patched and ready to pick up. An hour later, after finishing up
with a hysterical client that's having email problems and can't get anyone
at the office (well, no wonder—Smirk having jury duty, P studying for
exams and I with a donut for a tire) I retrieve the now patched tire. Since
it is so late by this time I figured it's of no use to actually go
into the office and instead just go back home and swap the patched tire for
the donut.

On the way home, I pass a gentleman riding an adult tricycle whose tire
fell off in a most comical way, and I am reminded that it could have been
worse.

Something that occurred to me goes back to one of the original
stupid reasons for chasing after this. There are any number of
stories out there of crashed UFOs. If you buy all of them, then the damn things
must be falling out of the sky everywhere. Something that's always
been in the back of my mind (and probably many others) is “Wouldn't
it be fun to try and track down one of these things?” Well, after
investing all this effort into searching for a terrestrial (although
very spacey looking) craft, I'm pretty skeptical that any remnants
of an actual saucer crash (assuming one really occurred) could be
found. I was dealing here with an event I knew had
occurred, which had a reasonable amount of documentation, was in
favorable, open terrain, and proved nearly impossible to find. If a
saucer ever did plop down somewhere, I suspect not a trace would
remain. Still, it would be more fun than hunting snipe …

Quite a long article about trying to find a crashed A-12, the precursor to
the SR-71 (it's a bit shorter, only room for a single pilot and a smaller
flight range, but faster and can fly higher than the SR-71).

There is always something left (Applies to UFO crashes only if
there's a real crash!)

There is almost always a road to the crash site.

Newspaper information is not to be trusted.

If he could find evidence of a top-secret CIA spy plane (even if it did crash
some 35 years previously to his searching for it) then it might be possible
to find an actual UFO
crash site. But given that he spent not only two years but:

Personal trips out there: About 20

Money spent on aerial photos: $500

Additional money to replace sunk truck: $6,000

Cumulative searchers involved over entire hunt: 9

Other wrecks found during the search: 3

The chances of finding a possibleUFO crash are very slim indeed.

And the article is well worth reading (even if it is a bit on the long
side).

One reason for my journal is to document some pretty arcane technical
information, like … oh … surviving
a DDoS attack.
Good thing too, because one of the servers I manage—the ones that
typically get hacked and attacked,
was under attack today.

Annoying, but nothing that I couldn't handle.

After blocking some 3,100 IP
addresses, I was of the opinion that the source addresses were forged.
While it's possible that some hacker or hackers had control of thousands of
zombie boxes, it was curious as to why they were attacking the particular
sites—just small marketing sites that, as it turned out, were no longer
used.

Once I found out the sites under attack (all under the same IP address) were no longer needed, it
was a simple matter to take down the IP address under attack.

One of our clients is getting the following error on a PHP (of course) driven
website:

Warning: file_exists(): open_basedir restriction in effect.
File(XXXX) is not within the allowed
path(s): (XXXX/htdocs:/tmp) in XXXX on line 531

Okay, I read that as “file not found” but according to the
customer, if the file really didn't exist, she would get “file not
found” instead of “File … is not within the allowed path(s).” Which is
frustrating because the file in question does not exist!

Does anyone have a clue? It appears that PHP is refusing to
search for files past a certain depth, but I can't say for sure that is the
problem, nor even what to look for to see if this is the
problem.

Sure, it was easy enough to stop the SYN attack on Monday by just turning
off the IP address under
attack. But the owner of the sites on that IP address want to know which site was the one being
attacked.

So, how do you determine which of fifty-plus sites was the victim
of a SYN attack?

By giving each of the fifty-plus sites their own IP address and seeing which one gets SYN
attacked, that's how.

It seems that the company that owns the sites have a domain that has
nothing but advertising banners for gambling sites (since that's what they
do) for which they bought advertising space on a bunch of porn sites (I'm
sure on the theory of “in for a penny, in for a pound” but in this case,
“in for a vice, in for a whole slew of vices”) and it caught our server
unaware.

It's not like the server can't handle the load, but that Apache wasn't
configured for such a spike in traffic. Now that I've tweaked the
operating system (Linux):

I drove to the first window and hand over a $10 bill. The cashier makes
change, and hands it and the receipt over. I scan the receipt and notice
that it's not for the number one I order, but a number seven, megaduper
humongous size. “I'm sorry, but this isn't my order,” I said, handing
back the change and recept. The cashier looked puzzled. “I ordered a
number one, regular ludicrous size.”

“Oh,” she said. She called over another worker, and both started
talking in a patrois that I did not understand. The second one then started
slamming on the cash register and by the tone of her voice, I could only
assume that she was swearing in whatever langauge she natively spoke. She
then called over a manager.

He walked up, and between all three of them, in somewhat hushed tones and
slightly broken English, an explanation of what happened transpired. The
cars were backing up behind me. The manager furiously punched buttons on
the formerly abused cash register, recounted out my change, and handed it to
me. “Next window please,” he said.

At the next window, the fast-food worker held a bag towards me. “Number
one, regular ludicrous size with a Coke?”

A customer calls up, and asks if we can reboot his colocated server
because he can't “PCAnywhere in.” Windows box.
Of course. “It's XXXXXXXXXXXXXXXX.com, in a tall
tower case,” he said.

“So all I need to do is hit Ctrl-Alt-Del and shutdown then,
right?” I wanted to make sure here.

“Yes.”

So I go into the server room, and hook up the crashcart to the system in
question. The few mice I try don't work, but the keyboard does, so at least
I have that much going for me. The screen is, for the most part, blank, and
the task bar at the bottom looks like it has an outbreak of the Chicken Pox.
I hit Ctrl-Alt-Del, a few windows flash, then the infamous “I
can't stop this task” message box comes up.

By now, I can see that there are at least a few dozen message boxes from
some application complaining that it can't send email and to try again. And
it's this application that Windows is having difficulty killing, since the
message boxes are apparently keeping the program alive until I click
Okay to dismiss it.

And each message box is backed up with its own process.

Which is filling up the task bar with so many programs, making it look
like the aformentioned Chicken Pox.

So for a solid five minutes I'm there alternating between killing tasks
from the task-killing message box (which doesn't seem to go away) and
hitting Okay on the “I can't send email” message boxes, and I
swear the number of tasks is not decreasing. I'd like to shut down
this server cleanly because, well … it's Windows (turns out it's
Windows NT 4.0 release 1381—circa 1996 I believe).

But there's no way I'm going to play button-monkey to Windows, and I hit
the Big Red
Switch.

It's a server! I shouldn't have to hit Okay on a
message box to get it to continue. It should run unattended.

G, a consultant that we do business with (he was the one that got us
involved in Project White Elephant,
which is actually going quite well now that the servers are configured
correctly) dropped off a Mac mini (at a price just a bit
lower than the going street price) with the idea that we might be able to
use it as a low-cost server platform. it's small, low power (although not
as low as a Cobalt RaQ) and underneath the Mac exterior is BSD Unix.

I have the unit at home right now, playing around with it, and I must
say, the software is slick and the GUI is nice (although I've already come across one
quirk, and the fact that you have to drag the CD to the trash to eject is a bit … disconcerting to one
not used to it).

The dock (the Apple equivilent of Window's Task Bar) is better behaved
when hidden—there's a crucial half-second or so pause before it will pop
up, unlike the Window's Task Bar which will pop up if you get
anywhere near it. Although having to look for the little arrow at
the bottom of the dock icon to see which programs are running is a pain.
Small price I guess.

And the keyboard sucks! I have an actual, honest-to-God
Mac keyboard for the thing, and what I wouldn't give to use an
actual, honest-to-God IBM keyboard on this
thing—the stupid Mac keyboard lies flat!

Gah!

In fact, as I was typing this up (using this XXXXXXXXXXXXXXX Mac keyboard)
Spring was admiring
(or rather, drooling over) the Mac mini—

HOLY COW!

HOW COOL IS THAT?

(Forgive me—I'm not used to Macs as you might be able to tell). Pressing
F9 shrinks all the windows on the desktop, giving you a thumbnail
view of everything, F10 shrinks the windows of the current
application in focus, and F11 hides all the open windows on the
desk top.

Okay, I'm beginning to drool over this thing now.

Get a decent keyboard for this thing, and a development system, and I just
might keep this thing for myself …

Well, Hurricane
Katrina was certainly anti-climatic. I first heard about it ealier this
week, but unlike the past few hurricanes, it was still a tropical storm and
would only become a hurricane just prior to landfall. I was expecting some
bad weather very late Thursday and throughout Friday, but the timing was a
bit off.

The worst came throughout late Thursday, and given that Hurricane Katrina
hit land just south of Ft. Lauderdale, a good fourty miles to
the south, we just got some stiff breezes and some light rain here at Casa
New Jersey. That's the good news.

The bad news—I was hoping to get Friday off from work, but seeing how
Hurricane Katrina was already offshore by the time I got up, workbound I
was.

Fortunately, the office is very quiet today and it appears that
most people have today off anyway. Now it's just a regular muggy Auguest
afternoon in South Florida.

In looking over the satellite loops of Hurricane Katrina, I'm struck by
the fact that as a hurricane, it was a rather poorly defined one (at least,
as it went over South Florida)—no real eye developed and except for
possibly some hurricane force winds (sustained 74 mph) between Ft. Lauderdale and Miami, it was nothing more than
a really bad storm. I do wonder if conditions in the mid-Atlantic are less
favorable to hurricane formation now. We're almost half-way through the
season and Katrina is the 11th storm so far. Is there still
enough energy in the mid-Atlantic to sustain more hurricanes this season?
(for comparrison, back in 1992, the first storm of the season, Hurricane Andrew, formed in mid-August).

It takes quite a bit of energy to feed a hurricane, and while there's
another storm that might get named in the mid-Atlantic, it's been that
way for a few days now (with the National Hurricane Center labelling it a
“possibility in 36 hours” for the past three days) and I have to wonder if
there's anything left in the mid-Atlantic to give, energy wise.

Annoying when it happens, but if I do the search over again, the results
page will have the links going directly to the results, as in:

http://www.ci.miami.fl.us/

But not today.

Today, no matter how many times I restart my search, clear the cookies,
click on the munged link or what have you, Google is insistent upon
returning the annoying links that are useless to blogging. And to make
matters worse, there's JavaScript in the results page to munge the status
bar at the bottom of the browser (in Firefox,
hoving over a link will show the URL in the status bar) so it's not readily
apparent what's going on.

Come on Google, cut it out! You, of all companies, are supposed to be
above such things …

Smirk misunderstood an entry I
made last week, thinking that I wanted to keep the Mac mini I was testing for work.
He went ahead and ordered the PS/2 to USB adaptor (and a few extras for the office) so I could use
a real keyboard (along with DoubleCommand since the IBM
keyboards I use don't have Windows keys).

At that point, I figured I was having so much fun with the Mac that I
might as well keep it, seeing how it was below steet price to begin
with.

But that wasn't my intent with the entry. At the time, I was cursing the
keyboard I was using and wishing I could use an IBM PS/2 keyboard. It was
then I decided to search Google for
a “PS/2 to USB adaptor”
and lo'—there it was.

But you know, if this had happened in the 1920s? Nobody would
have had a clue that this was on the way—there would have been no
satellite tracking, no way of predicting which way the big wind
would have shifted, and precious few ways of getting the word out
ahead of the storm even if they had known. If Katrina turns out
even half as bad as people say, it would have erupted out of nowhere
to lay the smackdown with no warning whatsoever. A lot of people
probably would have died.

My thoughts go out to those stuck in Louisiana and I hope that the death
toll (last reported: three, but those happened during evacuation) does not
rise at all. We do live in an incredible age where we are able to get
significant warnings and save lives that might have otherwise been lost.

When all of this is over, the religious leaders will be calling
everyone to thank God that everything is okay. No mention of the
well-trained scientists and disaster experts who worked so
tirelessly.

Unless you have a REALLY high end sine wave UPS, get rid of it
for all your audio gear, it doesn't have the balls to save you
anyway. UPSs
by thier nature inject all kinds of horrible hash onto the mains
power. I mean get rid of ALL of them on the same phase as your audio
gear. Don't even have'em plugged in in the same house if
possible.

Repeat after me, as often as it takes,

One path to ground.
One path to ground.
One path to ground.
One path to ground.
One path to
ground.

“What type of server is my site currently on? Because I need to use an
Access database,” said the customer.

“Well, it's currently on our Unix server,” I replied, “so we'll need
to—” KA-KRAAAAAAACK-BOOOM! “—oh holy sweet Mother of God we're all
going to die! Aieeeeeeeeeeeeeeeeeeeeeeeeee!” It's amazing the small amount
of space an adult human can occupy under the desk when the proper motivation
is applied.

“Sir,” said the customer, “are you okay?”

Slowly peek my head out. “Yes … just a lightning strike across the
street.”

Coincidentally enough, the customer's domain has the word “lightning”
in it.

Obligatory Miscellaneous

You have my permission to link freely to any entry here. Go
ahead, I won't bite. I promise.

The dates are the permanent links to that day's entries (or
entry, if there is only one entry). The titles are the permanent
links to that entry only. The format for the links are
simple: Start with the base link for this site: http://boston.conman.org/, then add the date you are
interested in, say 2000/08/01,
so that would make the final URL:

You may also note subtle shading of the links and that's
intentional: the “closer” the link is (relative to the
page) the “brighter” it appears. It's an experiment in
using color shading to denote the distance a link is from here. If
you don't notice it, don't worry; it's not all that
important.

It is assumed that every brand name, slogan, corporate name,
symbol, design element, et cetera mentioned in these pages is a
protected and/or trademarked entity, the sole property of its
owner(s), and acknowledgement of this status is implied.