A Blip on My Posts

Hello everyone!

You may have seen a blip swing by in posting on the site with the default WordPress posting “Hello World” displaying as a new post.  This was due to my recent migration from Site5 shared hosting to a Linode VPS.  During the switchover, the database had not been uploaded yet as I was tweaking the webserver…feedburner detected a change in the RSS when DNS switched and BOOM!  The WordPress default post popped up saying hello.  I thought I had everything planned and timed perfectly but it seems I was off because of how fast DNS switched.

I apologize if this littered your inbox or your RSS reader.  I can promise some GREAT posts coming up.  I’ve been working on a file permissions and user groups posting to help new users out.  I’ve also inherited an older laptop with a PIII that I’ll be installing Salix on soon…I’ve decided to go with LXDE version of Salix 13.  Should be quite fun to see how that performs and report about it.  I’m also investigating Linux command line downloaders that can grab files from the web for you.  So lots of stuff on the horizon.  Once again, apologies for anything odd that may have popped up.

If you’d like to know more about the migration or have Site5 shared or Linode VPS questions, please drop me a line in the comments section.

Host Your Own Domain, Website and Webserver

This post was originally published on 13 July, 2006.  This version has been updated.

I have a problem with facebook, myspace, and other social networking websites out there.  The problem is when I upload my data to their webservers….I don’t own it anymore.  They do.  And they can do whatever they want with it once it is there.

With this in mind, I’d rather setup my own twitter using Status.net or my own digg using Pligg.  But I’d do it on MY OWN SERVER.  That way, any content I upload is MINE.  It doesn’t reside on some server in California or DC and get recycled to advertisements.

I like to control my own stuff.  I don’t like to be cut out of the loop.  If you’re like me, then you’ll want to host your own domain, website and webserver so that your friends/family/shrink can quickly and easily connect up to see new photos, find out the latest family developments, and understand why you wear tinfoil hats every Thursday after 4pm.

Normally, to host your own webpage you would need to spend around 7 bucks to purchase a domain.  Next you would need a hosting plan that usually runs around 3-15 dollars per month to serve up your web pages.

What most don’t realize is that you can skip these steps all together…you don’t need to get dedicated hosting (this blog is hosted on dedicated hosting…but started out in my apartment!) to serve pages up to your friends and family.  You absolutely do not need to get domain name services through a provider.  You can even host your own webserver using a dialup connection (that’s right…I said dialup) although. I don’t recommend it (but I’ve done it using 56.6kbps).

Why would you want to do this?  The answer might be to stay connected to friends and family…perhaps install a gallery so that your grandparents can see pics of your new dog/car/tinfoil hat.  Sure, you could waste my time with MyWaste..er..space and facebook and be barraged daily by advertisers and solicitors and be inundated with the minutiae of what all your friends had to eat for the day …or you could roll your own web host, install a gallery or website, and provide media to your friends and family without costing yourself a dime.  That’s right, NO COST (except time spent getting it running).  Just remember, your website might not survive a digging or slashdotting if you run it yourself.  Keep that in mind :)  So without more chatter, let’s get to the meat and potatoes of things:

Meat and Potatoes

If you have Cable or DSL at home (not a business account) you have something called a dynamic connection.  Dynamic connection means that it can change every once in a while.  DSL and cable ISP’s purchase blocks of IP Addresses in the dynamic range so that they can keep consumers separate from businesses.  It’s also easier for them to manage dynamic pools of people than to have to remember static connections that don’t change for everyone.

Because of this problem…an ever changing connection for you at home…web servers and websites do not do very well.  The reason for this is because when you visit a website on a dynamic connection one day, it might be different the next day.  In order for visitors of a website to find you each and every single time, you need a “domain” or web name that points back to the address (IP Address) your internet service provider changes on a whim.  You’ll also need an update service to update your website each time your ISP decides to change things on you.

