Linux - Tips
Alasta 14 Janvier 2014 linux bash cli Open Source Security SELinux shell snippet
Description : Quelques astuces du manchot masqué, ou pas ...
- Connaître le nombre de processeurs/coeurs :
# nproc 2
- Connaître l'architecture de la machine :
# arch x86_64
- Formatter la sortie d'une commande :
# mount | column -t /dev/mapper/rootvg01-lv01 on / type ext4 (rw) proc on /proc type proc (rw) sysfs on /sys type sysfs (rw) devpts on /dev/pts type devpts (rw,gid=5,mode=620) tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0") /dev/sda1 on /boot type ext4 (rw) none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
- Un snippet pour les denier SELinux :
Pour voir les denied SELinux il suffit de faire :
# grep deni /var/log/audit/audit.log type=AVC msg=audit(1371304608.555:52): avc: denied { name_bind } for pid=2084 comm="httpd" src=26 scontext=unconfined_u:system_r:httpd_t:s0 tcontext=system_u:object_r:reserved_port_t:s0 tclass=tcp_socket
De plus, la date est au format timestamp, il faut relancer une commande pour trouver la date :
# date -d @1371304608.555 sam. juin 15 15:56:48 CEST 2013
Mettre cette fonction dans votre .bash_profile ou celui de root :
function sedenied () { if [ $# -eq 0 ] then grep deni /var/log/audit/audit.log | awk -F'[(:]' '{$2=strftime("(%Y/%m/%d-%Hh%Mm%Ss:",$2); print $0}' else grep deni /var/log/audit/audit.log.$1 | awk -F'[(:]' '{$2=strftime("(%Y/%m/%d-%Hh%Mm%Ss:",$2); print $0}' fi }
Résultat :
# sedenied type=AVC msg=audit (2013/06/15-15h56m48s: 52) avc denied { name_bind } for pid=2084 comm="httpd" src=26 scontext=unconfined_u system_r httpd_t s0 tcontext=system_u object_r reserved_port_t s0 tclass=tcp_socket
Le code est disponible dans le bash_profile de mon dépôt GitHub.