Файл ~/.netrc позволяет запоминать логин и пароль и создавать макросы для команды ftp:
machine ftp.freebsd.org
login anonymous
password edwin@mavetju.org
machine myownmachine
login myusername
password mypassword
macdef uploadtest
cd /pub/tests
bin
put filename.tar.gz
quit
macdef dailyupload
cd /pub/tests
bin
put daily-$1.tar.gz
quit
Не забудьте сменить файлу права доступа, чтобы ваши пароли не подсмотрели посторонние:
$ chmod 0600 ~/.netrc
Подробнее о синтаксисе .netrc можно прочитать здесь.
Этот же файл для аутентификации понимает Net::FTP