X-Git-Url: http://git.plutz.net/?a=blobdiff_plain;f=modules%2Fsmb_nis.mk;h=d11d00b9a14a5416743ce3e9e34c52a1f656b13d;hb=057a327eef62fb3371ca1aa73bdd18cb7c5828de;hp=a940d1de0737ed42dedefcb570cf9ce644b05fe2;hpb=f9427bc88f337f8a43983326293ec391a136200d;p=blast diff --git a/modules/smb_nis.mk b/modules/smb_nis.mk index a940d1d..d11d00b 100644 --- a/modules/smb_nis.mk +++ b/modules/smb_nis.mk @@ -1,12 +1,18 @@ -PACKAGES += cifs-utils libpam-mount libpam-script lxdm nis nscd samba-common-bin usermode +PACKAGES += cifs-utils libpam-mount libpam-script lightdm nis nscd samba-common-bin usermode ifndef nis_server nis_server := nismaster endif +ifndef nis_domain + nis_domain := ${nis_server} +endif +ifndef smb_server + smb_server := ${nis_server} +endif define DEBCONF += -nis nis/domain string .${nis_server} +nis nis/domain string ${nis_domain} endef export smb_nis_pamscript smb_nis_pammount @@ -14,9 +20,10 @@ export smb_nis_pamscript smb_nis_pammount define smb_nis_pamscript := #!/bin/sh +# forced through bash, to hide euid from smbpasswd /bin/bash -c ' printf "%s\n" "$$PAM_OLDAUTHTOK" "$$PAM_AUTHTOK" "$$PAM_AUTHTOK" \ - | smbpasswd -sr ${nis_server} -U "$$PAM_USER" + | smbpasswd -sr ${smb_server} -U "$$PAM_USER" ' exit $? @@ -26,7 +33,7 @@ endef define smb_nis_pammount := - + @@ -41,21 +48,22 @@ _smb_nis: ${CFGROOT}/opt/pam_script/pam_script_passwd ${CFGROOT}/etc/security/pa _smb_nis: ${CFGROOT}/etc/yp.conf ${CFGROOT}/etc/defaultdomain _smb_nis: ${CFGROOT} - sed -Ei 's;^(passwd:|group:|shadow:|gshadow:) *;\1 nis ;' $${CFGROOT}/etc/nsswitch.conf + sed -Ei 's;^(passwd:|group:|shadow:|gshadow:).*$$;\1 files nis;' $${CFGROOT}/etc/nsswitch.conf + sed -Ei '/pam_(script|mount).so/d' $${CFGROOT}/etc/pam.d/common-* printf '\nauth optional pam_mount.so\n' >>$${CFGROOT}/etc/pam.d/common-auth printf '\nsession optional pam_mount.so\n' >>$${CFGROOT}/etc/pam.d/common-session printf '\npassword required pam_script.so dir=/opt/pam_script\n' >$${CFGROOT}/etc/pam.d/common-password -${CFGROOT}/opt/pam_script/pam_script_passwd: ${CFGROOT} +${CFGROOT}/opt/pam_script/pam_script_passwd: ${CFGROOT} .FORCE mkdir -p "$(dir $@)" printf '%s' "$${smb_nis_pamscript}" >"$@" -${CFGROOT}/etc/security/pam_mount.conf.xml: ${CFGROOT} +${CFGROOT}/etc/security/pam_mount.conf.xml: ${CFGROOT} .FORCE mkdir -p "$(dir $@)" printf '%s' "$${smb_nis_pammount}" >"$@" -${CFGROOT}/etc/yp.conf: ${CFGROOT} +${CFGROOT}/etc/yp.conf: ${CFGROOT} .FORCE printf 'ypserver %s\n' "${nis_server}" >"$@" -${CFGROOT}/etc/defaultdomain: ${CFGROOT} - printf '.%s\n' "${nis_server}" >"$@" +${CFGROOT}/etc/defaultdomain: ${CFGROOT} .FORCE + printf '%s\n' "${nis_domain}" >"$@"