+ All Categories
Home > Software > Working With Sametime For Mobile Devices

Working With Sametime For Mobile Devices

Date post: 22-Jan-2018
Category:
Upload: gabriella-davis
View: 1,884 times
Download: 0 times
Share this document with a friend
72
New Way To Learn Deploying Instant Messaging For Mobile Devices Gabriella Davis Technical Director The Turtle Partnership [email protected]
Transcript
Page 1: Working With Sametime For Mobile Devices

New Way To Learn

Deploying Instant Messaging For Mobile Devices

Gabriella DavisTechnical DirectorThe Turtle [email protected]

Page 2: Working With Sametime For Mobile Devices

Who Am I?

Adminofallthingsandespeciallyquitecomplicatedthingswherethefunis

Workingwithsecurity,healthchecks,singlesignon,designanddeploymentofDomino,ST,Connec>onsandthingsthattheytalkto

Stubbornandrelentlessproblemsolver

LivesinLondonabouthalfofthe>[email protected]:gabturtle

AwardedthefirstIBMLife>meAchievementAwardforCollabora>onSolu>ons

Page 3: Working With Sametime For Mobile Devices

Architecture

Page 4: Working With Sametime For Mobile Devices

DB2❖ Licensed as part of Sametime Communicate or Complete

❖ Used to store data for the Apple push notification activity

❖ If you aren’t using iOS devices then the DB2 database for STProxy isn’t being used

❖ In default mode when coming out of the IM or Meeting application on iOS it is remains backgrounded and you remain logged in and available to other users

❖ Backgrounding can be disabled as a server setting

Page 5: Working With Sametime For Mobile Devices

Sametime System Console

❖ The SSC is used to manage all the Sametime components

❖ It must be aware of all servers in order to integrate their services

❖ It also manages all policies

❖ A Sametime Proxy server doesn’t have to be installed as part of the SSC Cell

Page 6: Working With Sametime For Mobile Devices

Domino❖ Sametime 9.0.1 still requires Domino and is still a 32bit application

❖ You must first install Domino before you can install the 32bit Community Server using it

Page 7: Working With Sametime For Mobile Devices

Community Server❖ Installs on top of Domino

❖ Is a subtask of the HTTP server

❖ load staddin

❖ Create a deployment plan in the SSC and install using that so it’s federated

❖ All the other servers need to know about it

❖ Using Domino’s proprietary directory standard is no longer support for any components, you must use LDAP

❖ Using Domino as LDAP is supported

Page 8: Working With Sametime For Mobile Devices

Sametime Proxy Server❖ The Sametime Proxy server is a HTTP proxy which connects to the

Sametime Community Server

❖ By default it will attempt to consume any server in the domain

❖ Any server document with “Is Sametime Server” set to “yes”

❖ The Sametime Proxy server is used by

❖ Web clients

❖ Web meetings

❖ Mobile applications

❖ Awareness in applications

❖ Connections integration

Page 9: Working With Sametime For Mobile Devices

Sametime System ConsoleDeployment PlanSametime Server

Server ConfigurationServer Policies

DB2SSC Policies (STSC)STProxy for iOS push

Sametime Proxy ServerWeb Proxy

Sametime Community Server

Client Mobile Request

Request access for chat or meetings over port 443

Request is passed to the Community server for

validation

LDAP Server Community server authenticates credentials

Policies are applied

Policies are read

Mobile Access Architecture

Page 10: Working With Sametime For Mobile Devices

Client Mobile

Request

InternalMobile DMZ

DB2SSC Policies (STSC)STProxy for iOS push

Sametime System ConsoleDeployment PlanSametime Server

Server ConfigurationServer Policies

LDAP Server

Sametime Community Server

Sametime Proxy Server

Request is passed to the Community

server for validation

Community server authenticates credentials

443

1516

Mobile Access and Security

Page 11: Working With Sametime For Mobile Devices

Configuration

Page 12: Working With Sametime For Mobile Devices

Create A Proxy Database❖ Create a DB2 database to be used by iOS applications

❖ createProxyDb STPROXY db2admin

script to create the database

database schema

Page 13: Working With Sametime For Mobile Devices

