This article shows how to run a file- and print-server for small and medium enterprises (SME) on one single Ubuntu 8.04 server. It is very easy to set up, and management is done with an easy-to-use web interface called eBox so once the system is set up, you can forget about the command line. eBox was developed to administrate advanced services for corporate networks.
This document comes without warranty of any kind! I want to say that this is not the only way of setting up such a system. There are many ways of achieving this goal but this is the way I take. I do not issue any guarantee that this will work for you!
1 Preliminary Note
I assume you have already set up a basic Ubuntu 8.04 server. You can set up your system as described on the first three pages (chapters 1 – 10) of this tutorial: The Perfect Server – Ubuntu Hardy Heron (Ubuntu 8.04 LTS Server).
I use 192.168.0.100 as the IP address and server1.example.com as the hostname of my Ubuntu server in this tutorial. If your Ubuntu system does not have a static IP address you should now change its network configuration as shown in chapter 7 of the above tutorial.
Also make sure that you change the default shell and disable AppArmor, as described in chapters 9 and 10.
2 Install eBox
There are Ubuntu packages available for eBox. To install them, we must edit our /etc/apt/sources.list first:
Add the following line to your existing sources.list:
[...] deb http://ppa.launchpad.net/juruen/ubuntu hardy main [...]
Then update your package database:
Afterwards we can install eBox with all needed modules with one single command:
apt-get install “^ebox-.*”
You will be asked a few questions. Most of the time you can simply accept the default values:
Administrator password: <– somepasswd
Confirm password: <– somepasswd
LDAP server Uniform Resource Identifier: <– ldapi:///
Distinguished name of the search base: <– dc=example,dc=net
LDAP version to use: <– 3
Make local root Database admin: <– Yes
Does the LDAP database require login? <– No
LDAP account for root: <– cn=manager,dc=example,dc=net
LDAP root account password: <– [empty]
Create directories for web-based administration? <– No
General type of mail configuration: <– Internet Site
System mail name: <– server1.example.com
SSL certificate required <– Ok
eBox administrator password: <– somepasswd
Confirm password: <– somepasswd
eBox HTTPS port: <– 443
3 Logging In To eBox
Now that eBox is installed, open your browser and go to https://192.168.0.100. The login screen appears. Enter the eBox password that you’ve created in the previous step and log in:
After the login, you’ll see the eBox status page (Summary):
4 Enabling/Disabling Modules
Now we go to Module Status…
… and enable the modules that we need for a file- and print-server:
- users and groups
- file sharing
Whenever you click on a checkbox to enable a module, you will see something like this:
Click on Accept to continue.
In almost all cases when you change a setting, you will see the red Save changes rectangle in the upper right corner afterwards. Click on it (you don’t have to click on it after each module you’ve enabled, you can do this after you’ve enabled all desired modules – eBox remembers all the changes and does all the configuration in one turn):
After you have clicked on the red rectangle, another screen comes up telling you to save the configuration; click on Save:
eBox is now performing the necessary configuration changes:
5 Change Your eBox Password
If you’d like to change your eBox password, you can do this under System -> General:
6 Date And Time Settings
To adjust the system time, go to System -> Date/time and enable time synchronization with NTP servers. Click on Change:
Then enter some NTP servers, e.g. 0.pool.ntp.org and time.nist.gov. Click on Change. Don’t forget to click on the red Save changes rectangle afterwards:
7 Create Groups
eBox allows you to create groups which can have different permissions. For example, one group could be allowed to use the printer, but not the file server, and vice versa for another group. In this article I create two example groups, one for the tech department and one for the sales department (groups are created instantly, so no red rectangle will appear).
8 Create Users
eBox lets you also create users that can be put in the groups you created before, thus inheriting the group permissions, but you can also assign individual permissions to each user. In this example, I create two users (under Users -> Add user): tim in the group techdpt and bob in the group salesdpt:
Make sure you enable PDC/file sharing for each user (unless you don’t want that user to use these features):
9 Print Server
With eBox, you can also create a print server for your network. eBox supports USB, parallel, network, and Samba printers. In this example, I have connected a Brother HL-5040 laser printer to my eBox system with USB.
First, we must add the printer to our eBox configuration (under Printers -> Add printer):
Here you must select the best driver for your printer. You can go to OpenPrinting.org to find out the best driver for your printer model.
Don’t forget to click on the red Save changes button afterwards.
Under Printers -> Manage printers, you can enable standalone CUPS for your printer. I’m not sure if this is necessary. The explanation that eBox gives for this feature is: “This will enable cupsd to listen on internal interfaces to see printers and jobs. If set, samba is not the only one which can manage the printers.”
10 File Server
What I like most about eBox is the ease with which you can create file shares for your network. Just go to File sharing -> General settings and specify the working mode (File server or Primary Domain Controller (PDC)) and a quota limit for the file share:
Under File sharing -> Shares you can then create one or multiple shares. Click on Add new to create a new share:
Provide a name for the share, specify its path (either relative to eBox, or the full file system path – eBox will take care of creating the share), and a comment (the comment is necessary because otherwise eBox refuses to save the share):
Afterwards, you can click on the icon in the Access control column to define which user our group has read or write permissions to that share:
For example, I grant Read only permissions to the group salesdpt…
… and Read and write permissions to the group techdpt:
Instead of granting rights to groups, you can do the same for single users:
11 User Permissions
Now that all desired services are running, we can set the permissions for our users, i.e., we can specify which user can use our file share and our printer. In the following example, I allow the user tim to use our file share (actually, I’ve already done this in chapter 8 when I created the user) and the printer:
12 Group Permissions
As before for our users, you can now specify which group can use the printer, plus you can specify a file sharing directory for each group:
13 Test The File Share And The Printer
Now we can test our file share and the printer from a Windows workstation. Go to Start -> Run (Start -> Ausführen if it’s a German Windows) and type in
You will be prompted for a username and password, so if you are tim, type in tim and tim‘s password:
If the login is correct, you will be granted access to your file share. You can now see your personal folder tim and the printer we created in eBox. You can also see the folder sales which is owned by the salesdpt group. Since tim is not an owner of that group, he cannot access the sales folder (unless he provides a correct username and password for it). Of course, he can access his own folder tim.
14 Configuration Backup
Under System -> Backup, you can back up your current eBox configuration, so if you lose your eBox configuration, you can restore it from the backup:
15 eBox Software Managment
Under Software management -> eBox components, you can see which eBox modules are currently installed on your Ubuntu system. If you don’t need a module anymore, you can delete it:
Under Software management -> System updates, you can check for eBox updates.
Under Software management -> Automatic updates you can enable automatic software updates for the eBox components:
- eBox: http://www.ebox-platform.com
- Ubuntu: http://www.ubuntu.com