Advice On A New-School Old-School BBS
An anonymous reader asks I am thinking about setting up a local "community" network over WiFi minus internet connection. In other words, I would like to run a small server isolated from the web as an experiment in small scale networks (e.g., serving a café-heavy one-block radius.)
I have plenty of clever ideas -- discussion/gripe boards, weird artistic projects -- anything to bring back the old-school BBS memories where online users were drawn from a single geographic location. But everything I've learned so far is how to act as a small node on someone else's network. How can I make my own -- and make it wireless?
Google doesn't pull much up that I can find: it is mostly targeted towards those building a (free or profit) Internet access point." (Read on for more.)
" Does anybody have sources of information for how to learn about setting up the network I have in mind? Basic tutorials and those covering more advanced issues such as security would be very helpful. Finally, is there anyone out there with real world experience? Beyond imparting technical help, do you have suggestions for implementation? What worked, and what didn't? Did the lack of internet access make the project unpopular? (And if you did provide internet access as a teaser, how did you handle liability and financial issues?)"
(This reminds me of the Community Memory Project; can anyone point to some modern equivalents?)
The tech side to this is relatively simple. What you're going to want to do is to basically create your own IP-based network that isn't the Internet... that means your WiFi should have a DHCP server that hands out 10.x.x.x (unroutable) addresses to anybody who wants to get one to get them on board...
.com, .net, .org and for that matter any "real" web request to a "Hello World!" webserver that explains that your WiFi link isn't offering a connection to the Internet, instead it's a one-of-a-kind location that's offering...
Once there, your DNS universe is gonna be a bit funny. You should map all
From there, you just assign your own server names to whatever have to offer, and serve it using standard Internet technologies for web content.
I think your problem is that you're not searching on the right term on Google. What you want to do is called an "intranet"... and it's really nothing more than setting up Internet-designed IP-based stuff and forgetting to add the link to the outside world.
Now, how you're gonna promote such a thing... well, that's up to you.
I don't quite think it will fly.
I has bbs at the time, when internet was quite expensive back home, and it was doing ok mainly because lack of option.
Today, www is hugee, you don't have to restrict to a single area, you aren't limited to, with things like slashdot, disney, news, streaming and p2p, you have highly specialized and good services for free *discreet cough* .
On the other hand, if it's strictly intranet, restricting outside access AT ALL, it might turn out as an interesting experiment. Do tell us how it will grow (if it grows at all).
You're gonna want to redirect all web requests to your BBS web page. The thing that people naturally do when they connect to a hot spot is to try to surf. If they get redirected, they'll see what your hot spot is for. You might also support various file sharing protocols with one visible machine. On that machine have one visible file that says README with instructions on how to surf to the BBS.
WiFi can travel pretty far when done properly... which would involve an omnidirectional transmitter/antenna setup mounted high and broadcasting at the max power allowed by FCC rules. Most consumer devices are designed to only transmit at 1/10th the FCC limit out of the box, so anybody rigging such a setup should look for more professional-grade equipment.
Besides, in a rather densly populated city, you could hit several large appartment structures within the range.
shoulda hit preview! here's the links in question:
wi-fi box - a true free replacement WRT54G firmware
how to get banned from using sveasoft's firmware
Of course if you wanted to be more old-school you could set up a public-access *NIX login, or even run an old-school BBS type deal via telnet. It would still be a good idea to route people to a website explaining how to get in. For that check out here and here, and here
here's some ideas and software to make it work.
First, for wireless connection management you can use the nocat wireless portal system (requires linux). That will allow you to advertise a wireless AP and have the users automatically redirected to your community site.
For the actual site, I recommend phpnuke,postnuke or any of the content management software. They have lots of features hat will allow old style bbs functions like forums, gallery, pictures, files, etc. There are also modules that will do more.
With nocat you have the option of adding an internet connection in the future. I suggest talking to a local cafe shop, they may already have an internet connection and may be interested in a project that attracts the surrounding community.
Did you even bother with Google?
Amateur (ham) packet radio networks have been doing exactly this since the early 1980s. They are designed to be independant of the Internet.
Check out TAPR for more information on that.
Also, check out the Guerrilla Net project by former L0pht members, which uses more modern hardware.
You need to be careful if you're not providing outside access. First, you will still need to protect users against infections (just for liability, even though you didn't infect them and they should've protected themselves). It's as likely an infected Windows node will come inside your LAN as one would have found your network had it been on the Internet. And a malicious user could easily enter your network and begin attacking hosts.
Preferably (if possible, this is theory), assign 10.n.x.2 addresses, with your router responding to 10.n.anything.1. Let n be constant for your network, but x be the number assigned to each user. Give a subnet mask of 255.255.255.0. Thus you cannot reach another node without asking the router, who will of course deny; if you're blocking outside access, it should refuse to serve anything to 10.n.x.2 but 10.n.x.1. (If the request is on port 80, of course, explain the lack of outside access.)
Second, when outside Internet access through wireless covers your area, you either need to (possibly negotiate with the provider to) provide access yourself, talk to the provider about making yourself just a node on his nettwork, or provide clear instructions on how to switch from your BBS to the other provider. (It should be just a matter of changing the channel.)
If you have $$ to spend on this, Worldgroup (aka The Major BBS) is still sold and supported by Galacticomm, Inc. (now owned by netVillage.com). Its more or less a one stop shop, including things like:
Local & Internet E-mail
Chat Rooms with shared White Boards
Shared File Libraries
Threaded Discussion Forums
Customizable Surveys
IRC Client
FTP, Telnet, Finger, POP3, SMTP, NNTP
WorldLink
Built-in Web Server
Huge library of add on software
If you don't have money to spend, try Synchronet. Features are simmilar, though not nearly as mature:
Local & Internet E-mail
Chat Rooms with shared White Boards
Shared File Libraries
Threaded Discussion Forums
Built in support for Fido, RIME and QWK!
IRC Client
FTP, Telnet, Finger, POP3, SMTP, NNTP
Built-in Web Server in development
Supports door games
Open Source!!!
Good luck!
Here's an idea -- set your system up as you normally would for acccessing the Internet, but simply setup your site such that posting and other interactive services are only accessable from within the local subnet.
That is, if you have a (for example) /. like website, limit posting only to those people with IPs in your local subnet (ie: 10.x.x.x). People in the outside world will be able to read the posts, but you need to be inside the wireless range in order to be able to post.
The big benifit of doing this is that frequent users will be able to keep up with discussions and such from home -- but if they want to contribute, they'll need to be within wireless range.
Yaz.
This software provides an "Active Portal" which basically means any web traffic is redirected from wherever it was supposed to go to some specified machine.
Its not a difficult thing to do manually either with iptables. (from memory its something like: iptables -T nat -I prerouting -P tcp -dport 80 -d ! localnet -j DNAT --dest localbox). Just make sure you have a DNS server running that sends all requests back to your IP or else their browser will give them an error.
From there, you just set up and run apache on 'localbox' and you're off!
Shouldn't be difficult to set up a local network, DHCP giving out non-routable addresses with gateway which points to your machine. Use iptables-based prerouting (or whatever your favorite firewall flavor is) to reroute all internet requests to your own server. You could run a second apache vhost on a different port, then configure the 404 error page to be the same as the index page. Set this to a general explanation of what this ssid is and what it can be used for, as well as a link to the real website. I suggest some kind of real-time java chat, in addition to the usual message boards. Would be cool to see who is in the area, introduce yourself, a way to break the ice before meeting. You could do all this with a single low-end box on the cheap. If you wanted to offer net access at the same time, configure the system as a proxy server (squid?) and have instructions for the common browsers on the intro page mentioned above. While users have to reconfigure slightly to use your site, they'll still have access and can check POP mail, etc. Otherwise they'll just favor any other access points in the area over yours.
It seems like a flashed Linksys access point could be turned into a (limited memory, but them's the breaks) BBS system ... probably would far exceed the original Community Memory Project's, pardon me, "memory." Now, a smart thing for some access point maker to add is a flash reader, or a USB port for a thumbdrive. (And probably, hopefully, someone will point to a perfect Soekris board ... however, those aren't available for $60 ... )
timothy
jrnl: http://tinyurl.com/c2l8yr / foes: http://tinyurl.com/ckjno5
Oh, and if you want any of that old BBS software, it's still out there! A company named Metropolis now (unfortunately) owns the licenses for the classic game "Legend of the Red Dragon", so you'll have to buy it from them and not Seth Able. Most of the other ones have gone the way of abandonware... I tried to contact the authors of Usurper, Exitilus and so on... and none of them seem to have internet presence anymore. And if you were a Tradewars fan, it not only still exists but at one point they were going to make a new age MMORPG out of it!
-Vendal Thornheart
This is a freeware program, and one of the most robust BBS systems ever... particularily since it's one of the only ones still being developed. The guy who makes it is a really nice fellow too... I'd check it out. It supports making Telnet BBSs with up to (I believe) 255 virtual nodes, and it works perfectly with LORD, Usurper, etc... In fact, not too long ago I ran a BBS at my college. Those were good times... memories... =)
-Vendal Thornheart
Think router. You are basically going to setup a Wireless Access Point bridged and open and with a linux box handling all the low level routing.
I actually spec'd some of this for a new ISP startup. While I grant I never set it up (they were having money woes and other issues) I've worked for 3 ISPs so I think this is good advice, but like all advice... well.. it's freely given so here we go with no guarantees.
When these WiFi computers hook in they are going to look for a DHCP address. So you'll need a DHCP server. That DHCP server *SHOULD* give them DNS information. So you'll need a DNS server. That DHCP Server will also give them a gateway which will be your linux box.
I'd recommend giving them IP address with 255.255.255.255 as the subnet (I believe this is possible) and in that way all traffic will route through the Linux Box. (You could also tighten this down even more by just installing a WiFi card in the Linux box and have *IT* be the WiFi Router). What you are after is that they can't/won't route to each other, but only to your Linux box.
Once you have that in place you start work work on the routing table. This is where I'll wax vague. Linux has the ability to handle Layer 4 router. You can route every request for port 80 traffic to a specific IP address. Anywhere they go they will get your BBS Webserver, whatever that happens to be.
Cable ISPs use the same thing. When you turn a box up on their network with a new MAC every attempt to port 80 gets routed to a web server you have to register with and then when you enter a valid username/password through their web page then it gets added into a routing table that lets you pass.
I don't mean to make it sound easy, you are going to have some testing to do but that's most of it. The devils in the details. But I'd recommend doing most of your work in the routing table of Linux system. You don't want those WiFi users talking to each other at the IP level (or lower for those OSI model folks at there). They should only being able to talk to your Linux Router and that's it!
Once your linux box has all the traffic you can route anything anywhere. Could even get fancy. Any attempt route a particular protocol gets fed back into your BBS. They want a MP3 over port 80? Feed them a soundbite. They want a WMA file over port 80? Feed them your own doctored version. (Though that would probably done with the help of a specially written web server. Perhaps perl or Regex to match http requests and file names to a list of substitutes... ;-)
Sounds fun!!!
Best wishes from an old BBS'er....
"Don't fear death... fear not living..." -me