It can take a few minutes to run but when complete

you should see this message

Page 14: Working With Sametime For Mobile Devices

Add It To The SSC

db2 server hostname & port

Newly created db name

stdb.turtlehost.net

Page 15: Working With Sametime For Mobile Devices

Create A Deployment Plan

Only visible to administrators not

users

Page 16: Working With Sametime For Mobile Devices

Create A Deployment Plan

Each cluster can only have one primary node

Each cell can only have one cluster of

each server type

Page 17: Working With Sametime For Mobile Devices

Adding A Primary Node To The SSC

Add the new node to the existing Cell (the

System Console)

Page 18: Working With Sametime For Mobile Devices

Create A Deployment Plan

One option is to install additional Sametime Proxy Servers in their

own cells

Page 19: Working With Sametime For Mobile Devices

Hostname for the install

WebSphere credentials for the install. If the server is federated

into an existing cell these are removed

Page 20: Working With Sametime For Mobile Devices
Page 21: Working With Sametime For Mobile Devices

Confirming The Install

Page 22: Working With Sametime For Mobile Devices

Verifying SSC-Proxy

host and credentials the SSC uses to open the proxy

server

Page 23: Working With Sametime For Mobile Devices

If this page opens successfully you have

confirmed the routing from SSC to Proxy

Page 24: Working With Sametime For Mobile Devices

Installing Standalone

❖ The Sametime Proxy server can only be federated into the SSC as a single cluster

❖ When WAS servers are clustered horizontally with a primary and several secondary nodes , they are all considered “equal”

❖ Horizontal clusters are not suitable if you want to manage access by location

Page 25: Working With Sametime For Mobile Devices

Virtual Hosts❖ Create a specific virtual host for all the hostname:port

combinations your Sametime Proxy Server will use

❖ These should be unique within your cell as they tell WebSphere how to route traffic to the application

❖ avoid using wildcard hostnames

application ports

Page 26: Working With Sametime For Mobile Devices

Mapping Virtual Hosts❖ Once our virtual host is created we need to map the modules

associated with the application to use it instead of “default_host”

Page 27: Working With Sametime For Mobile Devices

Proxy Server Configuration

how a web meeting is started.

Servers should share a LtpaToken

specific community clusters by name to use or specific

community servers

Page 28: Working With Sametime For Mobile Devices

Mobile Configuration

server -wide settings to determine client

behaviour

Page 29: Working With Sametime For Mobile Devices

Meeting Server Configuration

Page 30: Working With Sametime For Mobile Devices

Server-Wide Mobile Security Settings

Page 31: Working With Sametime For Mobile Devices

Meeting Server Configuration

❖ There are additional settings that can be force users to upgrade their mobile clients if they are using versions older than X

❖ That’s a very specific, and potentially painful, admin use case❖ mobile.Android.currentVersion / mobile.Android.minVersion

❖ mobile.iOS.currentVersion / mobile.iOS.minVersion

Page 32: Working With Sametime For Mobile Devices

Clustering❖ Each cluster must be managed by a deployment manager

❖ That deployment manager can be, but does not have to be, the SSC

❖ There can be only one primary node in a cluster

❖ Deployment plans can only be created for one cluster of Sametime Proxy Servers

❖ but a different cluster can be added manually

❖ Servers in the same cluster are considered the same for serving user requests and users could be directed to any available member

Page 33: Working With Sametime For Mobile Devices

Security

Page 34: Working With Sametime For Mobile Devices

Reverse Proxies❖ A reverse or authenticating proxy can provide secure

access through a DMZ to your meeting servers

❖ For larger deployments you may want to keep the Sametime Proxy and Meeting Servers on the internal network and use a reverse proxy in the DMZ

❖ These proxies will authenticate with the LDAP servers directly before passing the authorisation through to the application servers

Page 35: Working With Sametime For Mobile Devices

Deploying A SSL Certificate❖ Never deploy to mobile clients without SSL

❖ A trusted SSL certificate is particularly important when deploying mobile clients

❖ Both the Chat and Meeting applications allow users to accept untrusted SSL certificates

❖ You can turn that off in the server configuration

❖ Replace the installed internal SSL certificate with one you have purchased

