A PHOTO

Why I won’t buy a Retina Macbook Pro just yet…

With Apple announcing the new High Definition screen Retina Macbook Pro and being the Fanboy I am…

View Post

shared via WordPress.com

A PHOTO

So whats new at WWDC from Apple?

While the UK got to grips with a less and average England team in the Euro2012 finals there were announcements from Apple which were more interesting..

View Post

shared via WordPress.com

A TEXT POST

18 Ridiculously Huge Things That Apple is Worth More Than

Apple money

Apple stock surpassed $400 a share again last Friday, bringing their market cap to $371.30 billion. That $371,300,000,000 is worth more than each of the following things:

  • All 32 Eurozone Banks
  • The Entire Economy of Singapore
  • All of the Illegal Drugs in the World
  • Total U.S. Corporate Income Tax for 2011
  • The GDP of Denmark
  • The Great Wall of China (priced at $0.52 a brick)
  • The Star Wars, Star Trek, Harry Potter, Stephen King, and Twilight Franchises – combined, plus another $300 billion
  • All of the Farm Land in Iowa & South Dakota, at $4200 per acre
  • The Total Endowments of the USA’s 13 Richest Universities and University Systems
  • 45 days of global oil consumption
  • The Cost of America’s Obesity Epidemic
  • Every home in Detroit and Tampa combined
  • The big three drug makers; Novartis, Sanofi-Aventis, and Pfizer, combined
  • Every home in Atlanta
  • 10 times the total paid in federal child support in the U.S. last year
  • The five largest ETFs (exchange-traded funds)
  • 10 years of Silver Production
  • The GDP of Israel, Syria, Jordan and Lebanon – combined

A TEXT POST

Setting up your own OSX Lion Server, using your own tools..

With OSX Lion, Apple have substantially reduced the cost of their Lion server, and with the cheap price tag are aiming to get the server into the Small/Home office. However despite the slashed price tag, this most recent incarnation is substandard to say the least. Ive been using the Snow Leopard Server and that wasn’t without its challenges to setup but did work. The lion out of the box experience is lacking in many areas to say the least, specifically with what it doesn’t allow you to do. Its GUI Apple type interface is nice and seems simple enough, however turn on Webserver and you’ll be created with a message telling you the site is forbidden to access. Its fixable, via the terminal.

With the issues i had setting up the Apple Server software (and i manage 20+ High perforce Servers with Ldap, Video Conferencing, Tomcat, Web Tools and much more daily) It struck me, i could do what Apple are doing better myself..

The Features i’m looking for are:

  • Webserver
  • Mail Server
  • Wiki
  • Chat Server
  • iCal Server
  • Music Streaming
  • Video Streaming
  • OpenLDAP Integration

And i’ve also have some additional requirements for each of these as well, such as multiple domain supports for web server and email servers.. So How Did i do? and what was the cost?

Webserver


Requirements

A web server which is easy to setup, and has access to MySQL and PHP as a minimum requirement.

Software: XAMPP - http://www.apachefriends.org/en/xampp-macosx.html

Price: FREE

Instructions

To install XAMPP just do the following:

Open the DMG-Image.

Drag’n’Drop the XAMPP folder into your Applications folder.

Notice: all old installations of XAMPP for MacOS X will be overwritten!

That’s all. XAMPP is now installed below the /Applications/XAMPP directory.

To start XAMPP simply open XAMPP Control and start Apache, MySQL and ProFTPD.

OK, that was easy but how can you check that everything really works? Just type in the following URL at your favourite web browser:

http://localhost

Now you should see the start page of XAMPP containing some links to check the status of the installed software and some small programming examples.

What Next?

As you will have seen from the webpage XAMPP makes use of the darlings of the Open Source community Apache and MySQL, however unlike installing this natively on the mac, maybe through MacPorts, the files you are working with are all located in the /Applications/XAMPP folder, this has both pros and cons, with the later being many sets of instructions on how to do things using apache usually figure that you are looking for config files in native locations. on the plus side its just a case of uploading a new XAMPP file to upgrade the entire LAMPP stack.

XAMPP is not meant for production use but only for developers in a development environment. The way XAMPP is configured is to be as open as possible and allowing the developer anything he/she wants. For development environments this is great but in a production environment it could be fatal. Well thats a bit extreme, it just means you have to lock a few things down, ilke adding and configuring the following

  • The MySQL administrator (root) has no password. - Can change this via the http://localhost/phpmyadmin page
  • The MySQL daemon is accessible via network. - Lock your home network down
  • ProFTPD uses the password “xampp” for user “nobody”. - Don’t use FTP anyway, use SSH and SFTP
  • PhpMyAdmin is accessible via network. - Actually, its not any more, the default config locks it out
  • MySQL and Apache running under the same user (nobody).  - I believe this is no no longer an issue either.

