EveryWAN Mobility Manager

EveryWAN Mobility Manager

I have blogged about the EveryWAN Remote Support Personal Edition utility previously on the blog (http://blog.brightpointuk.co.uk/everywan-remote-support-personal-edition) - a free tool that provides extensive control over your connected Windows Mobile PDA directly from your desktop PC.

EveryWAN Mobility Manager is the big brother of this utility which is now available for a 30-day free trial from the developer's web site, Sparus Software - http://www.sparus-software.com/. This server-based application provides a complete solution for managing a fleet of Windows Mobile-based PDAs remotely.

With the recent release of version 3.0 of the software, and Sparus-Software's nomination by Microsoft as their Startup Company of note (http://www.microsoftstartupzone.com/Blogs/Microspark-BizSpark-Startup-of-the-Day/Lists/Posts/Post.aspx?ID=47), I thought it was high time I installed the software and posted my findings to the blog.


Features

The EveryWAN Mobility Manager Suite is composed of three distinct products:


EveryWAN Mobility Manager


Architecture

The EveryWAN solution is a server-client model, that does require an Internet-facing server, and client software on the PDA devices which communicates with this server.
All client-server communications can be secured using SSL, on a port that can be defined by the administrator. All data exchanges are also compressed enabling the solution to be used even over low-bandwidth connections such as GPRS.
In order to integrate the solution with domain authentication sources, the required ports should be open between the EveryWAN server and LDAP servers or domain controllers.
A DMZ deployment is possible should you not to wish to open firewall ports directly to the LAN, where the EveryWAN server is located on the internal network behind a proxy server located in the DMZ.


Prerequisites

The EveryWAN Mobility Manager can be installed on either Microsoft Windows Server 2003 SP2 or equally on Red Hat Enterprise Linux v4.0 or later.

PostgreSQL v8.2 is the database back-end installed by default by the EveryWAN solution, but alternate supported database platforms include:


Installation

Launch the autorun.exe splash screen loader from the CD or from within the contents of the extracted ZIP file if you downloaded the application:

EveryWAN Mobility Manager

Select the option to install the Mobility Manager. You will be prompted to specify your installation language, accept the terms of the license agreement and specify where o wish the program files to be copied to. By default the solution will use a local installation of Postgre SQL to create the database 'back end'. If you wish to use an alternate database, untick the option to install the Database Server:

EveryWAN Mobility Manager

If you do opt to use Postgre SQL, during the installation you will be prompted to enter the details of the default system account:

EveryWAN Mobility Manager

EveryWAN Mobility Manager

EveryWAN Mobility Manager

When warned that the password entered for the service account is not strong enough, allow the wizard to generate a random password for the installation wizard automatically, otherwise the installation may not complete successfully.

Once the database engine is installed, you will the be prompted to enter your license details. This information is stored in a separate license file which you will be most likely receive via email from Sparus Software:

EveryWAN Mobility Manager

It is this file that determines which of the features of the Suite that you will be allowed to access.

You can now enter the details of the database itself that the Mobility Manager solution should use:

EveryWAN Mobility Manager

EveryWAN Mobility Manager

EveryWAN Mobility Manager

Next you can specify which protocols the server is to be accessible via from the outside world:

EveryWAN Mobility Manager EveryWAN Mobility Manager

The Mobility Manager installation includes an installation of the Apache Tomcat web server software, so there is no need to configure IIS on the Windows Server. During the installation the necessary SSL certificates will be generated automatically.

Finally, the authentication mechanism can be specified. A default username and password can be specified using Mobility Manager's own authentication scheme, or the solution can be integrated into an existing LDAP source, including Active Directory and Lotus Domino:

EveryWAN Mobility Manager EveryWAN Mobility Manager


Client Installation

The client installer package is accessed by browsing to http(s)://(everywan_server)/everywan/setup.cab from within the browser on the PDA itself. This CAB package is generated automatically during the server installation and is configured with the details of the server's external DNS name as specified during the server installation. This link can be entered in manually by the user, or could be sent via SMS text message or via email.
Installation does not require any interaction from the user, once installed, the PDA will be rebooted.
A new icon is added to the Programs folder, and the client will launch automatically at startup. When run for the first time the user will be prompted to enter their username and password:

EveryWAN Mobility Manager EveryWAN Mobility Manager

As we saw earlier, Mobility Manager can be integrated with an existing LDAP source, including Active Directory, or a common, default, username and password can be used. The EveryWAN solution also allows for anonymous users, which does not require the entry of a username or password, instead the device itself is authenticated rather than the user. Device details can be imported into the server (serial number and IMEI number) from a text file.

Once authenticated, the device will initiate a connection to the server automatically:

EveryWAN Mobility Manager

Once the client is installed, an icon is added to the status bar at the top of the screen but is otherwise very unobtrusive and there are no settings for the user to alter, other than the username and password.


Administration

The Mobility Manager server is administered via a web interface, accessible via http(s)://(everywan_server)/everywan:

EveryWAN Mobility Manager

Once logged in using the default admin username and password specified during the server installation, a summary screen is displayed on the General tab:

EveryWAN Mobility Manager


Configuration

All configuration of the solution is done via the web interface. Users and Groups can be defined:

EveryWAN Mobility Manager

A list of connected devices is displayed. New devices can also be defined manually or can be imported from a text file:

EveryWAN Mobility Manager

Tunnels

The first item that needs to be configured is a Tunnel. Tunnels are used to control which configuration packages are assigned to which devices or groups. Tunnels can be restricted to specific client IP addresses and can be restricted to specific access types if they contain large amounts of data:

EveryWAN Mobility Manager

NOTE - a special built-in tunnel type is available for Remote Support, I shall look at this in a moment.

Once a tunnel has been created, individual configuration packages can be assigned to it. Configuration packages can fall into one of the following categories:

Registry Configuration

On the Registry tab, a representation of a typical device registry is displayed:

EveryWAN Mobility Manager

From here the administrator can define new String or Key values:

EveryWAN Mobility Manager

There are also a number of pre-defined wizards built into the solution that allow the administrator to enter the required registry key details for common tasks:

EveryWAN Mobility Manager

From here the EveryWAN client itself can be configured with details of the network types via which it should be allowed to connect to the server:

EveryWAN Mobility Manager

The EveryWAN client itself can be uninstalled remotely if desired via a registry configuration:

EveryWAN Mobility Manager

Automatic connection schedules can be defined on the client:

EveryWAN Mobility Manager

A phone number can be specified within the client to enable SMS "wake-up" messages - should the client PDA receive an SMS from the number specified, it will automatically initiate a connection to the server provided that a connection to the Internet is available:

EveryWAN Mobility Manager

The settings for Microsoft Exchange Server ActiveSync direct push can be defined automatically on the Mobility Manager server and be delivered to the client device:

EveryWAN Mobility Manager EveryWAN Mobility Manager

EveryWAN Mobility Manager

Roaming behaviour can be defined:

EveryWAN Mobility Manager

Preventing users from using the solution when abroad, if desired, to avoid amassing large call charges.

XML Packages

On the XML tab, custom XML scripts can be built and saved, ready for delivery to the client. XML scripts allow the administrator to control virtually any element of a Windows Mobile-based PDA's functionality by creating and editing registry information, using the industry-standard OMA-CP protocol: be it enabling or disabling hardware elements on the device, blacklisting applications or whatever. This feature does require that the administrator know the correct format in which to structure the XML code, but documentation is available on the Microsoft web site, and the Mobility Manager solution has a number of common tasks pre-defined within the administration interface:

EveryWAN Mobility Manager

GPRS/3G and WiFi access points can be defined:

EveryWAN Mobility Manager EveryWAN Mobility Manager

Network connection settings can be defined:

EveryWAN Mobility Manager

The device camera can be enabled or disabled:

EveryWAN Mobility Manager

Certificates can be delivered to the client and installed into the appropriate certificate store:

EveryWAN Mobility Manager

Applications can be uninstalled (provided that you know the name of the application as it appears in the 'Remove Programs' list):

EveryWAN Mobility Manager

Or custom XML scripts can be defined:

EveryWAN Mobility Manager

Software Deloyment

On the Software tab, CAB package application installers ca be specified and delivered to client devices:

EveryWAN Mobility Manager

EveryWAN Mobility Manager

Deployment

On the Deployment tab, individual deployment packages can be created. This is where you specify which of the configurations you have defined should be available to which users or groups:

EveryWAN Mobility Manager

EveryWAN Mobility Manager

EveryWAN Mobility Manager

Once defined, you can trigger an automatic deployment by clicking on the Deploy button. This will automatically update all connected client devices that have been associated with that deployment package.

Once a device has connected once to the Mobility Manager server, information about that device is available within the properties of that device on the Devices tab, including hardware inventory information as well as an inventory of the applications that are installed on that device:

EveryWAN Mobility Manager

A history of the configuration packages that have been applied to the device (both successfully and unsuccessfully) is available:

EveryWAN Mobility Manager

Devices can also be remotely 'killed' from the Mobility Manager server in the event that they are reported lost or stolen:

EveryWAN Mobility Manager

Reporting

A number of pre-defined reports can be run from the Mobility Manager web interface and which are generated using a local installation of the Crystal Reports runtime environment:

EveryWAN Mobility Manager

Reports can be exported.


EveryWAN Remote Support

EveryWAN Mobility Manager

Remote Support is an additional, optional, component of the Mobility Manager Suite, and is a Windows-based PC application that provides support staff with real-time control over the remote devices, provided that they are connected to the Mobility Manager server. Similar in functionality to the EveryWAN Remote Support Personal Edition application, this provides instant access to device system information allowing support staff to view and kill running processes, enables file transfer to the remote device from their workstation or the server, provides remote access to the device registry as well as real-time access to the device screen and input hardware.

EveryWAN Mobility Manager

EveryWAN Mobility Manager

EveryWAN Mobility Manager

EveryWAN Mobility Manager

Device screen capture and video recording capability is also available making this is an excellent support tool. Live annotations using a "shared whiteboard" and VoIP-based voice communications between mobile end users and helpdesk personnel is also available.


EveryWAN Secure Device Provisioning

This is another optional component of the Mobility Manager Suite that provides for a stronger encryption method for securing the exchange of data between the client and the server, and also for enforcing local data encryption on the device.
Mutual authentication between clients and the EveryWAN server can be enforced using PKI key infrastructure base don X509 v3 certificates. Local data encryption can be enforced either by invoking an encryption application already present on the device, or by automatically downloading one to the client and silently installing it.
Power-on password usage can also be enforced on the device.


Addendum

Version 3.1 has been released. New features include:

Security Policies

EveryWAN Mobility Manager

Windows Mobile 6.1 / 6.5-specific Policies

File / Registry Policies

EveryWAN Server Extensibility

User Interface Improvements

Package Deployment Improvements

NEW - Introduction of client extensibility with EveryWAN Business Process Scripting

Version 3.1 of EveryWAN Mobility Manager introduces a new client-side scripting capability, based on the MortScript language, allowing complex client-based scripts to be created, deployed and managed centrally. Features include:

Example uses of EveryWAN client scripting include:

EveryWAN Mobility Manager Scripting

Improved Hardware Inventory

EveryWAN can now retrieve the size of the screen, the user's language, memory total / available / used, etc. This data can be used in the conditional deployment engine (ie, scripts can determine the resources available on a client device automatically and then choose to process the rest of the script or stop, based on the information returned). These resources can all also be grouped by type within the admin interface for easy viewing and comparison.

EveryWAN Agent

The 'Reconnection in case of failure' policy can now be changed to improve battery life.

EveryWAN Remote Support

New features include:

Read more information and download a 30-day trial from the Sparus Software web site: http://www.sparus-software.com/