Believe it or not, there are free services out there to do that for you.  You just have to be willing to do a little extra work in the beginning to set things up.  You can also do this without spending 20-40 bucks a month on DNS service.

I’ll divide this up into 2 sections.  The first will deal with Linux hosting.  The second, Windows hosting.  This is only something that I’ve found easy to do and the price is just right (it’s free).  The only thing that I recommend is a dedicated internet connection (cable, DSL) but even this is not necessary as dialup can be used.  I recommend that you use the Linux way of doing things since it is more secure and doesn’t require a restart every time you patch it.

*note: I’m assuming that you aren’t behind a firewall/proxy of any kind and that your ISP doesn’t block port 80 traffic.  If your ISP blocks port 80, see the appendix at the end of this article.

LINUX

No matter what version of Linux you run, chances are that you’ll be able to install the apache webserver.  This is good news as over half the websites of the world are run by apache. I’m not going to address the specifics of how to set up your apache…only how to get it a fixed address without buying a domain.  So, you have your html or php pages located into your webservers public directory…good…whatever application you have is installed on your server.  Now, how to resolve your IP…lets say it is…25.24.4.166 (for our example) and you want it to have a host.name.com to bind to.  Easy to resolve.  Go to http://www.no-ip.com/index.php and sign up.  You can get a site from noip that is like yourname.theirdomain.com/.net/.info.  They have cool names like sytes.net and servebeer.org…even workisboring.com.  Other services like dyndns.org also exist and provide the free service as well.

You’ll be able to choose your own top level name…for instance, Ithink.dnsiskinky.com could be your new domain name.  Next download a client from the download tab: https://www.no-ip.com/downloads.php

The linux client is a tar.gz source and is simple to install. Follow the instructions when installing.  You may have to install compilation tools (devel packages like GCC) to install the client.  You now are the proud owner of yoursite.theirsite.com and your IP will ALWAYS update (as long as noip.com is up) each time you log on/sign on/beam up or whatever it is you do.

How does this help you?  Well, if you’re like me, you have a dynamic IP address.  If you connect to the internet via cable, dialup, or dsl…you also have a dynamic IP address.  Dynamic means that it will change from time to time without warning.  So by binding yoursite.theirsite.com to your IP address…you don’t ever have to worry about what IP address you have anymore.  Instead, you’ll always be able to connect using yoursite.theirsite.com.  You can host a webserver using Apache and a virtual host in this style as well (look for another how-to on this subject later) so that everyone can visit a shiny website at yoursite.theirsite.com.

Now you can give your friends/family/dog walker/mailman the address to your new webserver…maybe it’s Ithink.dnsiskinky.com like we used in the example above.  Now when they visit that address in their web browser, your application or web page displays for them.  You also get bragging rights at being the most technical friend/relative/dog walker client/household that everyone knows.  Now let’s cover Windows.

WINDOWS

First you need a free and clear webserver since one is not included by default with windows. You can download Apache for this as well OR try the Abyss Webserver.

Interestingly enough, Abyss is also free!  I ran it while my linux machine was being worked on (bad hard disk…it was a Quantum 200MB drive from 1913…had to upgrade) and it worked just great off of Windows XP.  Download that puppy and install it.  Make sure you read all of the documentation and familiarize yourself with how Abyss does business.

The next step…getting a hostname… is even easier than the linux method because you don’t have to manually install the noip client…they have a windows installer.  Go to http://www.no-ip.com/index.php and sign up.  Choose the domain name you would like (see above examples in Linux section).  Next, download the noip client from the download tab: https://www.no-ip.com/downloads.php but this time choose the windows client.  From there, you’ll be able to install this with a simple double click.  Fill in all of your information (pretty self explanatory) and make sure that it will run with each time you sign on.  You’re set! Your IP will now resolve to the yourchoice.theirhostname.com

CONCLUSION

