Selinux és a pam_mkhomedir esete (CentOS 6.3)

 ( zeller | 2013. március 9., szombat - 14:42 )

Elkezdtem az IPA-szerverrel komolyabban ismerkedni, több okból is, és kellemesen belefutottam abba a "jóságba", hogy az LDAP-os usernek home könyvtárat kell csinálni az első login során. Ez selinux nélkül sima ügy, a pam_mkhomedir szépen működik. Bekapcsolt selinux esetén viszont "gyárilag" nem, a könyvtár sem készül el, és a login sem lesz sikeres természetesen. Megoldás: saját policy-t kreálni.

A /etc/pam.d/sshd tehát megvan:

session    required     pam_mkhomedir.so skel=/etc/skel umask=0022

Néhány kísérlet, touch /.autorelabel && reboot után még egy kör a grep mkhomedir_helpe /var/log/audit/audit.log | audit2allow -M idebele; vi idebele.te mágiával, és úgy tűnik, sikerült működő my_mkhomedir_helper.te policy-t alkotni:

module my_mkhomedir_helper 1.2.1;

require {
        type home_root_t;
        type sshd_t;
        class dir { write create add_name setattr };
        class file { open write create setattr };
}

#============= sshd_t ==============
allow sshd_t home_root_t:dir { write create add_name setattr };
allow sshd_t home_root_t:file { open write create setattr };

Innen már csak egy ugrás:

checkmodule -M -m -o my_mkhomedir_helper.mod my_mkhomedir_helper.te 
semodule_package -o my_mkhomedir_helper.pp -m my_mkhomedir_helper.mod 
semodule -u my_mkhomedir_helper.pp 

És az ssh után:

[eteszt@ipaserver /]$ ls -l /home/
total 4
drwxr-xr-x. 3 eteszt  eteszt  4096 Mar  9 13:32 eteszt
[eteszt@ipaserver /]$ ls -la /home/eteszt/
total 20
drwxr-xr-x. 2 eteszt eteszt 4096 Mar  9 13:33 .
drwxr-xr-x. 4 root   root   4096 Mar  9 13:18 ..
-rw-r--r--. 1 eteszt eteszt   18 Mar  9 13:18 .bash_logout
-rw-r--r--. 1 eteszt eteszt  176 Mar  9 13:18 .bash_profile
-rw-r--r--. 1 eteszt eteszt  124 Mar  9 13:18 .bashrc
[eteszt@ipaserver ~]$

Működik, lehet, hogy túl "engedékeny" a policy, de szerintem még mindig jobb, mint teljesen kikapcsolni a selinuxot.

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

Az elso kodblokkal az volt a baj, hogy [/session] -nel zartad le es nem [/code] -dal.

Egyebkent koszi az infot.
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant. | Gentoo Portal

Köszi, javítva.