Eu normalmente uso o seguinte:
find . -type f -print0 | xargs -0 sudo chmod 440
find . -type d -print0 | xargs -0 sudo chmod 555
No entanto, isso não leva em conta os executáveis. Eu estava pensando em fazer algo assim para arquivos:
find . -type f -print0 | xargs -0 sudo chmod ug+r ug-w o-rwx
Mas ainda são dois comandos e não tenho certeza se esse é o melhor caminho. Talvez alguém tenha uma proposta melhor.