Permissões de arquivos retas devem fazer o truque. Basta tornar o arquivo legível pelo usuário que o cron é executado como e não por qualquer outra pessoa.
chmod [restricted-user]:[restricted-group] 640
deve fazê-lo.
Eu tenho um arquivo queue.php
que eu configurei como um cron job. Eu não quero que os usuários possam acessá-lo. Como posso fazer isso?
Dependendo das dependências externas, geralmente faço isso restringindo as permissões no arquivo no lado do Linux e colocando o arquivo fora da raiz da web pública para garantir que ele não possa ser acessado por ninguém, exceto o servidor.
Se, por algum motivo, o arquivo não puder existir fora da raiz da web (talvez devido a uma restrição openbasedir ou algum tipo de problema de pathing), as permissões unix diretas sugeridas por Wesley David farão o truque.
Você também pode usar o .htaccess ou mesmo o próprio php para restringir a forma como o script pode ser executado.