....la prima parte dell'articolo è a questa pagina |
Installazione di Domino 11 Server
Io ho creato un server all-in-one che ospita sia il communty che il proxy.
La prima cosa da fare è generare l’ID del nuovo server Sametime 11 come addictional server che ospiterà sametime 11 Community + Sametime Proxy.
Procediamo con la classica installazione di Domino 11 su Linux… vi ricordo solamente che viene richiesto come prerequisito perl che in Centos si installano dai repositori con i classici comandi:
[root@stdomino ~] yum install perl
Va creato l’utente notes che eseguirà Domino con i comandi
# useradd -d /home/notes -m notes
# passwd notes
Una volta installato e configurato domino nei path standard proposti nel wizard di HCL (ve lo consiglio per andare rapidi) potete installare il fantastico script di daniel nashed per la gestione di domino come servizio in Linux.
Daniel ha realizzato l’installer automatico che con ./install_script che vi semplificherà la vita (basta installare domino nei path standard) e dal quel momento il nostro server domino è registrato come demone (servizio per chi lavora con windows) ed armato in automatico…
Lanciando dei semplici comandi potremo vedere la console di domino, avviare, fermare o killare il server domino (in realtà ci sono altri comandi ma mi limito solamente a questi)
[root@stdomino ~] service rc_domino console (per vedere la console)
[root@stdomino ~] service rc_domino start (per avviare manualmente domino)
[root@stdomino ~] service rc_domino stop (per fermarlo)
[root@stdomino ~] service rc_domino kill (per killare il server)
Fermare il server domino con il comando
[root@stdomino ~] service rc_domino stop
Installazione di Sametime Community Server 11
Una volta che avrete scompattato Sametime 11 Community … vi troverete con due folder GSKit e Server
Nella cartella Server dove è stato scompattato sametime community eseguite il comando
#nano installer.properties
e valorizzate con le seguenti informazioni il file:
# This file was built by the Replay feature of InstallAnywhere.
# It contains variables that were set by Panels, Consoles or Custom Code.
DataInstallDir=/local/notesdata
UNIX_UserName=notes
UNIX_GroupName=notes
UNIX_ServerName=YOUR SERVER SAMETIME
#Directory Selection
#-------------------
DIRECTORY_TYPE_DOMINO=1
DIRECTORY_TYPE_LDAP=0
LDAP_SERVER=
LDAP_PORT=
ADVANCED_LDAP_CONFIG=0
ST_BRANDING_INFO=entry
# Install -------------------
-fileOverwrite_/tmp/156305.tmp/stnotesinstallutilities_linux64=Yes
-fileOverwrite_/tmp/156305.tmp/stnotesinstallutilities.jar=Yes
-fileOverwrite_/tmp/156305.tmp/stnotesinstallutilities.dll=Yes
-fileOverwrite_/tmp/156305.tmp/stinstallutilities.dll=Yes
-fileOverwrite_/tmp/156305.tmp/vcredist_x64.exe=Yes
-fileOverwrite_/tmp/156305.tmp/UnixSetNotesFieldValue.sh=Yes
-fileOverwrite_/local/notesdata/_HCL Sametime Server 11.0.0_installation/Change HCL Sametime Server 11.0.0 Installation.lax=Yes to All
Per installazione Sametime in modalità silente lanciare ora il comando (usate il parametro -f )
./install.bin -i silent -f installer.proprierties
Prima di avviare Domino ricordasi di alcune cose per evitare di avere problemi ed errori in sametime:
- Ricordarsi di disabilitarae DA.NSF dal server domino di sametim
- Importante durante l’installazione di sametime che il server Domino abbia l’hostname/IP risolvibile
Infine ricordarsi di attivare manualmente aprendo stconfig.nsf il flag per gestire la Chat Logging Flax (metterlo in relax.. di default è off)
Installazione di sametime proxy
estrarre il pacchetto e copiarlo in /opt/sametimeproxy
rendere eseguibile il file install.sh (chmod 0755 ./install.sh)
Far partire ora il proxy di sametime come servizio
HCL non lo specifica nella documentazione ma è fondamentale che il proxy parta come servizio in caso di riavvio della macchina.
Per poterlo fare ho seguito le semplici regole di tomcat trovare in rete.
Aggiungere un utenza con cui partirà il servizio del proxy (stproxy è l’utente che creerò)
[root@stdomino ~] sudo useradd -m -U -d /opt/sametimeproxy -s /bin/false stproxy
fare in modo che l’utenza stproxy sia il proprietario della folder /opt/sametimeproxy
[root@stdomino ~] sudo chown -R stproxy: /opt/sametimeproxy
creare il system service file configuration
[root@stdomino ~] sudo nano /etc/systemd/system/stproxy.service
ed inserire questo
[Unit]
Description=ST Proxy Tomcat 9 servlet container
After=network.target
[Service]
Type=forking
User=stproxy
Group=stproxy
Environment="JAVA_HOME=/opt/sametimeproxy/jdk8u222-b10-jre"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"
Environment="CATALINA_BASE=/opt/sametimeproxy"
Environment="CATALINA_HOME=/opt/sametimeproxy"
Environment="CATALINA_PID=/opt/sametimeproxy/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
ExecStart=/opt/sametimeproxy/bin/startup.sh
ExecStop=/opt/sametimeproxy/bin/shutdown.sh
[Install]
WantedBy=multi-user.target
Ricaricare la system configuration con il comando
[root@stdomino ~] sudo systemctl daemon-reload
Abilitare il servizio stproxy
[root@stdomino ~] sudo systemctl enable stproxy
Avviare il servizio stproxy
[root@stdomino ~] sudo systemctl start stproxy
Mettere sametime proxy davanti un reverse proxy NGINX applicando SSL
Mettere tomcat dietro un reverse proxy NGINX è molto semplice e non richiede grandi complessità.
basta seguire questa piccola tips:
aggiungere nel file /opt/sametimeproxy/conf/server.xml
<Valve className="org.apache.catalina.valves.RemoteIpValve" internalProxies="127\.0\.[0-1]\.1" remoteIpHeader="x-forwarded-for" requestAttributesEnabled="true" protocolHeader="x-forwarded-proto" protocolHeaderHttpsValue="https"/>
Dove al posto di 127.0.0.1 va indicato l’IP del vostro reverse proxy NGINX.
E modificare la linea sotto aggiungendo i parametri proxyPort e scheme
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
proxyPort="443"
scheme="https"/>
NGINX va configurato nella modalità classica facendo redirezionare alla porta 8080 di tomcat ricordandosi di attivare http 1.1
server {
listen 443 ssl
server_name sametime.yourcompany.com;
client_max_body_size 100m;
access_log /var/log/nginx/sametime_yourcompany_com_access.log main;
error_log /var/log/nginx/sametime_yourcompnay_com_error.log;
proxy_read_timeout 240;
proxy_redirect off;
proxy_buffering off;
include /etc/nginx/conf.d/ssl.conf; #configurazion SSL
location / {
proxy_http_version 1.1;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host
proxy_set_header X-Forwarded-Proto $scheme;
add_header Front-End-Https on;
proxy_pass http://IPSAMETIME:8080
}
}
Abilitazione mobile (verrà poi fixato nella 11.0.1)
Esiste un bug legato all’accesso mobile per chi utilizza sametime entry che non permette ai client mobili di accedere a sametime per questioni di licenza (in realtà già dalla R10 è possibile avere sametime mobile compreso)
Per il momento HCL suggerisce di editare il file /opt/sametimeproxy/conf/stproxyconfig.xml ed aggiungere il seguente XML
<OverrideCSLUMobileRestriction>true</OverrideCSLUMobileRestriction>
A questo punto puntando su https://sametime.yourcompany.com avremo la nuova schermata di schermata
Gestione delle business card
Abbiamo due modalità di gestione:
1) Utilizzando connections profile (esempio: http://connections_server.example.com/profiles) e quando questa configurazione è utilizzata il community server non è utilizzato e sametimeproxy fa una chiamata direttamente verso il server connections
Per abilitare questa funzionalità, andare ad editare il file /opt/sametimeproxy/conf/stproxyconfig.xml manualmente aggiungendo queste informazioni
<bcard>
<url>http://connections_server.example.com/profiles
</url>
<type>1</type>
</bcard>
2) Se non si utilizza connections profile e si configura sametime in modalità LDAP o Domino Directory va editato un file UserInfoConfig.xml presente nella /local/notedata di Domino e vanno aggiunte queste informazioni all’interno della sezione <Details>
<Detail Id="ImagePath" FieldName="PhotoURL" Type="text/plain" />
<Detail Id="PhotoURL" FieldName="PhotoURL" Type="text/plain" />
ImagePath viene utilizzato dal client Embedded o StandAlone di Sametime client
PhotoUrl viene usato da Mobile e da Inotes/Verse
Il campo PhotoUrl è presente nella names.nsf del contatto di Domino
e definisce un URL http/https della foto del contatto risolvibile in anonymous.
Va infine aggiunte della informazioni nel ParamSets
<ParamsSets>
<Set params="MailAddress,Name,Title,Location,Telephone,PhotoURL,ImagePath,Company" SetId="0"/>
<Set params="MailAddress,Name,Title,Location,Telephone,PhotoURL,ImagePath,Company" SetId="1"/> </ParamsSets>
Riavviare il server sametime communiity e per capire che tutto sta andando basta fare una chiamata diretta alla servlet di sametime community per verificare XML di ritorno
protocol://host_name/servlet/UserInfoServlet?operation=3&setid=1&UserId=User_DN
ad esempio:
http://sametimecommunity.xxx.com/servlet/UserInfoServlet?operation=3&setid=1&userId=cn=Daniele Grillo/O=Grydan
per fare in modo che lo UserInfoConfig.xml venga gestito senza policy va aggiunta la stringa
<ReadStConfigUpdates value=”false”/>
all’interno del tag <UserInformation> (e come server riavviato il community server)
Integrazione con iNotes e VOP
Do per scontato che abbiate configurato sametime con LtpaToken per il trust delle credenziali tra il vostro mail server e sametime.
Sappiate solo che nel caso utilizziate gli internet site per il vostro iNotes/Verse per fare in modo che sametime utilizzi gli internet site dovrete valorizzare nel sametime.ini (/local/notesdata/sametime.ini) due parametri all’interno della [AuthToken]
ST_TOKEN_TYPE must contain the name of the Web SSO document used by the IBM Sametime Community Server. The default value is LtpaToken.
ST_ORG_NAME must contain the organization name that is set in the Web SSO document used by the Sametime Community Server. The default value is an empty organization name.
Per l’integrazione con iNotes
Andare ad editare il documento di configurazione del vostro mailserver su cui gira iNotes ed impostare “Sametime Web Client Integration” valorizzando gli url del vostro proxy (nel mio caso metto sempre NGINX davanti e uso semplici chiamate http e https su porte standard)
Per l’integrazione con Verse on Premise inserire questi parametri nel NOTES.INI del vostro server
INOTES_WA_SAMETIMEPROXYSERVERSSL=https://sametime.yourcompany.com
VOP_GK_SAMETIME=1
VOP_GK_SAMETIME_RICH_CLIENT=1
Conclusioni
L’installazione su Linux non è stata ben documentata ed è per questo motivo che nasce questa guida che potrà essere tradotta ed usata anche da altri (La parte di NGINX e STproxy come servizio sono frutto della mia esperienza e non so se sono supportate da HCL come soluzioni)
Devo dire però che HCL (sia Tony Payne e Trevor Tallackson e Daniel Oliveira) mi hanno supportato tempestivamente e professionalmente nelle prime configurazioni. Grazie ragazzi!!!
Un altro ringraziamento va a Roberto Boccadoro che mi ha suggerito alcune soluzioni ad alcune criticità ed ha pubblicato diversi articoli su sametime 11 nel suo blog che sono stati molto utili (la cache della foto per esempio e la parte di integrazione con VOP che necessita di caratteri maiuscoli).
HCL ha fatto e sta facendo un ottimo lavoro su sametime 11 non c’è che dire…
Manca l’aspetto di gestione delle policy e di alcune parti di configurazione con una Gui semplificata (ora bisogna toccare tutto a mano gli XML e non è proprio il massimo) e la parte audio e video che è in sviluppo e sono sicuro che entrambe le cose arriveranno prestissimo!
Rispetto a WebSphere e DB2 l’installazione è stata notevolmente semplificata e sembra anche che sfrutti molte meno risorse rispetto al passato!
Non vedo l’ora di vedere cosa accadrà nella parte audio e video ma sopratutto anche con Connections 7!
1 Commenti:
Grazie Daniele, inziativa lodevole.
In effeti la documentazione HCL è minimale, servirebbero dei "From zero to hero" sulla V11...