That is how email works, any user can send an email to you and it gets delivered to a valid user (or not, as the case may be).
But if this mail is sent through my smtp, I can require a user/pass autentication, can't I?
What you are saying is that any mail sent to me will go through my smtp, so I can't set authentication on it. If so, we cannot stop the spamming we get using a mail address of one of our workers. Am I right?
I'm still not convinced. Sorry because I think I am explaining the problem poorly 
Trying a smtp from google i get the behaviour i want for my server, so I'm sure there is a way.
this is the behaviour i'd like
Code:
test@machine:~$ telnet smtp.google.com 25
Trying 209.85.237.25...
Connected to smtp1.google.com.
Escape character is '^]'.
220 smtp.google.com ESMTP
HELO gmail.com
250 smtp.google.com Hello [xxx.yyy.zzz.49], pleased to meet you
MAIL FROM: testaccount@gmail.com
250 2.1.0 testaccount@gmail.com... Sender ok
RCPT TO: anotheraccount@gmail.com
550 5.7.1 anotheraccount@gmail.com... Relaying denied. IP name lookup failed [xxx.yyy.zzz.49]
RCPT TO: test@mynetwork.com
550 5.7.1 test@mynetwork.com... Relaying denied. IP name lookup failed [xxx.yyy.zzz.49]
this is the one i have
Code:
test@machine:~$ telnet mysmtp.mycompany.com 25
Trying xxx.yyy.zzz.nnn...
Connected to mysmtp.mycompany.com.
Escape character is '^]'.
220 mysmtp.mycompany.com ESMTP Postfix
HELO testserver.com
250 mysmtp.mycompany.com
MAIL FROM: testmail@testcompany.com
250 2.1.0 Ok
RCPT TO: somemail@anothercompany.com
554 5.7.1 <somemail@anothercompany.com>: Relay access denied
RCPT TO: existingmail@mycompany.com
250 2.1.5 Ok
Many thanks for your patience