GNU/Linux >> Linux Esercitazione >  >> Linux

Il comando semanage non modifica il contesto del file

La differenza tra semange e chcon è che chcon è "temporale" se il sistema viene rietichettato i contesti presenti in un file/directory andranno persi, l'utilizzo di semanage rende i contesti selinux persistenti.

Per poter funzionare, devi fornire il percorso completo del file o della directory, ecco perchésemanage fcontext -a -t public_content_rw_t upload/ non funziona ma semanage fcontext -a -t public_content_rw_t "/var/ftp/upload(/.*)? fa; restorecon non richiede il percorso completo.


Questo è il contesto predefinito

[[email protected] ftp]# ll -Zd upload/
drwxr-xr-x. root root unconfined_u:object_r:public_content_t:s0 upload/

Ho provato questo comando per cambiare il contesto

[[email protected] ftp]# semanage fcontext -a -t public_content_rw_t upload/
[[email protected] ftp]# ll -Zd upload/
drwxr-xr-x. root root unconfined_u:object_r:public_content_t:s0 upload/
[[email protected] ftp]# restorecon -R -v upload
[[email protected] ftp]# ll -Zd upload/
drwxr-xr-x. root root unconfined_u:object_r:public_content_t:s0 upload/

Non funziona, ma questo comando scriverà il contesto in /etc/selinux/targeted/contexts/files/file_contexts.local file

vedi qui

# This file is auto-generated by libsemanage
# Do not edit directly.

upload/    system_u:object_r:public_content_rw_t:s0

Ora ho provato questo comando (Comando di lavoro )

[[email protected] ftp]# semanage fcontext -a -t public_content_rw_t "/var/ftp/upload(/.*)?"
[[email protected] ftp]# restorecon -R -v upload
restorecon reset /var/ftp/upload context unconfined_u:object_r:public_content_t:s0->unconfined_u:object_r:public_content_rw_t:s0
Now context is changed.
[[email protected] ftp]# ll -Zd upload/
drwxr-xr-x. root root unconfined_u:object_r:public_content_rw_t:s0 upload/

Ma davvero non so perché funzioni, vedi la differenza nel comando.

Ho trovato la risposta nella pagina man di man ftpd_selinux

semanage fcontext -a -t public_content_rw_t "/var/ftpd/incoming(/.*)?"

Linux
  1. In che modo Linux gestisce più separatori di percorsi consecutivi (/home////nomeutente///file)?

  2. dos2unix:comando non trovato

  3. nano:comando non trovato

  4. chmod:comando non trovato

  5. ordina:comando non trovato

tune2fs:comando non trovato

fsck:comando non trovato

coda:comando non trovato

tocco:comando non trovato

Quando dovrei usare /dev/shm/ e quando dovrei usare /tmp/?

echo o print /dev/stdin /dev/stdout /dev/stderr