Il fatto e' che dipende da dove mandi la mail.
Se usi il server sul tuo pc allora sull'smtp ti conviene usare il server smtp fornito dal provider e comunque se non effettu l'autenticazione potrebbe essere che il server ti rifiuti le email.
Se monti il sistema su server remoto allora ti conviene usare il servizio fornito dal server e usare la loro configurazione dell'smtp.
Senno devi effettuare una connessione diretta al server ftp sfruttando le funzioni di connessione smtp di php.
Per fare cio' puoi usare la classe mime mail ( io la uso perche' fornisce gia' tutto per inviare le email anche la possibilita' di configurarla per effettuare l'invio tramite server ftp esterni), oppure configurare e autenticare la connessione a mano su server esterno.
Per esempio per inviare mail con l'smtp di google devi autenticarti prima e sfruttare un account esistente.
Nel caso dai un occhio qui