Jun 15 2006

Solaris 10 Default Security

When are we going to start making Operating Systems install secure by default?


$ netstat -a|grep -i listen|awk '{print $1}'
*.sunrpc
*.32771
*.lockd
*.32772
*.32773
*.32774
*.32775
*.32776
*.telnet
*.ftp
*.finger
*.login
*.shell
*.fs
*.32777
*.ssh
*.5987
*.898
*.32778
*.5988
*.32779
*.9010
*.32780
*.32782
*.32781
*.smtp
*.smtp
*.submission
*.telnet
*.ftp
*.finger
*.login
*.shell
*.fs
*.ssh
*.smtp

Jun 14 2006

TurboGears API Goes 1.0

“The TurboGears 1.0 API is done. There may be some minor additions, but
there won’t be breaking changes between now and 1.0 final. I’m also
working to ensure that only changes with minimal risk to production
use are checked into the 1.0 branch. So, everything is organized
around the notion that we are stabilizing things for a 1.0 release.”

Kevin Dangoor

I’ve been looking forward to this announcement.  It is hard to get caught up in a web framework when you know there could be major upheaval in the API.  I haven’t been able to get into the Ruby craze, I’m still on my Python kick for awhile longer and with TurboGears and Django going stable, there isn’t a better time to be a Python web developer.


Jun 13 2006

Handy .screenrc

Found the follow handy .screenrc posted in a forum. If you are a heavy UNIX user and you haven’t used GNU Screen, you are missing out on one of the handiest applications around. Highly recommended. The following adds a nice status line and F5 and F6 to switch through windows, F7 to rename the active window, and F8 to create a new window.

bindkey -k k5 prev
bindkey -k k6 next
bindkey -k k7 title
bindkey -k k8 screen
msgwait 1
autodetach on
nethack on
sorendition 04 43
hardstatus alwayslastline "%D %M %d %c | %-w %{+r} %n %t %{-} %+w"
vbell on
defscrollback 1024
startup_message off
defutf8 on
term xterm

Jun 13 2006

Concurrent Port Scanner in Haskell

Tom Moertel wrote a very concise port scanner in Haskell. I have never looked at Haskell in any detail, but this program seems pretty impressive. You wouldn’t be able to do a port scanner quite so neatly in most other languages. I guess I’ll have to put that on the long stack of things to look into in more someday.


Jun 9 2006

Don’t Be Evil (but censorship is ok)

“Google Inc. is committed to doing business in China despite criticism the company has faced for abiding by Chinese government censorship restrictions, co-founder Sergey Brin said this week.

Brin told a small group of invited journalists: “I think it’s perfectly reasonable to do something different. Say, OK, let’s stand by the principle against censorship and we won’t actually operate there”.

But he then added: “That’s an alternative path. It’s not the one we’ve chosen to take right now”. …

At a regular news briefing in Beijing on Thursday, Foreign Ministry spokesman Liu Jianchao said the Chinese government viewed Google’s involvement in the country positively. 

Reuters

So it is perfectly reasonable for a company who’s sole mission is to bring the world’s information to your fingertips and was founded with the motto “Don’t Be Evil” to work with opressive governments to censor such words as:

  • democracy
  • human rights
  • tiananmen
  • bird flu
  • dissidents
  • water pollution
  • tank man
  • freedom
  • protests

The above list was obtained from: http://blog.outer-court.com/archive/2006-06-08-n72.html.

I don’t know how Google can be so blind, but hey at least the stock is doing well.


Jun 8 2006

Badonkadonk Land Cruiser/Tank

You can get anything from Amazon these days, including a JL421 Badonkadonk Land Cruiser/Tank. The reviews on this thing are awesome.


Jun 8 2006

Embarrassing Red Hat RPM Bug

Tonight, I stumbled upon an embarrassing RPM bug report that puts Red Hat developers in a bad light. I can understand that as a developer you could become frustrated with a report, but instead of trying to explain how the RPM database could go into an inconsistent state, and determine whether that was fixable or not, the developers berated the users. Is this how you build a community?

