A solution of oxalic acid in water is very good for removing rust stains, as the first reply said. However, oxalic acid is rather toxic, so I would strongly recommend using rubber gloves, and ensuring that the solution is kept away from anywhere where it could be accidentally injested.
Note that :
a) Non -removal of the stain ... if it has small particles of iron etc. embedded in will gradually cause a hole in the sail .... took me a while to realise that !!!!
b) I have never been able to remove the stains completely, and advise that all cleaners will go some way to solving it - but you MUST thouroughly wash and rinse the sail after ..... otherwise stitching / material will start to fall apart after a while.