To fix most of the security weaknesses simply call the following command:

/Applications/XAMPP/xamppfiles/xampp security

It starts a small security check and makes your XAMPP installation more secure.

Once you have the security resolved, you’ll be wanting to do a few things, the first think i needed to setup were Virtual Domains, that is a domain for each of the domain name’s i want to host on the box, and Apache Will happily allow you to do this. For example you could using DynDNS host siteA.com and siteB.net both on this server on the same IP. DynDNS allows you to do this without the need for a static IP address pointing to your server.

Setting up Virtual Hosts on XAMPP on OSX

The Apache virtual server does not come enabled by default, so a little setup is needed.

src: http://www.andrewault.net/2010/04/05/xampp-on-mac-osx-with-virtual-hosts/

Folder for virtual websites

Create the folder “www” in your home directory, this example is in Terminal:

view sourceprint? 1.cd ~ 2.mkdir www

This is the folder where you will place each of the virtual site directories. You could just as well put this somewhere else, but a “www” directory here makes sense to me.

httpd.conf

Add the following to /Applications/XAMPP/etc/httpd.conf

view sourceprint? 1.<Directory "/Users/yourusername/www"> 2.Options Indexes FollowSymLinks ExecCGI Includes 3.AllowOverride All 4.Order allow,deny 5.Allow from all 6.</Directory>

In the above you will need to substitute your username for “yourusername”. This simply sets some Apache settings for the folder where your virtual sites will be.

In this same file find:

view sourceprint? 1.# Virtual hosts 2.#Include /Applications/XAMPP/etc/extra/httpd-vhosts.conf

…and un-rem out the Include line. This enables virtual hosting. Yay!

http-vhosts.conf

For each website, add a code block to /Applications/XAMPP/etc/extra/http-vhosts.conf

view sourceprint? 1.<VirtualHost *:80> 2.DocumentRoot "/Users/yourusername/www/www.yourwebsitename.dev/public" 3.ServerName yourwebsitename.dev 4.ServerAlias www.yourwebsitename.dev 5.ErrorLog "/Users/yourusername/www/www.yourwebsitename.dev/logs/error_log" 6.CustomLog "/Users/yourusername/www/www.yourwebsitename.dev/logs/combined.log" common 7.</VirtualHost>

In the above, just follow the same pattern I’ve shown for this example site. Don’t vary from this unless you want to do some research and testing. You can see I place a “public” folder insite the top directory for a particular virtual site – put your web documents to serve here.

hosts file

Edit your /etc/hosts file to add “www.yourwebsitename.dev” (your version of this) to a line starting with “127.0.0.1″ like this:

view sourceprint? 1.127.0.0.1     www.yourwebsitename.dev

Restart Apache

Using the XAMPP control stop and re-start Apache. And it will fail, nothing you’ve done wrong, it will fail because the folders you are pointing to for each of the directories don’t exist yet.

You will need to create

mkdir -p /Users/yourusername/www/www.yourwebsitename.dev/public

mkdir -p /Users/yourusername/www/www.yourwebsitename.dev/logs

Substituting the www.yourwebsitename.dev with chosen URL names

Once you’ve done that you’ll need to change the ownership

chown -R /Users/yourusername/www

Now you can restart Apache

Additional XAMPP Resources:

Mail Server


Getting a free mail server while not impossible, is hard work, OSX actually has the tools built in to be a mail server (Its BSD Underpinnings) however requires some serious reading to get it setup.  With this in mind, this is the only app i Paid for, I’ve used Mailserv before prior to using OSX Snow Leopard Server, and i’d happily recommend it again. Its site is well written instructions and the application is simple enough to get working.

Requirements

An iMAP and SMTP server using secure SSL Certificates and secure passwords with a GUI setup.

Software: Cuteedge Mailserv -

Price: £15.00

Installation Instructions

Step 1—Sending Mail to other Mail Servers, using the Outgoing Panel

Mail servers talk to each other via SMTP. There’s an SMTP server, Postfix, built into every Leopard machine. But it needs to be turned on. So, start at this point—at MailServe’s Outgoing panel—to turn on that SMTP server. Once it’s on, you can use it to send mail to other mail servers, as well as from things like PHP scripts, running on your server.

The Outgoing Panel

MailServe’s Outgoing Mail Setup Panel can be reached via the first (extreme left) button on its Toolbar, below.
Then, look for the Postfix button, at the opposite end (extreme right) of the Toolbar.