Finally, after two years of ignoring the bug, Red Hat finally came around and ‘fixed’ it, though it isn’t clear whether they fixed the general case, or put a work around for the behavior from the original report. I wasn’t aware that RPM or yum had this behavior and it makes me trust the whole mess a lot less. I wonder how apt-get handles this.

As a system admin, I generally prefer systems with package management. Being able to do security updates without hassle is a huge benefit. However, no matter how much one tries, there are always going to be programs or libraries outside your package manager. From a philosophical point of view, it is probably better to have all or nothing, so I sympathize with those who compile and install everything, or use a comprehensive system like BSD ports.

I think a better system could be developed that encompasses the entirety of program management. It should include installing libraries from scripting languages such as Python Eggs, Ruby Gems or Perl CPAN. It should probably include hooks into GNU AutoConf/AutoMake, though I imagine the political hurdles of getting so many disparate projects to agree on a standard would be far greater than the technical ones. I suppose we can all hope.


Jun 7 2006

Brin says Google compromised principles

“Google Inc. co-founder Sergey Brin acknowledged Tuesday the dominant Internet company has compromised its principles by accommodating Chinese censorship demands. He said Google is wrestling to make the deal work before deciding whether to reverse course.”

http://news.yahoo.com/s/ap/20060606/ap_on_hi_te/google_censorship_3


Jun 2 2006

The Coming Battle Over Grid Computing and Internet Services

A comment I left on Wes Maldonado’s blog has started a conversation about grid computing. He posted on Digipede, a Windows centric way to do distributed computing and I responded that it would be “nice” not to be forced to do this type of work on an operating system that required a GUI. That set off another post about cost effectiveness and using existing infrastructure, points I don’t disagree with.

In an IT environment with a lot of computers running Windows and a problem that allows you to do distributed algorithms easily, Digipede seems pretty exciting. Ever since the original Distributed.net, I’d wondered if a company would bring a product like this to market. It is something that I would have a lot of fun playing with.

That said, my point on electricity and running super computer clusters on Windows still stands. My comment wasn’t intended to disparage Digipede so much as point out the problem that Microsoft is going to have competing with companies like Google and Yahoo for the next generation of Internet Services. Some have estimated that Google’s data centers have well over 100,000 COTS PC’s setup in a distributed grid. Google is running Linux, which can run headless without a video card, or the need to install any GUI package. Linux has been “designed” to be completely scriptable from a command line interface.

Windows however, appears to have a tight integration between the GUI layers and the NT kernel. As far as I know, it is impossible to install Windows on a machine without a video card. Obviously, the GUI layer will be paged to disk on all these machines, but the cost of a video card multiplied by several hundred thousand is needless. The other competitive advantage Google and Yahoo have is the scriptability of Linux and FreeBSD. While PowerShell is a step forward for Microsoft, my view is that the UNIX environment wins on system administration scriptability.

The key to building super computer clusters is easy system administration. Perhaps Microsoft can leverage their existing infrastructure and prove that GUI tools can do everything the UNIX ones can and more, but they are starting with less experience. Google has already proven they can do it effectively. My back of the envelope estimation is that Google Linux sysadmins are each responsible for between 1,000 and 2,000 servers. I don’t see a Microsoft solution for that yet, and I don’t think the Digipede product is intended to compete in that type of environment. Digipede also probably isn’t going to compete in the National Labs super computer arena either (at least yet).

The second problem is any kind of parallel programming is really hard. Even threads prove a huge challenge within a single application. While clever, I don’t think that Map/Reduce is a magic bullet either. A lot of algorithms simply don’t scale linearly with computing power, so adding more hardware just burns a hole in your wallet and in your data center’s air conditioning. All that said, there are plenty of places that products like Digipede would fit perfectly.

Mainly, I am interested to see how this all shakes out, as we see Microsoft, Google and Yahoo building their data centers close to hydro-electric power to cut costs. Sun is also a dark horse in this whole race, building out their grid infrastructure and custom chips that suck less juice. I can’t wait to see more!