AFS + Kerberos + SSH + Linux Filipe Cabecinhas facab@rnl.ist.utl.pt 22 de Março de 2006 Correcções de qualquer tipo devem ser enviadas para este endereço
Resumo Este guia indica os passos a seguir para instalar o OpenAFS e o Kerberos5 (clientes) no Ubuntu, de maneira a poder aceder ao sistema de cheiros AFS que é usado no sigma e, graças à Identidade padrão do IST, é possível montar a área de um utilizador a partir de casa, podendo facilmente transferir cheiros para carem acessíveis através do servidor sigma.ist.utl.pt. Com o Kerberos5 e um cliente de SSH suportado também é possível fazer login no cluster sigma sem precisar de password. Versões testadas e conrmadas 1 : Ubuntu 6.06 Dapper Drake (versão ainda em testes na altura do escrito deste tutorial) 1 Se souber de outras versões em que este tutorial funcione (mesmo que com alguns ajustes), por favor contectem-me para eu adicionar essas informações. 2
1 QuickStart Para instalar o software necessário, necessita de ter o universe activo nos repositórios do Ubuntu. Comandos para instalar e congurar o AFS+SSH+Kerberos numa máquina o mais depressa possível (Se não quiser AFS execute apenas os passos 3, 9, o comando kinit do passo 12 e a partir do passo 15): 1. A cache do AFS não pode ser usada numa partição reiserfs. Uma partição ext2/3 é aconselhada. Deve-se montar uma partição com esse tipo de cheiros em /var/cache/openafs. 2. sudo apt-get install openafs-client openafs-krb5 openafs-modules-source 3. sudo apt-get install krb5-cong krb5-user AFS cell: ist.utl.pt Cache (KB): 50000 (Pode ser mudado, mas o valor por omissão é aceitável). Run Openafs client now and at boot: Yes Look up AFS cells in DNS: Yes Encrypt authenticated trac with AFS leserver: Yes Dynamically generate the contents of /afs: Yes Use fakestat to avoid hangs when listing /afs: Yes 4. sudo module-assistant prepare openafs-modules 5. sudo module-assistant auto-build openafs-modules 6. sudo dpkg -i /usr/src/openafs-modules-$(uname -r)_*.deb 7. sudo depmod -a 8. sudo /etc/init.d/openafs-client restart 3
9. Inserir/trocar as seguintes linhas (em modo administrador) no cheiro /etc/krb5.conf (se aplicável): Comentar a linha que contém default_realm (colocando um # no início da linha) e colocar a linha default_realm = IST.UTL.PT Comentar as linhas que começam por krb4 A seguir à linha que contém apenas [realms] colocar as seguintes linhas: IST.UTL.PT = { kdc = kerberos1.ist.utl.pt:88 kdc = kerberos2.ist.utl.pt:88 admin_server = kerberos.ist.utl.pt:749 default_domain = ist.utl.pt } A seguir à linha que contém apenas [domain_realm] colocar as seguintes linhas: ist.utl.pt = IST.UTL.PT.ist.utl.pt = IST.UTL.PT Fechar o editor de texto e gravar o cheiro. 10. Acrescentar as seguintes linhas ao cheiro /etc/openafs/cellservdb (Se a primeira já lá estiver, acrescentar as outras logo a seguir): >ist.utl.pt 193.136.128.100 # sigma.ist.utl.pt 193.136.128.33 # 193.136.128.33 193.136.128.34 # 193.136.128.34 193.136.128.35 # 193.136.128.35 193.136.128.36 # 193.136.128.36 193.136.128.37 # 193.136.128.37 193.136.128.38 # 193.136.128.38 11. sudo /etc/init.d/openafs-client restart 12. Sempre que quiser aceder ao AFS e o ticket estiver expirado (ou, neste caso, ainda não existir), executar estes comandos: kinit istxxxxx aklog 4
13. Deve estar tudo a funcionar. Tentar aceder a /afs/ist.utl.pt/users/x/y/istabcxy. Demora um pouco ao establecer a primeira ligação, mas depois de estar ligado, pode-se mexer (quase) à vontade no AFS que ca a uma velocidade boa (tendo em conta que não estamos a trabalhar no computador local). 14. Se não quiser ter login automático no sigma este tutorial terminou. 15. Se quiser ter login automático no sigma por SSH (na altura do escrito deste tutorial apenas funciona no servidor sigma01.ist.utl.pt) instalar o OpenSSH com suporte para Kerberos (em principio o openssh das distribuições recentes tem suporte para Kerberos). 16. Editar o cheiro /.ssh/config e adicionar as seguintes linhas 2 : Host sigma01.ist.utl.pt User istxxxxx GSSAPIAuthentication yes GSSAPIDelegateCredentials yes 17. Ligar ao servidor usando 3 ssh sigma01.ist.utl.pt 2 Quando já funcionar para todos os nós do sigma basta tirar o 01 do nome do servidor 3 Ver nota de rodapé anterior 5
2 Software necessário A fazer: (explicar melhor para que serve cada um) 2.1 OpenAFS 2.2 Kerberos 2.3 OpenSSH 3 OpenAFS autenticado por Kerberos A fazer: explicações verbose 4 SSH autenticado por Kerberos A fazer: explicações verbose 6