Click on the Start Postfix button.

The SMTP port status indicator at the bottom-left of the window will turn ember  for a while and then green . And the Postfix button label will show “Restart Postfix”. This will be your cue that the SMTP server is now active and ready for use. (See the picture below).

It’s that easy. Your Mac is now ready to send mail as a fully-functioning smtp server.

With the Postfix SMTP server now active, you should be able to send mail from a mail client like Mail.app running your server machine, as well as any PHP or command-line scripts.

There are a couple of cases where this is not enough and you would have to take the additional step of setting up a Smart Host.

One is where you’re on a network whose ISP blocks port 25, thus preventing your server from sending out any mail—unless the mail is routed first through the ISP’s designated SMTP server, using it as a Smart Host.

The other is if your server is on a dynamically assigned public IP address and you’re finding a lot of your outgoing mail being returned as spam—this is because some mail server admins assume that all mail coming from a dynamic IP address are spam (which is a rather simplistic assumption but never mind).

In either of these cases, the problem can be solved by routing your server’s outgoing mail through a Smart Host. Please read the “Setting up a Smart Host” section below.

Sending mail from Mail.app, running on the server machine

This is how you set up Mail’s Account Preferences, running on your server machine, to send mail out the local SMTP server that you had just enabled.

The Incoming Mail Server is any POP or IMAP server that I currently use. The important setting is for the Outgoing Mail Server (SMTP), below, which I’ve set to “localhost”, localhost being the correct technical term for the local server.


This is how I’ve set up “localhost” and associate it with the, e.g., “bernard@cutedgesystems.com” account.

So, if I create a new message in Mail and send it to my intended destination using the “bernard@cutedgesystems.com” account, I would be effectively sending it out that local Postfix SMTP server that I had just enabled.

If my ISP doesn’t block port 25, and if the destination mail server is not running any spam filter that blocks mail from dynamic IP addresses, then my message would reach its destination.

If not, I’ll need to set up a Smart Host (see further below).

Sending mail from a PHP script running on your server

To make this work for PHP, you need to fill in the Masquerade As field with the domain name that you want to make the mail look like its coming from. In my case, I would fill it with “cutedgesystems.com”. (Don’t forget to do a Restart Postfix.)

Then I would create a PHP script like this, which uses the PHP mail() command, assuming I’m sending to a destination address at mac.com :

<?php
$recipient = "bernardteo@mac.com";
$subject = "PHP Mail";
$body = "Test message body";

$from = "bernard@cutedgesystems.com";

$headers = "From: $from" . "\r\n" . "Reply-To: $from" . "\r\n" . "X-Mailer: PHP/" . phpversion();

$additional_parameters = "-r $from";

$send = mail($recipient, $subject, $body, $headers, $additional_parameters);

echo $send;
?>

Place this script anywhere on your server and run it by typing the script’s URL from a browser. If all goes well, you’ll see the message appear at your destination. Otherwise, you may need to set up a Smart Host.

Setting up a Smart Host

This is how you set up a Smart Host. First, check with your Internet provider and ask them for an SMTP server you can use as a Smart Host. Ask if you need to authenticate with it, the user name and password you should use, and whether it requires the connection to be made over SSL, or via a port other than port 25.

Enter all these parameters into the MailServe interface, as shown below.

Note : if the Smart Host needs to be contacted on a port other than 25, add the port number after the Smart Host name, after a colon. Like this : mail.singnet.com.sg:587

If you prefer not to ask your ISP, then the parameters you should use are probably those you would enter into a Mail client like Mail.app, if you were to use your ISP’s designated outgoing SMTP server as the Outgoing Mail Server in Mail’s account preferences.

But do note this : some ISP network admins have set up their SMTP server to, specifically, refuse to relay for mail coming from another mail server, as opposed to a normal mail client. So it’s often important to check. Some ISPs may simply unblock port 25 for you, if you would just ask.

If you need to keep a list of Smart Hosts, for when you are on different networks or locations, store them in MailServe’s Smart Host list. You can pick them up in the popup menu when you’re setting the Smart Host.

Step 2—Receiving Mail from other Mail Servers

The Postfix SMTP server will also receive mail from other servers. But you need to first tell Postfix which domains to receive mail for. You set this up using the Mail Server panel, which also allows you to set up Postfix so it will relay mail for other machines on your network, as well as for remote machines which authenticate.

The Mail Server Panel

If your server has a domain name, and is reachable via its domain name by other mail servers on the Internet, then, so long as the Postfix SMTP server is running, it is already able to receive mail sent by these other servers.

