Installing sshd in the Cygwin Package

I was installing sshd on my Windows XP computer after I was reminded about it on Lifehacker. I had previously installed Cygwin but I was missing a rather important step. The last little bit of running sshd-host-config was rather discouraging.

The service has been installed under LocalSystem account.
To start the service, call `net start sshd’ or `cygrunsrv -S sshd’.
chown: `system’: invalid user
chown: `system.544′: invalid user
chown: `system.544′: invalid user
chown: `system.544′: invalid user

Host configuration finished. Have fun!

Well, it’s difficult to have fun with sshd when the service won’t start. Fortunately, I discovered my mistake before too long. When I was making the passwd and group login files, I used mkpasswd -d and mkgroup -d, which put the domain users and groups into the files. I was supposed to use the -l switch. It turned out that I needed to add the system account to the passwd file and the group file. After I did that, everything was working. However, I should really remove some of the other users since they don’t need access and their passwords aren’t the greatest.

My Drupal Rewrite Rules

I have Drupal 4.7.3 on my Lighttpd server and it requires some rewrite rules for Clean URL’s. I found an example in the forums ( and adapted it for my use. The only problem I’ve noticed is that the option for Private downloads through Drupal does not work. Public downloading still works, and I’m not sure why. I might have a mistake somewhere. Drupal is in its own subdirectory called (surprisingly) drupal.

Oh, and fastcgi definitely does not work with Windows, lighttpd, and php, at least for now. A new version was just released but I don’t believe that has been fixed yet.

#for Drupal, found at # Clean URL
#server.modules += ( “mod_rewrite” )

url.rewrite-final = (
# Clean URL test for 4.6
“^/drupal/system/test/(.*)$” => “/drupal/index.php?q=system/test/$1”,

# Clean URL test for 4.7
“^/drupal/system/test-clean-url/(.*)$” => “/drupal/index.php?q=system/test-clean-url/$1”,

# feed alias
“/drupal/rss.xml$” => “/drupal/index.php?q=rss.xml”,

# Search
“^/drupal/search/(.*)$” => “/drupal/index.php?q=search/$1”,

# More than one argument
“^/drupal/([^.?]*)\?(.*)$” => “/drupal/index.php?q=$1&$2”,

# No arguments
“^/drupal/([^.?]*)$” => “/drupal/index.php?q=$1”,

#to download attachments via private downloads, but doesn’t seem to work. Something missing?
“^/drupal/system/files/(.*)$” => “/drupal/index.php?q=system/files/$1″

# Exempt .html suffixes. Uncomment this if you have your path aliases end in .html
#”^/([^.?]*\.html)$” => “/index.php?q=$1”


#There is also a suggested deny rule to go along with the rewrite rules.

url.access-deny = ( “~”, “.inc”, “.engine”, “.install”, “.module”, “.sh”, “sql”, “.theme”, “.tpl.php”, “.xtmpl”, “Entries”, “Repository”, “Root” )