Page 36: Working With Sametime For Mobile Devices

Adding A New SSL Certificate❖ Under Security - SSL Certificates and Key Management

❖ We want to import the trusted roots of the CA into the Trust Store

❖ In this example GoDaddy suppled a CRT bundle that I simply “Added”

Page 37: Working With Sametime For Mobile Devices

Adding A New SSL Certificate

❖ I then had the IBM signer created during install and the GoDaddy signer that will be used to create my certificate

Page 38: Working With Sametime For Mobile Devices

Creating A CSR❖ The simplest method of getting a certificate into WebSphere is to create the CSR

there

❖ Then you can simple “receive” the new certificate into the DefaultKeyStore

BEWARE!!

Page 39: Working With Sametime For Mobile Devices

Adding A Personal Certificate❖ If you can’t do that, then a P12 works well

❖ You must have the private key component of the certificate you want to add

Page 40: Working With Sametime For Mobile Devices

Replacing The Default Certificate❖ In my environment I have purchased a wildcard turtlehost.net certificate I want each

server to use

❖ Rather than individually change each server, I can replace the default certificate with my new wildcard once it’s imported

❖ Select the “default” certificate and choose “Replace”

Page 41: Working With Sametime For Mobile Devices

Or..Apply To EndPoints❖ If I want to apply different certificates to different servers

I can do this by mapping the server endpoints to each one

Page 42: Working With Sametime For Mobile Devices

You MUST map both the inbound and outbound endpoints , sync and restart the servers

Page 43: Working With Sametime For Mobile Devices

Beware! 4096 Certificates❖ WebSphere Application Server does not support 4096

certificates out of the box

❖ Previously if you attempted to add one you would get an error “RSA Premaster Secret” and it would refuse to add

❖ Now you don’t get the error, it does add

❖ It just doesn’t work

❖ There’s an easy fix

Page 44: Working With Sametime For Mobile Devices

Unrestricted Java Policy Files❖ Downloaded the unrestricted java policy files from IBM Fix Central

❖ There are two files local_policy.jar and US_export_policy.jar that overwrite those in

❖ <websphere install directory>/java/jre/lib/security

❖ Shutdown your servers

❖ Replace the files

❖ Start the servers

❖ Not doing this and deploying 4096 certificates will lead to

❖ servers being unable to talk to each other

❖ you being unable to stop your servers cleanly

❖ audio and video not working

Page 45: Working With Sametime For Mobile Devices

Chat Policies

Page 46: Working With Sametime For Mobile Devices

Meeting Policies

❖ There are no specific policy settings for mobile users in Meeting Rooms

❖ Mobile specific settings are in the Meeting server configuration itself as they apply to all users

❖ Meeting policies apply to a user whether they are on a mobile device or not

Page 47: Working With Sametime For Mobile Devices

Media Policies❖ The line rate will affect how much video data is broadcast

to the mobile client

Page 48: Working With Sametime For Mobile Devices

Client Behaviour

Page 49: Working With Sametime For Mobile Devices

Apple Push Notification Service❖ To enable push notifications for iOS devices you must allow traffic outbound

❖ gateway.push.apple.com 2195

❖ feedback.push.apple.com 2196

❖ find the file apns-prod.pkcs12 which is on the Proxy server node

❖ <websphere profile>/config/cells/cellName/nodes/stproxyPNNodename/apns-prod.pkcs12

❖ Copy it to the Node directory for any Sametime Proxy server under the Deployment manager e.g.

❖ /STSCDMgrProfile/config/cells/balticcell/nodes/stproxynodename

❖ Always check fix central for an updated version of this certificate which needs to be deployed

Page 50: Working With Sametime For Mobile Devices

Google Cloud Messaging❖ Used for Sametime notifications on Android devices

❖ Use “Retrieve from port” in the Trust Store to bring the Google certificate into your deployment manager

Page 51: Working With Sametime For Mobile Devices

Google Cloud Messaging

Page 52: Working With Sametime For Mobile Devices

Tablet

Phone

Page 53: Working With Sametime For Mobile Devices

TabletPhone

Page 54: Working With Sametime For Mobile Devices

Tablet