All you need to do is to tell Postfix which domain it is supposed to receive mail for. You enter the domain name into MailServe’s Domain Name field, as shown below, and Restart Postfix to make the setting “stick”.


Viewing the stored mail—using a POP3 or IMAP server

The Postfix SMTP server does the job of talking to other mail servers, sending mail to and receiving mail from these other servers. All incoming mail is stored in an Inbox—one for each mail user on the server.

The job of providing a view into these stored mail for every mail user is done by Dovecot, which provides both a POP3 and an IMAP server, and which you can turn on at the Dovecot panel. (IMAP is recommended because it provides the user with a user-definable folder/sub-folder structure).

If you turn on POP3 and IMAP on Dovecot (ignoring their SSL variants for the moment), the Port Status lights on MailServer should look like that below :


Setting up Mail.app—on the server machine, as well as on client machines on the local network

We assume that Postfix is running and the POP3 or IMAP server is also running, and the server is reachable via its domain name from Mail.app running on the server machine, as well as from any client machine on the local network.

Assume that the domain name is “cutedgesystems.com” and the mail user’s account name is “bernard” (which is the OS X short name as created using the Accounts Pane in System Preferences).

Finally, assume also that the “Relay Mail from” parameter in MailServe is left at its default state, i.e., the server is set to relay mail from all machines on the local network. Machines outside the network are blocked from sending mail.

This is how you would set up Mail.app on the server machine, as well as on any client machine on the local neiwork, assuming we are accessing the IMAP server as the Incoming Mail Server (the user name and password are the same as was created for an OS X user account on the server) :

Since the server, in this case, is set to relay mail from all machines on the local network, no authentication is required when we’re setting up the Outgoing Mail Server.

At this point, you can test that you can send and receive mail from a mail client running on every machine on your local network, including the server.

Setting up Mail.app—a general setup that will work for all client machines, either inside or outside the local network

The previous setup was useful for testing that the basic, most important, functionality of the mail server is working properly.

A more useful setup is shown below. It’ll work for all machines, inside or outside the network, so you won’t have to change settings on a MacBook, say, when it moves from one network to another.

This involves turning on SMTP Authentication in MailServe, so that the server will authenticate every mail client who seeks to relay mail through the server, both inside and outside the local network (with the exception of processes running on the server machine itself), like PHP scripts :

Use the OS X built-in user accounts method, where every OS X user account you create on the server machine is also a mail user who can send and receive mail.

The user name and password combination you need to set in the mail client corresponds to the OS X user account short name and password you set using the Accounts panel in System Preferences.

The OS X built-in user accounts method, together with SSL (which we will cover later) constitute a safe, simple, and effective mechanism for implementing security for the mail server.

This is how the Outgoing Mail Server is set up in Mail.app to correspond to turning on SMTP Authentication for the Postfix mail server. Note that the authentication method must be “Password” and not Kerberos, etc. :


SMTP Authentication via SASLDB

There is an alternative method for setting up SMTP Auhentication—using a mechanism called SASL and an SASLDB database to store the username:password combinations.

The situation in which this may be useful is when you’re not running a full-fledged mail server with POP3 and IMAP services, but only for the outgoing SMTP services, in which case you can avoid creating OS X user accounts but just use a userID:password list.

This is how this is set up in MailServe:

SASLDB uses the MD5 Challenge-Response authentication mechanism and you need to set this in the Outgoing Mail Server setup in Mail.app :

But, if you need to receive mail for your users, and especially if you need somewhere to store all your users’ IMAP folders on the server, you’re better off using SMTP authentication via the built-in OS X accounts method because you’ll have just one password mechanism to deal with. This is secure enough when used in conjunction with SSL.

Turning on SSL

At this point, you have a safe and fully functioning mail server that relays for all legitimate, authenticated users but is secured against spammers.

You can improve its security by turning on SSL and encrypting the message streams between server and client, both for sending and receiving mail.

MailServe helps you create a test SSL certificate so you can turn on SSL mode for the server. Edit the SSL parameters in the MailServe interface to fit your needs (but keep to two characters wherever I’ve used two characters in the sample data entry fields). Then click on the “Create a Test Cert” button :

The MailServe interface will show that SSL is available for SMTP and you can turn it on by clicking on “Enable SSL over SMTP”, as shown above. You can even require that SSL be turned on in the mail client.

This is how you set up the client to offer to negotiate the SMTP connection over SSL (click on the “Use Secure Sockets Layer (SSL)” button) :

With the SSL cert created by MailServe, you can even turn on SSL for IMAP and POP3, as shown for the case of IMAP, below :

