Estou surpreso que ninguém tenha mencionado o arquivo .netrc . Primeiro, crie o arquivo se ele não existir e defina permissões seguras:
touch ~/.netrc
chmod 600 ~/.netrc
Você pode adicionar o nome do host, nome de usuário e senha em uma única linha:
echo 'machine example.com login casper password CasperPassword' >> ~/.netrc
Então, quando você executar wget https://example.com e o servidor responder com 401 Authorization Required , o wget tentará novamente com o nome de usuário e senha do arquivo ~/.netrc .
Ao usar isso do cron, certifique-se de ter o diretório HOME correto. Muitas vezes, o cron define HOME=/ (nesse caso, você teria que criar o arquivo como /.netrc , mas é melhor definir um HOME adequado no início do seu script, como export HOME=/root ).
Você pode especificar vários hosts em ~/.netrc , um por linha. Mais informações em man netrc .