You don’t have to spend a dime to keep a domain bound to your IP.  This is perfect for the home user who just wants a gallery or homepage.  It’s even good for someone who has a weblog or enthusiast site.  It’s good for someone who wants to be able to find their files and music…setup Jinzora and stream all your music library to yourself anywhere you are!  Setup Amahi and have access to all the goodness it brings.

Please remember, this wouldn’t be good for a business to have.  You will probably violate your ISP’s terms and conditions for using their connection if you tried to run a business this way.

It’s always good form to put a link of the stuff you are using on your website to direct traffic back to your software provider.  When I used noip, I included a noip link on my main page and also an abyss webserver icon as well.  It’s just good form and some companies/software providers necessitate the use of their logo or a link on sites that use their software/code.  Just be a nice person and give a link back to them.  Good luck! Have fun!

Also, please note that having hosted my own webserver for quite some time (circa 2001) I’ve found Linux and Apache as a combination to be more secure, faster, and more stable than any webserver I’ve hosted on the Windows Platform. I included information on Windows mainly to introduce you to the concept of free and open source software. If you thought getting a webserver for free was great, think about getting a whole operating system! Give it a try, you don’t even have to install it (use a Live CD).

APPENDIX

If your ISP blocks port 80 traffic, your webserver won’t work.  Before deciding that your ISP is blocking however, make sure your firewall has the appropriate rules to allow incoming traffic.  You can do a quick add to IPTABLES in the following manner:

iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -j DROP

If you’ve opened up the appropriate ports and things still don’t work, it will be safe to say that you’ve determined the ISP is blocking port 80.  How you can get around this conundrum is to switch the listening port on the webserver to a different one and redirect traffic there.

  1. See how to do this for IIS Webservers
  2. See how to do this for Apache Webservers (normally in /etc/apache2/httpd.conf but your distro may vary.)
  3. See how to do this for Abyss Webservers

If you still have problems, drop me a line in the comments section.  I may not be able to answer all questions but I can most likely get you to a person/place/thing that can.  Have fun and thanks for reading!

Host Your Own Domain and Webserver


This article is from 2006!  The information here may not be the most current.  You can visit an updated version here!

Doesn’t sound like anything new right?  Well, some people may not know of this method.

Normally, to host your own webpage you would need to spend around 7 bucks to purchase a domain.  Next you would need a hosting plan that usually runs around 3-15 dollars per month to serve up your web pages.

What most don’t realize is that you can skip these steps all together…you don’t need to get dedicated Windows or Linux Hosting (this blog is hosted on dedicated hosting…but started out in my apartment!) to serve pages up to your friends and family.  You absolutely do not need to get domain name services through a provider.  You can even host your own webserver using a dialup connection (that’s right…I said dialup) although. I don’t recommend it (but I’ve done it using 56.6kbps).

Why would you want to do this?  My reply…to stay connected to friends and family…perhaps throw up a gallery so that your grandparents can see pics of your new dog/car/tinfoil hat.  Sure, you could waste my time with MyWaste..er..space and be barraged daily by advertisers and solicitors…or you could roll your own web host, install a gallery or website, and provide media to your friends and family without costing yourself a dime.  That’s right, NO COST (except time spent getting it running).  Just remember, your website might not survive a digging or slashdotting if you run it yourself.  Keep that in mind :)  So without more chatter, let’s get to the meat and potatoes of things:

Do you cringe at the thought of buying a domain and putting up with the headache of trying to make sure your IP address is up to date with your domain?  Do you hate the 40 dollars you spend on DNS service each year to resolve your IP address to your hostname?  Read on and learn the the flat-broke-and-busted way of maintaining a fixed hostname for your IP…even if you have dialup.

I’ll divide this up into 2 sections.  The first will deal with Linux.  The second, Windows.  This is only something that I’ve found easy to do and the price is just right (it’s free).  The only thing that I recommend is a dedicated internet connection (cable, DSL) but even this is not necessary as dialup can be used.  I recommend that you use the Linux way of doing things since it is more secure and doesn’t require a restart every time you patch it.