MailServe create these SSL certs in /System/Library/OpenSSL/. The cert is in the certs folder and the private key can be found in the private folder.

You can replace the test cert with a “real” cert that you buy from a Certification Authority (CA). MailServe includes a streamlined interface that can help you request for a cert from a Cert Authority and then help you pair the returned cert with its original private key (that was created at the cert request stage).

You access this facility by clicking the “Use a Real Cert” button and this what you will see, a 4-stage process to acquire an authentic certificate from a Cert Authority:

You can also use this panel to save a pre-existing cert for use by your mail server (and your web server if you useWebMon to set up the web services). Just drag the certificate and key portions (either from text files on the Finder or text blocks copied from another application or the web browser) and place them into their respective fields. Then hit the Save Cert button.

New in MailServe for Lion : the user interface now allows you to insert an Intermediate CA cert, if that is required by your Certification Authority.

When you close the cert management dialog box, MailServe will be able to detect that a “real” cert is available for use and so allow you to turn on the SSL-related controls.


Using the Other Features of the Mail Server Panel

Additional Domain Names

If your server hosts more than one domain, you can list the additional domains in this field (separated by commas, e.g., lifeassets.com, roadstead.com) so that Postfix knows that it has to accept messages sent to these domains.

Make sure that these domain names work first and that they’re also pointing correctly to your server machine.

There is no separation between users into particular domains. For example, on my server, mail for bernard@cutedgesystems.com and mail for bernard@roadstead.com will both reach me in my single mail box on the server, under the user name bernard.

To get mail for sales@cutedgesystems.com and sales@roadstead.com sent to two different mail boxes, you need to set up Virtual Domains.

Virtual Domains

Ordinarily, even if you receive mail for two domains - domainA.com and domainB.com - sales@domainA.com will use the same mailbox as sales@domainB.com. But, using the Virtual Domains field, you can make things work a bit differently.

You need to create two separate user accounts on the server first, say, brendan and beekhim, respectively. Then make sure that the two domains, domainA.com and domainB.com, are listed in the Virtual Domains field. Then you can use the Virtual Domains Alias Mappings field to point sales@domainA.com to brendan’s mailbox and sales@domainB.com to beekhim’s mailbox, as shown below :

Note that you can also add an entry for sales for the primary domain (i.e., sales@cutedgesystems.com, above) and point it to another mailbox (i.e. user account) on the server.

This is how you manage the sales@domainB.com account using Mail.app :

The messages for sales@domainB.com will go to the mailbox of the real user, beekhim, on the server.

Alternate SMTP Port Numbers

This allows the server administrator to open more ports (beside port 25) for mail clients to contact it. For example, it may be useful to add port 2525 (and also 52525, separated by a comma). This way, if your users happen to be on a network that blocks outgoing mail from using port 25, your users would still be able to relay mail out your server by switching their mail clients to use either port 2525 or 52525.

You can also use this field to open more ports for other mail servers to contact your server, to deliver mail to it. For example, you may be attempting to set up a mail server on a network whose ISP blocks incoming port 25. This way, no other mail servers will be able to deliver mail to your server. There is a way around this, that people using DynDNS.org’s MailHop feature (for example) have expoited. But you need to open an alternate port that MailHop can use to contact your server (check the dyndns.org example). Set this port number in MailServe’s Alternate SMTP Port Numbers field.

The Access Field

The Access field can be used to blacklist individual mail senders from sending mail to your site, or even entire domains.

spammer@yahoo.com REJECT
spamUnlimited.com REJECT

It can also be used to stop mail from reaching a particular user account on your system, e.g., for a user that has since left the company :

brendan@ REJECT

Imagine that Brendan has left the company but he was subscribing to lots of mailing lists. The above setting in the Access field will bounce all mail for brendan back to the sender. Note : use brendan@ as a wild card setting, if you’re receiving mail for more than one domain. If you want to specify that you want to block Brendan’s mail for just one specific domain, use brendan@cutedgesystems.com REJECT.

The Aliases Field

Some required entries for Aliases are already created for you. Each site needs to have a Postmaster and a Root user so that other ISPs and you own system processes can contact a responsible person when they find problems with your system. MAILER-DAEMON is the conventional name attached to bounced messages. When senders find that their messages have bounced, they may need to contact someone for clarification. Their replies to their bounced messages will go to MAILER-DAEMON, so you need someone to pick these up.

The first line in the example, below, shows that you can create e-mail groups quickly by entering a group name on the left-hand side of an Alias entry, and entering a series of user names, separated by commas, on the right-hand side, which can include users from other domains.

