It is likely the replication agent process account does not have the required permissions and/or you are trying to replicate across untrusted domains.
Replication across non-trusted domains or workgroups can be done using Windows Authentication by configuring pass-through authentication.
Create a local Windows account on both the Publisher and Subscriber that has the same username and password. Use this account for the replication agent process account and have the connections to the publisher, distributor, and/or subscriber impersonate this account. Ensure the account has the permissions required in Replication Agent Security Model.
This approach is covered in the section Use Windows Authentication to Set Up Replication Between Two Computers Running SQL Server in Non-Trusted Domains in HOW TO: Replicate Between Computers Running SQL Server in Non-Trusted Domains or Across the Internet.