ServerTech CW Series CDU Frustrations

Working on updating some ServerTech CDU firmware today I found that they wouldn’t connect to my fresh new FTP server. I checked my firewall, I checked my server log, and saw that they weren’t authenticating correctly:

Aug 16 16:24:56 bouncer vsftpd[26571]: pam_unix(vsftpd:auth):
authentication failure; logname= uid=0 euid=0 tty=ftp 
ruser=ftpupdate rhost=10.40.2.31  user=ftpupdate

I double checked all the configuration options the FTP client configuration of my ServerTech Switched CW Series 3-phase CDUs. Everything was fine, yet they still wouldn’t authenticate. So I broke out tcpdump on my FTP server to see what was going on.

# tcpdump -i eth2 -A src 10.40.2.31 or dst 10.40.2.31

... useless data removed ...

16:46:01.151736 IP 10.40.0.254.ftp > 10.40.2.31.38224: 
Flags [P.], seq 1:21, ack 1, win 114, options [nop,nop,TS 
val 2280019698 ecr 97006660], length 20
E..H..@.@.=.
(..
(.....P...f/......r.......
..V...4D220 (vsFTPd 2.2.2)

16:46:01.160320 IP 10.40.2.31.38224 > 10.40.0.254.ftp: 
Flags [P.], seq 1:17, ack 21, win 33284, options [nop,
nop,TS val 97006670 ecr 2280019698], length 16
E..D....@.cE
(..
(...P../......z....%......
..4N..V.USER ftpupdate

16:46:01.160330 IP 10.40.0.254.ftp > 10.40.2.31.38224:
 Flags [.], ack 17, win 114, options [nop,nop,TS val 
2280019707 ecr 97006670], length 0
E..4..@.@.=.
(..
(.....P...z/......r1......
..V...4N
16:46:01.160350 IP 10.40.0.254.ftp > 10.40.2.31.38224: 
Flags [P.], seq 21:55, ack 17, win 114, options [nop,nop,
TS val 2280019707 ecr 97006670], length 34
E..V..@.@.=.
(..
(.....P...z/......r.......
..V...4N331 Please specify the password.

16:46:01.183147 IP 10.40.2.31.38224 > 10.40.0.254.ftp: 
Flags [P.], seq 17:40, ack 55, win 33250, options [nop,nop,
TS val 97006700 ecr 2280019707], length 23
E..K....@.c=
(..
(...P../...........qX.....
..4l..V.PASS L0d1jRSKtxhTU5go

16:46:01.224126 IP 10.40.0.254.ftp > 10.40.2.31.38224: 
Flags [.], ack 40, win 114, options [nop,nop,TS val 
2280019770 ecr 97006700], length 0
E..4..@.@.=.
(..
(.....P..../......r1;.....
..W:..4l
16:46:04.819506 IP 10.40.0.254.ftp > 10.40.2.31.38224: 
Flags [P.], seq 55:77, ack 40, win 114, options [nop,nop,
TS val 2280023366 ecr 97006700], length 22
E..J..@.@.=.
(..
(.....P..../......r.......
..eF..4l530 Login incorrect.

Arrrrghhh I see what the problem is. The password was supposed to be “L0d1jRSKtxhTU5gonU”, but the CDU is sending just “L0d1jRSKtxhTU5go”. It has a 16 character limit!

I already ran into a similar issue with the ServerTech Sentry Switch CDU firmware and the main password it uses for logins, it also had a 16 character limit. I should have guessed this was uniform through the whole thing. How annoying, who has a 16 character limit these days and why wouldn’t the config screen mention it?

The point of this article is to show you can use a variety of tools such as tcpdump to debug other people’s appliances and software. Learning these tools will enable you to avoid calling support and going through all of the motions required to debug an issue with a third party.