nightrunner: haihwee,beekhim,brendan@sky.com
postmaster: bernard
root: bernard
MAILER-DAEMON: bernard
mailist: :include:/full/path/name/to/mailinglist.txt

The last line in the example, above, shows another way of creating e-mail groups - by pointing the mail server to a file that contains a list of e-mail addresses, with one address on each line.

You can also send all mail destined for a specific user into the black hole :

baduser: /dev/null

The Custom Postfix Settings field

This is meant to allow experienced Postfix users to add their own modifications to the Postfix configuration that have not been taken care of by the MailServe user interface. These will not be over-written when you do a Restart Postfix.


Step 3—Setting up POP3 and/or IMAP Servers using Dovecot

Once Mail has been delivered to the Postfix server, you need to have a mechanism whereby mail clients like Mail, Entourage or Thunderbird can access the stored mail. This service is provided by POP3 and IMAP server called Dovecot, not Postfix. IMAP servers have an additional functionality over POP3 servers—they allow the user to organise the messages into a folder/subfolder structure.

The Dovecot Panel

Choose whether you want the Dovecot POP3 or IMAP or both servers to be turned on. Additionally, you can set custom port numbers but, for the start, leave them at the default values. Click the Start Dovecot button.

The POP3 and IMAP port status indicator lights will come on if the respective service has been successfully turned on. If you need to change the configuration later on, remember to click on the “Restart Dovecot” button to make it stick.

Finally, there is a Custom Dovecot Settings field you can use to enter additional Dovecot paremeters on top of the ones set by MailServe.


Step 4—Setting up Fetchmail

Fetchmail is useful for people who have many other POP or IMAP servers that they read mail from. Fetchmail can be set up to check these other POP or IMAP servers periodically and download all that mail, consolidating them into one single mailbox on the local server. [Details]

Step 5—Spam Filtering & Mail User Accounts Management

The Spam Panel includes controls for managing spam and setting up user accounts. MailServe uses procmail to integrate Postfix with Dovecot and SpamBayes to implement spam filtering. The mail administrator can set up custom procmail directives to be processed before or after spam processing. [Details]

Wiki


Requirements

A basic Wiki Site for storing data and files

Software: MediaWiki - http://www.mediawiki.org

Price: Free

Instructions

For experienced users, here is the quick version of the installation instructions. Most users will want to read the more detailed version, below.

  1. Check that your system meets the minimum requirements (web server, PHP5 (do not use 5.3.1; 5.3.2+ is OK, 5.3.3 is released), and either MySQL4 (and later) or PostgreSQL 8.1 (and later)).
  2. Download MediaWiki (direct link to latest version) and extract the archive to a web-accessible folder on your server.
  3. Point your browser to the directory where you extracted it (e.g., http://[domain]/mediawiki/index.php. If installed on a local machine, replace[domain] with localhost. If installed on a remote server, replace [domain] with your server’s domain (eg: www.myserver.com)
  4. Follow the on-screen instructions to complete the process.

These instructions are deliberately brief. There is a lot that could go wrong, so if in any doubt, you are advised to read the full instructions Click Here

Chat Server

While i don’t have a huge need for a chat server as such, as the OSX Lion Server has the feature, so why not see what is out there, and there is a Great XMPP Soultion available. Infact its so good I’ve got over 50 users using it.

Requirements

Jabber Compliant, multiple client availability, web configuration.

Software: Open Fire - http://www.igniterealtime.org/projects/openfire/

Price: Free

Instructions

Coming from a DMG, this installs much the same way as any other Mac App. Once installed the setup and server are installed via a web interface:

Setup the Database

Openfire can store its data in an embedded database or you can choose to use an external database such as MySQL or Oracle. If you would like to use an external database, you must prepare it before proceeding with installation. View the database setup documentation for more information.

Setup the Server

A web-based, “wizard” driven setup and configuration tool is built into Openfire. Simply launch Openfire (platform-specific instructions below) and use a web browser to connect to the admin console. The default port for the web-based admin console is 9090. If you are on the same machine as Openfire, the following URL will usually work: http://127.0.0.1:9090. Initial setup and administration can also be done from a remote computer using LAN IP address instead or hostname if it is resolvable by the remote computer. Windows Server administrators should add http://127.0.0.1 address to Internet Explorer’s Trusted Sites list, if Enhanced Security configuration is enabled in Internet Explorer. Otherwise they will get a blank screen.

Admin Console

After completing the above steps, Openfire will be configured and you can use the web-based admin console to administer the server. The URL should be the same as you used to setup the server unless you changed the port during the setup.

After you installed the Openfire server, and you started it  go to http://localhost:9090 or http://127.0.0.1:9090 .  If you are using any computer on the network go to http://<serverip>:9090 or the IP assigned to the WHS in you network for example http://192.168.1.2:9090.

When you go to the above address the setup will start and you would have to select your language, then click the Continue button.

On this step of the configuration you can change the domain and ports however as it automatically gets the server name most people can leave that as it is, click on the Continue button. 

Now you can configure the database settings, you can pick the easy way and choose the Embedded Database . 

You have to choose which external database (Standard database connection) once you select the database type then you will have to type in all the details such as the username and password.  Then click on the Continue button once you are finish completing the details, it may take up to 1 minute if you have everything correct.

On the Profile settings select the Default option.

You will now need to setup an administrator account, try not to use the same password as your OSX administrator.  Enter an email address, note that you can enter something like: admin@localserver.local if you do not want or trust the software but I used my real email address and have not collected any unwanted emails from Openfire.

Once you complete this you can click the Continue button.

Remember: if you prefer to use a hard to remember passwords then write them down ;-)

