When using the X Window System, you can set the cursor color in the [[Xresource?]] `Emacs.cursorColor’, for example with this command:
echo 'Emacs.cursorColor: #a00000' | xrdb -override
or persistently by adding the Emacs.cursorColor: #a00000 line to your ~/.Xresources file.
If you are using ViperMode, this setting practically takes precedence over any Emacs-internal customization settings; I think Viper restores the Xresource whenever switching to vi-mode.
See also: WikiPedia:Cursor (computing)