Maximo maxsessions showing Server IP instead of Client IP

MAXSESSIONS table shows the current list of user sessions and also contains client Hostname and IP addresses. Depending on the implementation architecture of webserver, firewall, load balancer etc the  client IP in maxsessions table might show only the server IP all the time. This is due to the HTTP XFF header which may not be getting forwarded correctly for some reason.  In our case, one of our clients faced this issue and I had to forcibly set header using a rewriterule in HTTP server.

Go to the HTTP server directory. Usually something like <installation_path>/IBM/HTTPServer/conf/httpd.conf

Added the below lines in httpd.conf. Also make sure that the mod_rewrite.so and mod_headers.so mods are enabled in the same file and not commented out.

####### set "X-Forwarded-For" header as Client IP######

#set XFF header to get the Client IP address in Max Sessions table

RewriteEngine on

RewriteRule ^(.*) - [E=CLIENTIP:%{REMOTE_ADDR},L]

RequestHeader set x-forwarded-for %{CLIENTIP}e

I also had to set the maximo's system property mxe.system.usingLoadBalancer=1 which was 0 by default. It didn't require any restart only live refresh.

After making these changes just restart the webserver alone and changes would take effect and Client IP addresses started appearing correctly in Max sessions table. One more problem this solves is that sometimes due to multiple login attempts maximo can block that particular IP addresss. Earlier it would have blocked everyone's access to maximo. After fixing this, only that particular would get blocked.

Comments

Popular posts from this blog

BMXAA6713E - The record could not be retrieved from the database. Error

Rebuilding Maximo Text Indexes due to Query performance issues

List of things checked by Maximo Integrity checker