eBox Desktop
Warning: please note that if you don't follow this how-to step by step or if something goes wrong you can lock yourself out. So please, use a virtual machine or a spare machine to try it
Introduction
ebox-desktop is a Ubuntu package intended to be installed on the desktop clients (workstations) of a network managed by eBox platform.
It provides two main features:
- Authentication against eBox LDAP: The user database is stored only on the eBox server and if you have an account on it you can login from any machine on the network. This works exactly as the PDC feature for Windows clients, but in this case with Ubuntu clients.
- Autoconfiguration of desktop clients for the services provided by eBox (mail, samba, Jabber, VoIP, ...): The first time the user logs in a machine it creates a home directory with the proper preconfigured settings.
Configured Applications
Here is a list of the applications included with Ubuntu Desktop that are automatically configured by ebox-desktop:
- Evolution (Mail service): The mail account of the user is read from LDAP and added.
- Nautilus (File sharing): Links to the samba user share and all group shares for the user are added on the desktop.
- Ekiga (VoIP): The asterisk account for the user is added. A workaround is needed to ask the user for the password before start Ekiga the first time because it can't do it if it isn't specified in the configuration.
- Pidgin (Jabber service): The jabber account of the user (if it has one) is added. It also adds a conference to its buddy list for each group that the user belongs to.
- Firefox (EGroupware & User corner): Links to these two services are added to the bookmarks toolbar. Currently it only works if the user corner port is the default one (8888).
Required Scenario
- eBox Server. It has just currently been tested with eBox 1.1.10 (alpha2) on Ubuntu Hardy. We believe it should work with eBox 1.0 as well.
- At least one client machine with either Ubuntu Jaunty or Ubuntu Karmic installed.
Upcoming Features
- Roaming profiles
Changes on Server Side to Make it Work
General Changes
- Make sure that you have the File Sharing Module installed, if not you can install it by apt-get install ebox-samba or using ebox-software (Software Management menu on the eBox interface).
- Edit /etc/default/slapd and in the SLAPD_SERVICES variable, change "ldap://127.0.0.1:389" to "ldap://0.0.0.0:389". This will allow accepting connection from any host.
- /etc/init.d/slapd restart
- Enable File Sharing Module and click on Save Changes.
- Edit /etc/ebox/80samba.conf and change value of login_shell option to /bin/bash (default is /bin/false).
- The above change will only affect the users we create from now on.
- Create a user from the Users/Add? User menu on the eBox interface.
- If you have the Firewall module enabled, go to Firewall --> Packet Filter --> Filtering rules from internal networks to eBox and change the decision for ldap service from DENY to ACCEPT.
Jabber Service
- Make sure you have the SSL support option on the eBox Jabber configuration set to Optional or Required. That's because pidgin is configured by default to use SSL.
- Check the option Enable MUC (Multi User Chat) if you want to use conferences for the groups on your system.
- The Domain name must be set to ebox because at the moment we don't have any way to get it, but this will change in next versions.
- The users that you create must have enabled the Jabber Account section in the Users/Edit? User menu of eBox. You can see the image below.
Mail Service
- You need to have a virtual mail domain created (eBox Installer version > 1.1.10 does it for you).
- The users should have a mail account created (as shown in the last image of the Jabber service section).
- You can enable the mail retrieval services you want in the Mail/General? menu on eBox. But they have to be according to the /etc/ebox-desktop/ebox-desktop.conf file.
- The default values on that file are to use IMAP instead of POP and use SSL when available.
Client Side
Installation:
- A ebox-desktop package is provided. It's not yet in the official repositories because it's still a beta proof of concept, but you can get it from my ppa. Note that this is not a stable release, so you use it at your own risk. If you don't know what you are doing and you install it in your production machine it might lock you out.
- Add one of the following lines to your /etc/apt/sources.list file:
- If you are using Ubuntu Jaunty: deb http://ppa.launchpad.net/jacalvo/ebox-desktop/ubuntu jaunty main
- If you are using Ubuntu Karmic: deb http://ppa.launchpad.net/jacalvo/ebox-desktop/ubuntu karmic main
- apt-get update && apt-get install ebox-desktop
- The installation process will ask for the address of the eBox Server.
- Probably you will need to reboot the desktop machine after the installation to avoid some issues.
- Once the package is installed, you can change this address executing dpkg-reconfigure ebox-desktop.
- You can also do a dpkg-reconfigure ebox-desktop and the address will be prompted again.
Usage:
- Login with any user created in the eBox Server after the setup and check that the desktop programs are configured for the eBox Services.
- After enter the username and a password you'll see a warning about recently created directories if this is the first time the user logs in.
- If you want to force a reconfiguration you can do it executing rm ~/.ebox-desktop-configured and then login again.
Here is an example desktop after login and running pidgin. Pidgin asks directly for the password without needing to configure the account. You can also see a link on the desktop to the user's personal Samba Share.
Another example of the same user belonging to two new groups with Samba Share enabled and running firefox with the eBox user corner login screen.
How it Works
- It uses pam_ldap.so PAM module (libpam-ldap pacakge) for the remote authentication.
- The configuration of the user home directory is done by a script located at /usr/share/ebox-desktop/ebox-setup-user that is ran after login has succeeded.
- There is a /usr/share/ebox-desktop/skel directory that contains templates for some of the configured applications.
- The ebox-setup-user script gets different needed values from LDAP (connecting to the eBox server) and replaces them on the templates.
- It creates a .ebox-desktop-configured file on the user home to avoid repeating the process after each login.
- ebox-setup-user is ran (using pam_exec.so) as root user, so it adds some actions to the ~/.profile in order to be ran as the login user (some of them are other auxiliary scripts located in /usr/share/ebox-desktop).
Attachments
-
ebox-desktop-jabber.png
(10.2 KB) -
added by jacalvo@… 4 years ago.
jabber setup for ebox-desktop
-
ebox-desktop-setup.png
(4.8 KB) -
added by jacalvo@… 4 years ago.
ebox-desktop post-install configuration
-
ebox-desktop-edituser.png
(19.0 KB) -
added by jacalvo@… 4 years ago.
edit user with jabber and mail accounts enabled
-
ebox-desktop-gdm.png
(49.7 KB) -
added by jacalvo@… 4 years ago.
gdm login
-
ebox-desktop-pidgin.jpg
(35.2 KB) -
added by jacalvo@… 4 years ago.
desktop with pidgin login screen
-
ebox-desktop-firefox.jpg
(45.2 KB) -
added by jacalvo@… 4 years ago.
desktop with firefox and group shares





