Difference between revisions of "Klienter"
(→Inloggning med stackens användare) |
|||
(15 intermediate revisions by 5 users not shown) | |||
Line 5: | Line 5: | ||
=== Ubuntu === | === Ubuntu === | ||
− | I dag är det georg-scheutz samt edvard-scheutz som kör Ubuntu. Här kommer en genomgång av vad som är gjort på dem. | + | I dag är det georg-scheutz samt edvard-scheutz som kör Ubuntu / Mint. Här kommer en genomgång av vad som är gjort på dem. |
==== Installation ==== | ==== Installation ==== | ||
En standardinstallation med swap och /, inga konstigheter. Maskinen dual-bootar Windows. | En standardinstallation med swap och /, inga konstigheter. Maskinen dual-bootar Windows. | ||
En stacken-användare är skapad och är administratör (rättigheter att köra sudo). | En stacken-användare är skapad och är administratör (rättigheter att köra sudo). | ||
+ | |||
+ | ==== Installera några viktiga program för att folks login skall funka ==== | ||
+ | |||
+ | $ sudo apt-get install tcsh twm zsh | ||
==== Installera afs och kerberos ==== | ==== Installera afs och kerberos ==== | ||
− | $ sudo apt-get install openafs-client | + | $ sudo apt-get install openafs-client openafs-modules-dkms |
(stacken.kth.se, 5G cache) | (stacken.kth.se, 5G cache) | ||
$ sudo apt-get install heimdal-clients | $ sudo apt-get install heimdal-clients | ||
Line 26: | Line 30: | ||
==== Inloggning med stackens användare ==== | ==== Inloggning med stackens användare ==== | ||
− | + | Vi behöver libnss-db för att hantera en användardatabas (utan lösenord) på lämpligt vis, libpam-krb5 för att kunna autenticera mot kerberos, och openafs-krb5 för att få afstokens vid inloggning. | |
− | $ sudo apt-get install libpam-krb5 | + | |
+ | $ sudo apt-get install libnss-db libpam-krb5 openafs-krb5 libpam-afs-session | ||
+ | |||
+ | ==== passwd ==== | ||
Det finns ett cron-jobb som hämtar stackens passwd, konventerar den till ett format som passar linux och skapar <code>/etc/stacken/passwd</code> samt <code>/etc/stacken/shadow</code>. shadow är en dummy-fil och innehåller inga hashar. | Det finns ett cron-jobb som hämtar stackens passwd, konventerar den till ett format som passar linux och skapar <code>/etc/stacken/passwd</code> samt <code>/etc/stacken/shadow</code>. shadow är en dummy-fil och innehåller inga hashar. | ||
Line 36: | Line 43: | ||
Vi använder oss av libnns-db för att bygga en databas av passwd och shadow-filerna. Då våra stacken-filer inte ligger på det vanliga stället i /etc/ så måste vi uppdatera lite i en konfigurationsfil. | Vi använder oss av libnns-db för att bygga en databas av passwd och shadow-filerna. Då våra stacken-filer inte ligger på det vanliga stället i /etc/ så måste vi uppdatera lite i en konfigurationsfil. | ||
− | sudo $EDITOR /etc/default/libnss-db | + | $ sudo $EDITOR /etc/default/libnss-db |
Ändra till följande rader | Ändra till följande rader | ||
Line 44: | Line 51: | ||
Det som är kvar nu är att ändra så att vi använder våra nya filer. | Det som är kvar nu är att ändra så att vi använder våra nya filer. | ||
− | sudo $EDITOR /etc/nsswitch.conf | + | $ sudo $EDITOR /etc/nsswitch.conf |
Lägg till "db" i slutet på passwd och shadow-raden. | Lägg till "db" i slutet på passwd och shadow-raden. | ||
Line 57: | Line 64: | ||
Du kan testa att du kan hämta en användare med | Du kan testa att du kan hämta en användare med | ||
− | getent passwd USERNAME | + | $ getent passwd USERNAME |
+ | |||
+ | === Kerberos auth === | ||
Det finns en sak kvar, då vår shadow-fil inte innehöll lösenordshasharna så går det inte att logga in med våra användare än. Det som finns kvar att göra är att använda libpam-krb5 för inloggning. | Det finns en sak kvar, då vår shadow-fil inte innehöll lösenordshasharna så går det inte att logga in med våra användare än. Det som finns kvar att göra är att använda libpam-krb5 för inloggning. | ||
− | sudo $EDITOR /etc/pam.d/common-auth | + | $ sudo $EDITOR /etc/pam.d/common-auth |
Lägg till följande rad överst: | Lägg till följande rad överst: | ||
auth sufficient pam_krb5.so ccache=/tmp/krb5cc_%u | auth sufficient pam_krb5.so ccache=/tmp/krb5cc_%u | ||
+ | |||
+ | ''# Finns det nån config som gör att den där PAM modulen kollar keytabben innan den släpper in folk?'' | ||
+ | |||
+ | Låt /etc/site vara en symlänk som pekar in i afs. site innehåller diverse filer som t.ex. bash_profile. | ||
+ | |||
+ | $ sudo ln -s /afs/stacken.kth.se/common/etc/site /etc/site | ||
+ | |||
+ | Det bör räcka för att du ska kunna logga in i en terminal, ssh. | ||
+ | |||
+ | ==== Om det inte funkar att logga in i X ==== | ||
− | + | Kör bara det här om det inte funkar att logga in (få biljetter) från inlogg i X. | |
− | sudo $EDITOR /etc/gdm/Xsession | + | $ sudo $EDITOR /etc/gdm/Xsession |
Lägg till följande rad på valfritt lämpligt ställe | Lägg till följande rad på valfritt lämpligt ställe | ||
− | . /afs/stacken.kth.se/common/etc/GdmAfsTokensDefault | + | $ . /afs/stacken.kth.se/common/etc/GdmAfsTokensDefault |
Det är ett litet ful-hack som kör afslog. | Det är ett litet ful-hack som kör afslog. | ||
+ | |||
+ | ==== sshd GSSAPIKeyExchange ==== | ||
+ | |||
+ | sudo apt-get install openssh-server | ||
+ | sudo rm /etc/ssh/*key* # de behövs ju inte | ||
+ | sudo /etc/init.d/ssh stop | ||
+ | |||
+ | Lägg till / korrigera följande options i /etc/ssh/sshd_config och stäng av password login: | ||
+ | |||
+ | PasswordAuthentication no | ||
+ | GSSAPIAuthentication yes | ||
+ | GSSAPIKeyExchange yes | ||
+ | GSSAPICleanupCredentials yes | ||
+ | # GSSAPIStrictAcceptorCheck ?? | ||
+ | |||
+ | Fixa lång hostname i filen och verkligheten | ||
+ | |||
+ | Stoppa in datan i HOSTS.TXT och fixa DNS och DHCP | ||
+ | |||
+ | Stoppa in reversuppslagningen i /etc/hosts (optional) | ||
+ | |||
+ | sudo ktutil get -p $USER/admin -r STACKEN.KTH.SE host/`hostname` | ||
+ | |||
+ | /etc/init.d/sshd start | ||
+ | |||
+ | Gjort på edvard, todo på georg. |
Latest revision as of 13:32, 11 August 2024
Stacken har i dag tre kienter (datorer) i lokalen. Den gamla kurt-goedel och de två nya georg-scheutz (soffan) samt edvard-scheutz.
Sätt upp en maskin i Stackens miljö
Ubuntu
I dag är det georg-scheutz samt edvard-scheutz som kör Ubuntu / Mint. Här kommer en genomgång av vad som är gjort på dem.
Installation
En standardinstallation med swap och /, inga konstigheter. Maskinen dual-bootar Windows. En stacken-användare är skapad och är administratör (rättigheter att köra sudo).
Installera några viktiga program för att folks login skall funka
$ sudo apt-get install tcsh twm zsh
Installera afs och kerberos
$ sudo apt-get install openafs-client openafs-modules-dkms (stacken.kth.se, 5G cache) $ sudo apt-get install heimdal-clients (STACKEN.KTH.SE)
Efter det bör du ha fungerande afs och kerberos på maskinen. Eventuellt kanske vi på sikt kan byta ut den lite "trasiga" versionen av heimdal till habas debian/ubuntu-rep. Men det som finns nu funkar.
Syns det inga filer i /afs
så starta openafs med:
$ sudo service openafs-client start
Inloggning med stackens användare
Vi behöver libnss-db för att hantera en användardatabas (utan lösenord) på lämpligt vis, libpam-krb5 för att kunna autenticera mot kerberos, och openafs-krb5 för att få afstokens vid inloggning.
$ sudo apt-get install libnss-db libpam-krb5 openafs-krb5 libpam-afs-session
passwd
Det finns ett cron-jobb som hämtar stackens passwd, konventerar den till ett format som passar linux och skapar /etc/stacken/passwd
samt /etc/stacken/shadow
. shadow är en dummy-fil och innehåller inga hashar.
$ cd /etc/cron.hourly/ $ sudo ln -s /afs/stacken.kth.se/i386_linux6/etc/cron.hourly/update-stacken-passwd-db-deb
Vi använder oss av libnns-db för att bygga en databas av passwd och shadow-filerna. Då våra stacken-filer inte ligger på det vanliga stället i /etc/ så måste vi uppdatera lite i en konfigurationsfil.
$ sudo $EDITOR /etc/default/libnss-db
Ändra till följande rader
ETC = /etc/stacken DBS = passwd shadow
Det som är kvar nu är att ändra så att vi använder våra nya filer.
$ sudo $EDITOR /etc/nsswitch.conf
Lägg till "db" i slutet på passwd och shadow-raden.
passwd: compat db shadow: compat db
Du bör nu kunna testa att det funkar genom att manuellt köra /etc/cron.hourly/update-stacken-passwd-db-deb
som root.
$ sudo /etc/cron.hourly/update-stacken-passwd-db-deb
Du kan testa att du kan hämta en användare med
$ getent passwd USERNAME
Kerberos auth
Det finns en sak kvar, då vår shadow-fil inte innehöll lösenordshasharna så går det inte att logga in med våra användare än. Det som finns kvar att göra är att använda libpam-krb5 för inloggning.
$ sudo $EDITOR /etc/pam.d/common-auth
Lägg till följande rad överst:
auth sufficient pam_krb5.so ccache=/tmp/krb5cc_%u # Finns det nån config som gör att den där PAM modulen kollar keytabben innan den släpper in folk?
Låt /etc/site vara en symlänk som pekar in i afs. site innehåller diverse filer som t.ex. bash_profile.
$ sudo ln -s /afs/stacken.kth.se/common/etc/site /etc/site
Det bör räcka för att du ska kunna logga in i en terminal, ssh.
Om det inte funkar att logga in i X
Kör bara det här om det inte funkar att logga in (få biljetter) från inlogg i X.
$ sudo $EDITOR /etc/gdm/Xsession
Lägg till följande rad på valfritt lämpligt ställe
$ . /afs/stacken.kth.se/common/etc/GdmAfsTokensDefault
Det är ett litet ful-hack som kör afslog.
sshd GSSAPIKeyExchange
sudo apt-get install openssh-server sudo rm /etc/ssh/*key* # de behövs ju inte sudo /etc/init.d/ssh stop
Lägg till / korrigera följande options i /etc/ssh/sshd_config och stäng av password login:
PasswordAuthentication no GSSAPIAuthentication yes GSSAPIKeyExchange yes GSSAPICleanupCredentials yes # GSSAPIStrictAcceptorCheck ??
Fixa lång hostname i filen och verkligheten
Stoppa in datan i HOSTS.TXT och fixa DNS och DHCP
Stoppa in reversuppslagningen i /etc/hosts (optional)
sudo ktutil get -p $USER/admin -r STACKEN.KTH.SE host/`hostname`
/etc/init.d/sshd start
Gjort på edvard, todo på georg.