Once you specified the Administrator credentials, click on the continue button which will complete the installation and configuration of Openfire.

Click on “Login to the admin console” and authenticate using your previously configured administrator credentials.

You can now either use the Ignite Spark Client or Pidgin to connect to your server using the usernames and passwords you setup on the servers, and point the client to the IP/DNS of your server.. You’re done..

Addressbook & Calendar ServerServer

I don’t have a requirement for this at all, unfortunately both of these services i’m tied right into Google on my Android phone, however research did bring out an interesting project with the faulty to do this on the Lion Installation:

Requirements

Centralization of all Adressbooks and a Central Calendar Hub.

Software: AddressbookServer - http://addressbookserver.com/projects/abs/index.jsp

Price: Free

Instructions


There is a good PDF On The Site covering the install: http://addressbookserver.com/docs/QuickStartGuide.pdf

Address Book and Calendar Server

With Address Book Server you can synchronise your Address Book with others on the same network as well as over the internet. Contacts are synchronised with your own instance of Address Book Server.

Address Book Server comes in two parts a server and a client. The server should be installed on a centrally accessible Mac. The client goes on every Mac, whose Address Book you would like to synchronise.

During synchronisation contact information is fetched from the ABS server, compared with the local content, and any changes are written back to the server. Changes made via Address Book are synchronised in real-time with the server. Other clients will be brought up-to-date during their next synchronisation. This can either be done by making a change to one of their contacts, manually via System Preferences or on a schedule.

Minimum Requirement for the Server

OS X (10.4 onwards) are supported in both standard and server editions.

Address Book Server runs on both Intel and PowerPC based Macs.

Address Book Server can be installed on any modern operation system with a Java 5 JVM. This includes (OS X 10.4 onwards) but also Linux and Windows.

Depending on the number of contacts / events and clients accessing the server as well as the frequency of synchronisation additional memory might be requires. 2GB on the server should be sufficient for most environments.

Supported Database platforms

Address Book Server can be integrated with most modern database engines including many free and open source ones. Details instruction on integrating with your existing database engine can be found at the support website.

Minimum Requirement for the Client

Mac OS X (10.4 onwards) are required to install the Address Book Server Client.

The web interface can be accessed from any modern web browser such as Safari, Firefox or Internet Explorer.

Current Features

  • Bi-directional sync to keep your Address Books up-to-date.
  • Bi-directional sync to keep your Calenders up-to-date.
  • iSync integration to transfer contact information in the background in real time
  • Address Book schema are fully supported
  • iCal schema are fully supported
  • Discover via Bonjour to ease configuration.
  • Support for off-site clients (Without Bonjour)
  • Scheduled automatic synchronisation
  • Translation into German, French, Romanian, Swedish, Dutch and Italian
  • Recover deleted contacts
  • Administration tools
  • View contact in Google Earth
  • Export to vCard and LDIF format
  • Optional SSL support

Coming Features

Support for ABCMobile to run on the iPad. We are in the final stages of testing and will make a version for the iPad available shortly. CardDAV and CalDAV support is also planned and due out later this year.

Music Streaming


Requirements:

I’m looking for something which will stream my NAS based audio collection between devices on my network and over the internet to these devices.

Software: AudioGalaxy - http://www.audiogalaxy.com/

Price: Free

Instructions

Supplied via a DMG / OSX Install files, this will install an “agent” file onto the server PC, this is pointed to the location of your Audio files. The Agent will then posit the information required to the AudioGalaxy server. The process takes a while to index a larger collection.