Contact list

audio & video if you are both ableRecent audio and

video calls

Page 55: Working With Sametime For Mobile Devices

iOS Meetings

Phone - add files

Phone

Page 56: Working With Sametime For Mobile Devices

Tablet

Screen sharing with pointer activity

Conference dial in

Page 57: Working With Sametime For Mobile Devices

Phone landscape mode

Phone portrait mode

Page 58: Working With Sametime For Mobile Devices

Creating A Meeting❖ Shared files are commonly URLs or Photos

❖ The mobile application can’t access the mobile file system

Page 59: Working With Sametime For Mobile Devices

Whiteboard Meeting on the iPad

Page 60: Working With Sametime For Mobile Devices

Video Meeting on the iPad

click to call via phone

(not my number :-))

Page 61: Working With Sametime For Mobile Devices

Pre-Configuring Clients❖ Create a custom URL for users that will provision their mobile chat

client

❖ sametime://@stproxy.turtlehost.net:443/?AddCommunity&ssl=true

❖ creates a new community for the server stproxy.turtlehost.net using the secure 443 port and prompts the user for their name

❖ Other optional parameters include

❖ savePassword (true/false)

❖ communityName (if you want to give it a specific name)

Page 62: Working With Sametime For Mobile Devices

Sharing Meeting Server Configuration

Sharing options also available on Android devices

Page 63: Working With Sametime For Mobile Devices

Troubleshooting

Page 64: Working With Sametime For Mobile Devices

Trusted IPsLong time bug.

When WAS writes the Trusted IPs as a string

rather than a list

Until this is fixed by saving the

document in stconfig.nsf nothing

will work

Page 65: Working With Sametime For Mobile Devices

Trusted IPs

❖ This has been a recurring problem since 8.5.2

❖ With this bug if you change the Trusted IPs in WebSphere the next time the Community server is restarted, they will be broken

❖ On 9.0.1 I’ve also seen an error where a single trusted ip is listed with a “.” at the end, causing it to fail

Page 66: Working With Sametime For Mobile Devices

Routing To The Correct Server❖ Regardless which Community server you configure the Sametime

Proxy server to use in its deployment plan

❖ It can and will connect to any server in the Domino domain configured as a “Sametime” server

❖ Edit the Sametime Proxy configuration to force routing to a specific server, servers or cluster

❖ Check the SystemOut.log on the Sametime Proxy server to determine which server it is trying to connect to

❖ Check the sametimexxx.log in the \Domino\Trace directory to verify if connections are being refused and why

Page 67: Working With Sametime For Mobile Devices

This is left empty on install so by default all domain

Sametime servers can be consumed

Page 68: Working With Sametime For Mobile Devices

Re-Mapped Virtual Host

❖ During fix updates or patches it’s common for the Virtual Hosts of each application to be reset to “default_host” instead of the specific one we created

❖ If you get an error 500 or “SRVE0255E: A WebGroup/Virtual Host to handle /mapping has not been defined” these are commonly associated with an incorrect virtual host

Page 69: Working With Sametime For Mobile Devices

Bandwidth❖ The largest consumption of resource for a Sametime

Proxy Server is the network

❖ If the server is virtualised, make sure the network card assigned isn’t shared

❖ Monitor the network traffic to the server

❖ Audio and Video streams on mobile services are sent via the Sometime Proxy server which was probably not designed for media traffic

Page 70: Working With Sametime For Mobile Devices

Mobile Bandwidth

❖ There is a maximum number of video feeds that are supported for a Meeting on mobile devices

❖ the setting (which can’t be changed) is 4 + you

❖ This can be further limited if bandwidth goes beyond the configured allowable amount

Page 71: Working With Sametime For Mobile Devices

Media Using The Wrong Server❖ Random media errors can be the result of the Conference Manager

attempting to connect to the wrong Community Server

❖ If everything else appears started with no errors, verify the SystemOut.log of the Conference Manager for any errors relating to other servers

❖ If a server exists in the domain (Domino Directory) and has “Is This A Sametime Server?” field marked as “yes” it will be consumed by the servers in the SSC

Page 72: Working With Sametime For Mobile Devices

Questions?


Recommended