*note: I’m assuming that you aren’t behind a firewall/proxy of any kind and that your ISP doesn’t block port 80 traffic.  If your ISP blocks port 80, see the appendix at the end of this article.

LINUX

No matter what version of Linux you run, chances are that you’ll be able to install the apache webserver.  This is good news as over half the websites of the world are run by the extremely efficient and speedy apache. I’m not going to address the specifics of how to set up your website…only how to get it a fixed address without buying a domain.  So, you have your pages dropped into your webservers public directory…good.  Now, how to resolve your IP…lets say it is…25.24.4.166 (for our example) and you want it to have a host.name.com to bind to.  Easy to resolve.  Go to http://www.no-ip.com/index.php and sign up.  You can get a site from noip that is like yourname.theirdomain.com/.net/.info.  They have cool names like sytes.net and servebeer.org…even workisboring.com

You’ll be able to choose your own top level name…for instance, Ithink.dnsiskinky.com could be your new domain name.  Next download a client from the download tab: https://www.no-ip.com/downloads.php

The linux client is a tar.gz source and is simple to install. Follow the instructions when installing.  You may have to install compilation tools (devel packages like GCC) to install the client.  You now are the proud owner of yoursite.theirsite.com and your IP will ALWAYS update (as long as noip.com is up) each time you log on/sign on/beam up or whatever it is you do.

How does this help you?  Well, if you’re like me, you have a dynamic IP address.  If you connect to the internet via cable, dialup, or dsl…you also have a dynamic IP address.  Dynamic means that it will change from time to time without warning.  So by binding yoursite.theirsite.com to your IP address…you don’t ever have to worry about what IP address you have anymore.  Instead, you’ll always be able to connect using yoursite.theirsite.com.  You can host a webserver using Apache and a virtual host (also known as a Virtual Private server or VPS Hosting) in this style as well (look for another how-to on this subject later) so that everyone can visit a shiny website at yoursite.theirsite.com.

Read more

Find Files & Directories Not Visible to Others for Webserver

I wanted a quick way to be able to find out what files weren’t visible to others (and therefore, not visible to website visitors).  Messing with arguments and the file command, you can do the following:

find -type f ! -perm -444

This locates all files not visible to ‘others’ in the current directory.  You can apply this to directories as well:

find -type d ! -perm -111

Hope this helps people like it helped me. :)

Brining Linux to Work – Portal Part 1

Beginning this month, I’ll be attempting to infuse my place of work with Linux. I am an new Applications Analyst and resident AIX/Linux expert for a government agency that lives and breaths Microsoft. I feel that Open Source software, mainly, Linux…can be a great addition to this agency. I’ll be documenting my attempts here while I go along. If you have tips, tricks, solutions, advice or supportive comments…please respond in kind.


You’ve Got to Start Somewhere…

Recently, I’ve been investigating portal applications (CMS portals) for an intranet server at work. The portal will act as a document repository and project status report tool. It needs to plug into the framework we have in place currently…which is a Windows 2000 Active Directory environment. Instead of powering this with IIS or WinXp with Apache…I’ve elected to go with Linux and Apache. However, I didn’t really investigate much to figure out if this would be a possibility. Problems were rampant and still are. Allow me to explain.

I’ve been given the requirements that any intranet page must be single sign on, meaning that when a user visits the page, they don’t have to login…they’re simply there and logged in already. This can be done using the apache ntlm module. I can also pass this parameter using Tomcat and JOSS with php. However, the ntlm module won’t compile on Ubuntu or SuSe and hence won’t install. So, that took away my top two choices for Linux distros (not to mention, caused me to waste 2 days of time). JOSS requires that I write and plugin my own php script which is something I don’t want to do currently. So I’m back at square one. I’ve changed direction and am instaling CentOS 4 currently…we’ll see where that takes me. I’ve had more luck with CentOS as a server (my server at home has around 120 days for uptime currently and runs CentOS at its core).

Read more