Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in
Celebration

Earn badges and make progress

You're on your way to the next level! Join the Kudos program to earn points and save your progress.

Deleted user Avatar
Deleted user

Level 1: Seed

25 / 150 points

Next: Root

Avatar

1 badge earned

Collect

Participate in fun challenges

Challenges come and go, but your rewards stay with you. Do more to earn more!

Challenges
Coins

Gift kudos to your peers

What goes around comes around! Share the love by gifting kudos to your peers.

Recognition
Ribbon

Rise up in the ranks

Keep earning points to reach the top of the leaderboard. It resets every quarter so you always have a chance!

Leaderboard

Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,463,664
Community Members
 
Community Events
176
Community Groups

Applications won't authenticate with Crowd after moving to Windows Server 2016.

Hi,

We've been moving all our applications from a Windows 7 box to a Windows Server 2016 VM, and everything but Crowd has been easy.

Crowd boots just fine, and I can log in to it.

When I try to log into an application, the authentication fails.
The error I get is 

2018-11-07 13:00:17,538 https-openssl-nio-8096-exec-14 ERROR [[Catalina].[localhost].[/crowd].[default]] Servlet.service() for servlet [default] in context with path [/crowd] threw exception
java.lang.RuntimeException: java.net.UnknownHostException: 192.168.111.202:64309: invalid IPv6 address
at com.atlassian.crowd.manager.validation.XForwardedForUtil.getTrustedAddress(XForwardedForUtil.java:39)

This makes no sense. I have no idea why it's trying to parse an IPv4 address as IPv6.
I also have no idea what the port is.

To explain the set up, we have IIS running on a machine which reverse proxies to the Server 2016 box (192.168.111.202).

Crowd has an additional adaptor listening to port 8096, which has the SSL connection stuff in it, and the proxy pass. 

The original Windows 7 has both IPv4 and IPv6 enabled, which the Server 2016 box also has.

Does anyone know how to fix this?

I'm really struggling trying to find anyone with the same problem.

 

Kind regards,

Seb

 

1 answer

1 accepted

0 votes
Answer accepted

So I've worked out what my issue is.

In IIS, the Application Request Routing proxy settings have an option for including the TCP port from the client IP in the X-Forwarded-For header.

If I disable this, Crowd no longer views this as an IPv6 address, and works correctly.

My assumption is that the code is looking for the presence of the colon to determine if the IP address is IPv6. Because the port was included, this was tricking it into thinking it was.

Suggest an answer

Log in or Sign up to answer
TAGS

Atlassian Community Events