ownCloud, the powerful cloud server, can do more than just sync files between your devices. You can open ownCloud up to a public-facing WAN address, or deploy it as an internal cloud server to host and share company files among multiple users. You can even use it for an in-home data, music, and calendar server – the calendar application lets you create personal and community calendars that multiple users can work with. ownCloud is easy to install and administer, but there are a few tricks you need to know.
You can get data to and from an ownCloud server in a number of ways. There's the official client, available for Windows, Mac OS X, and Linux, as well as clients for Android and iOS. These clients, however, are just for syncing files and do not work with ownCloud calendars; if you want to share out calendars, or exchange documents between ownCloud users, you'll have to go beyond the clients.
You can share your ownCloud calendar so that you can sync it between the ownCloud server and Mozilla Thunderbird, OS X/iOS Calendar, and any calendar client that supports CalDAV. The project is also working on a bridge to support Google Calendar with ownCloud. And by setting up users and groups on the ownCloud server, you can easily share documents between users. To do so, you need administrator access to ownCloud to change some settings, but others settings require only access to a standard (non-admin) ownCloud account.
Creating users and groups
If you want to share documents between users on your ownCloud server, you must create users and groups. Well, you could download a document and email it to someone, but by making use of the document sharing feature, you add a level of collaboration to ownCloud. With this sharing, users can open and edit documents others users have shared (but not simultaneously), and you can set an expiration date to the sharing.
ownCloud integrates with both LDAP and Active Directory, but if you need to add groups and users manually, start by logging on to ownCloud as the admin user. Click on the name drop-down in the upper right corner and select Users. From the resulting window (Figure 1), click the Groups drop-down and then click +add group. Type the name of a new group and press Enter. The new group should now be listed.
Creating a new group in ownCloud
Creating a user is just as simple as creating a group. From the same window you used to create a group, enter a login name for the user and a password, select the group(s) the user is to belong to, and click Create. The one caveat to this system, is that you can only add users one at a time – there is no bulk-add system. Should you already have users and need to add them to a newly created group, simply click the Groups drop-down associated with that user and then select the necessary group(s). If you need to change the name of a user, hover the mouse over the entry in the Full Name column and click the pencil icon that appears.
When you're logged into a user account via a web browser, you can add even more information to a user account, including email address, profile picture, language, and documents save directory. To get to this edit screen, click on the name drop-down in the upper right corner of the window and select Personal. Changes you make are saved automatically.
The developers of ownCloud have made the process of sharing documents between users simple. While logged in to your ownCloud account, click on Documents, then click on the document to be shared. With the document open, click on the Share button in the top left corner, then enter a user or group name to share it with. Click the groups drop-down (Figure 2) to show the permissions options. You can enable a user to edit, update, and share your document.
Sharing a document with edit/update/share permissions
To create a date on which the sharing is to expire, check the relevant box and then click the Expiration data text area to open a pop-up calendar, or just enter a date in DD/MM/YYYY format.
All shared documents display a small head-and-shoulders icon to indicate sharing. Once a document is shared, all users that have permission to see and edit the document will see it listed in their Documents section when they log in to ownCloud. All shared documents appear in a Shared folder in each user's ownCloud client.
Sharing calendars is a bit trickier than sharing documents. Let's walk through the process of sharing an ownCloud calendar out to Thunderbird's Lightning Calendar add-on. This is tricky because the ownCloud documentation doesn't work with Lightning. Even with this hurdle, Thunderbird, Lightning, and ownCloud makes for a great combination for shared calendars on the desktop (plus it's the clear choice for cross-platform support). The problem is that Lightning doesn't know how to handle authentication for the calendar. Each calendar requires the username and password of the account sharing the calendar. There is no way to set a per-calendar password instead of a per-account one, so you need to either share your account password with the user you want to share with, or set the shared calendar up for them, so they don't know your password. Obviously, the latter option is preferred.
To create a new calendar to share out, log on to ownCloud as a standard user and then click Calendar. From within your default ownCloud Calendar (one is automatically created upon your first login to the system), click the small gear icon in the upper right corner. Click the New Calendar button, and fill out the calendar information (Figure 3).
Creating a new calendar to share
After you've filled out the information for your calendar, click the Save button.
Now turn to the Thunderbird user with whom you're sharing the calendar. Ignore the CalDAV URL you just created – it won't work for Thunderbird's Lightning calendar (though it will work for all other CalDAV-supporting calendars). So how do you add the newly created calendar to Lightning? Open Thunderbird, then open Lightning. Right-click a blank spot under the Calendar listing in the left pane and click New Calendar. In the first window, select On the Network, then click Next. Select CalDAV, and then, for the Location, enter a URL in this form:
http://<username>:<password>@<address of owncloud server>/remote.php/caldav/calendars/<username>/<calendar name>
All fields are case-sensitive. After you enter the URL, click Next. Give the calendar a local name, select a color for the calendar, associate an email address with the calendar (optional – used if you want to be able to automatically send invites and reminders to an associated email address), and click Next. On the next screen, click Finish, and the calendar will appear in Lightning's Calendar listing. The password is stored in Thunderbird's Password Manager, and these passwords are not by default encrypted (stored in a plain text file, base64 encoded). You can encrypt these passwords by employing the Thunderbird Master Password feature (found in Preferences -> Security -> Passwords). Right-click the new listing in Lightning and select Synchronize Calendars. All of the original user's appointments on the newly added calendar should appear in this user's calendar. NOTE: You cannot share calendars from Thunderbird to ownCloud; but you have Create permissions, you can create appointments on the ownCloud calendar from Lightning.
There is one caveat to sharing ownCloud calendars with Lightning. Because of authentication limitations you can share only one calendar as read/write to Lightning. All other calendars by the same user will appear to Lightning as read-only.
The ownCloud cloud service is one of the best cloud applications you can get up and running on your own. It offers everything you need to share documents between users and calendars to third-party clients such as Thunderbird's Lightning.