The problem is related to authentication. If I would send an email to a person inside the network it will work OK because authentication is not required their but the moment I want to relay outside the network authentication is required and the user and password is checked to send email. If you look at email programs : outlook, eudora, they all provide an option to allow authentication when sending email and this is in most cases the user and password which is also used to check email.
Note : If I use an SMTP server which is configured not to require authentication which nowadays you don't find anymore because nobody want allow anymore non-authorized people to use their SMTP server to send email because most people used non-secured SMTP servers for spamming purposes