You will probably need to script using a for loop and awk to get the format of the /etc/shadow file correct.
1) awk -F: ' { print $1 }' < /etc/passwd > user.ids
Depending on the layout, you may need addl data from the passwd file to properly create the shadow file.
2)
for name in 'cat user.ids'
do
awk '{ print $name "put your shadow format here" }' >> shadow.out
done
Something like this may solve your problem. Just make sure that you can duplicate the format of the /etc/shadow file.
IF ALL ELSE FAILS...
You may need to go to the RedHat site and search for conversion from an OS without a shadow file to an OS version with /etc/shadow implemented.