Now all that is needed is to install the Audio galaxy client on your End Device, which Means Windows, Mac OSX, Android, iPad and iPhone, or a Web Interface for other systems.

The streaming system is good and holds up solid even on my mobiles 3G connectivity.

Video Streaming


Requirements:

Much like the Audio server componant  i’m looking for basically the same thing, and here i’m split between two Systems on My iPad which would stream from this server, I would have recommended Boxee’s new iPad App here, however AirVideo has a far better streaming ability right now.

Software: AirVideo - http://www.inmethod.com/air-video/index.html

Price: Free

Instructions

Setting Up Air Video

You need to download and install Air Video Server.

Once the server is running, add folders that you want to share. If you have videos in your iTunes playlists, you can also share those playlists.

If you have been running Air Video Server before the window will not open. You can access it using Air Video Server icon in menubar (on Windows the icon is in system tray). 

Using Air Video

In Air Video on your iPhone / iPod touch or iPad add your computer to server list.

After the server is added you can browse its folders.

Additional Information:

If you are also looking to integrate Ldap into your Server, I’ve not tried these, however i think it would work..

Src: http://vuksan.com/linux/mac-os-x-ldap/openldap-mac-os-x-authentication.html

Enable root account under Mac OS X

Yes you have to enable UNIX root. admin apparently doesn’t work. Don’t ask why. Guys from Dixie state wrote it up with screenshots so go to

http://cs.dixie.edu/ldap/mac/page2.php

Add LDAPv3 source to Directory Access

1. Open Directory Access from /Applications/Utilities
2. Click the Lock on the bottom of the window. You will be prompted for the root password.
3. You should now see something like this

Directory Access window
4. Click on LDAPv3 then click Configure
5. Check off “Use DHCP-supplied LDAP server”
6. Select Options then click Add
  • Enter a configuration name ie: Master LDAP
  • Server Name: your Master LDAP server name ie. ldap.domain.com
  • Click on LDAP Mappings and select RFC 2307 (Unix)
  • A window will pop up that will ask you for a search base. Put ie. 
    dc=domain,dc=com
  • Check SSL
You should now see something like this
Mac OS X LDAP sources

7. Click Edit just to make sure all looks good

LDAP config

8. Click OK then OK again.
9. Now you’ll be back at the Directory Access Window
10. Click on Authentication at the top of the window
11. Under Search Pull Down choose “Custom Path” then Click Add. Select ldap/ldap.domain.com source
12. Click OK and OK again until Directory Access closes.
13. Restart the machine
14. After the restart you should be able to log in as any valid LDAP user

Troubleshooting

1. If after configuring your LDAP you still can’t authenticate and your /var/log/system.log contains messages like these

/System/Library/LoginPlugins/MCX.loginPlugin/Contents/MacOS/MCXCacher: DSOpenNode(): dsOpenDirNode(“/LDAPv3/ldap.domain.edu”) == -14002

The problem comes from the Format utility of the Directory Access which apparently keeps misconfiguration even if it is corrected. To correct

  1. Remove all contents of the directory /Library/Preferences/DirectoryService ie. double click on your Mac HDD
  2. Open /Applications/Utilities/Netinfo Manager and within it remove all  contents of /config/mcx-mask

Then restart the machine and reconfigure.

A TEXT POST

Give Filevault Another Chance

Apple’s real-time disk encryption tool, Filevault, used to suck. A lot. If one tiny little bit in your Filevault image got flipped, the entire thing would explode in your face. Bam! Data gone! It was enough for many to swear off Filevault entirely, myself included.

Well, it’s time to give Filevault another shot. Apple has completely rebuilt it — so much so, in fact, that the only thing the new version really shares with its predecessor is its name. The new full-disk-encryption based setup is super fast, super secure, and has essentially no impact on your system performance. Oh, and it won’t randomly eat all your data.

A TEXT POST

Check Out PDF Signing In Preview:

Three years ago, I threw my printer in the trash. I got tired of stupid ink, and stupid drivers, and that stupid grey box taking up space on my desk. I haven’t missed it since.

Okay, fine. There’s one time I always miss it: whenever I need to print and sign a contract. Thanks to a fancy (but somewhat hidden) new feature in Lion’s Preview app, I’ll never miss my printer again.

Open up a PDF in Preview. Click the annotations button (), then click the signature button (), then hit “Create Signature from Built-in iSight”. Scribe your signature onto a white piece of paper, hold it up to your iSight, and bam: you’ve got a stampable version of your signature sitting in Preview. Mr. Printer, meet Mr. Trash Can.