From fedora-docs-commits@redhat.com Wed Jun 10 15:29:02 2015 From: fedora-docs-commits@redhat.com To: docs-commits@lists.fedoraproject.org Subject: selinux-faq selinux-faq-it.xml,NONE,1.1 Date: Sat, 19 Nov 2005 04:42:53 -0500 Message-ID: <200511190942.jAJ9grf6025546@cvs-int.fedora.redhat.com> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0114867497944496519==" --===============0114867497944496519== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Author: tombo Update of /cvs/docs/selinux-faq In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv25530/selinux-faq Added Files: selinux-faq-it.xml=20 Log Message: --- NEW FILE selinux-faq-it.xml --- %FEDORA-ENTITIES-EN; ]>
&FC; &LOCALVER; &SEL; FAQ 2004 &FORMAL-RHI; Wade Karsten &LEGALNOTICE;
&SEL; Note e FAQ Le informazioni in questa FAQ sono pregevoli per coloro che sono nuovi = a &SEL;. Il=20 loro valore =EF=BF=BD=EF=BF=BD apprezzabile anche se siete nuovi alle u= ltime implementazioni di &SEL; in &FC;, poich=EF=BF=BD=EF=BF=BD alcuni comportamenti potrebbero essere differenti da come sapete. Questa FAQ =EF=BF=BD=EF=BF=BD specifica per &FC; &LOCALVER;</tit= le> <para> Se state cercando le FAQ per &FC; 2, fate riferimento a <ulink url=3D"http://fedora.redhat.com/docs/selinux-faq-fc2/" />. </para> </note> <para> Per maggiori informazioni su come funziona &SEL;, come usare &SEL; su d= istribuzioni=20 Linux generiche e specifiche, e come scrivere policy, queste sono risor= se utili: </para> <itemizedlist id=3D"external-link-list"> <title>Lista Link Esterni NSA &SEL; main website — NSA &SEL; FAQ — &SEL; community page — UnOfficial FAQ — Writing SE Linux policy HOWTO — Getting Started with SE Linux HOWTO: the new SE Linux (Debian) &mda= sh; On IRC — irc.freenode.net, #fedora-selinux &FED; mailing list — ; leggi gli archivi o sottoscriviti su Fare cambiamenti/aggiunte alla &FED; &SEL; FAQ Questa FAQ =EF=BF=BD=EF=BF=BD disponibile su http://fedor= a.redhat.com/docs/selinux-faq-fc3/. Per modifiche o aggiunte alle &FED; &SEL; FAQ, usate questo bugzilla template, che precompila la magg= ior parte del rapporto d'errore. Le patches dovranno essere un diff -u rispetto all'XML, disponibile dal CVS (fate riferimento a per dettagli su = come=20 ottenere il modulo fedora-docs/selinux-faq via CVS anonimo; puoi avere solo il modulo fedors-docs/selinux-faq se non vu= oi l'intero albero fedora-dcs.) Altrimenti, semplice testo che mostri prima e dopo =EF=BF=BD=EF=BF=BD sufficiente. Per avere una lista di tutti i rapporti d'errore inerenti questa FAQ, fate r= iferimento a https://bugzilla.redhat.com/bugzilla/showdependencytree.cgi?id=3D118757= . =20 Comprendere &SEL; Cos'=EF=BF=BD=EF=BF=BD &SEL;? &SEL; (Security-Enhanced Linux) in &FC; = =EF=BF=BD=EF=BF=BD un implementazione del mandatory access control nel kernel di Linux che usa il Linux Security Modules (LSM) framework. La sicurezza standard di Linux =EF= =BF=BD=EF=BF=BD basata su un modello definito come discretionary access control. Discretionary access control (DAC) — questo =EF=BF=BD=EF=BF=BD il modello base della sicurezza d= i Linux, e non fornisce protezione da software corrotto o malevolo eseguito come utente normal= e o root. Gli utenti possono assegnare rischiosi livelli di acc= esso ai files che possiedono. Mandatory access control (MAC) — pie= no controllo su tutte le iterazioni del software. Policy defin= ite amministrativamente controllano da vicino le iterazioni fra= utenti e processi con il sistema, e forniscono protezione da software corrotto o malevolo eseguito sotto qualsiasi utente. In un modello DAC, i file e le risorse decisionali sono basate = solamente sull'identit=EF=BF=BD=EF=BF=BD utente e il proprietario degli oggetti.= Ogni utente e programma eseguito da quell'utente ha completa discrezione sugli oggetti dell'ut= ente. Software malizioso o difettoso pu=EF=BF=BD=EF=BF=BD fare qualsi= asi cosa con i files e le risosrse controllate attraverso l'utente che ha avviato i pr= ocessi. Se l'utente =EF=BF=BD=EF=BF=BD il super-user o l'applicazione = =EF=BF=BD=EF=BF=BD setuid o setgid root, il processo pu=EF=BF=BD=EF=BF=BD avere un livello di controllo = root sull'intero file system. Un sistema MAC non soffre di questi problemi. Primo, puoi definire-amministrativamente una policy di sicurezza su tutti i= processi ed oggetti. Secondo, puoi controllare tutti i processi e gli ogge= tti, nel caso di &SEL; mediante il kernel. Terzo, le decisioni sono bas= ate su tutte le informazioni di sicurezza rilevanti disponibili, e non= solo sulla identit=EF=BF=BD=EF=BF=BD utente autenticata. Il MAC sotto &SEL; permette di fornire permessi granulari per t= utti i soggetti (utenti, programmi, processi) ed oggetti (files, devices). In pratica, pensa ai soggetti come processi, ed gli oggetti come lo scopo di un operazione di un processo. Puoi garantire con sicurezza ad un processo= solo i permessi che gli occorrono per eseguire la sua funzione, e niente di p= i=EF=BF=BD=EF=BF=BD. L'implementazione di &SEL; usa un role-based access control (RBAC), che fornisce un astrazione di controllo a livello-utente basata su ruoli, e sui Type Enforcement (TE). = TE usa una tabella (matrice) per manipolare i controlli di accesso= , applicando le regole della policy basate sui tipi di processi ed oggetti. I tipi di proces= so sono chiamati domini, ed un riferimento incrociato sulla matrice dei domini dei processi e del tipo degli oggetti definisce la loro interaz= ione. Questo pu=EF=BF=BD=EF=BF=BD fornire un controllo estremamente granular= e per gli attori in un sistema Linux. Cos'=EF=BF=BD=EF=BF=BD una policy &SEL;? La policy &SEL; descrive i permessi di accesso per tutti i sogg= etti e gli oggetti, esempio, l'intero sistema degli utenti, programmi, e processi ed i files ed i devices su cui agiscono. La policy di &FC; = =EF=BF=BD=EF=BF=BD contenuta in un pacchetto, con una pacchetto sorgente associato. Attua= lmente i pacchetti che contengono le policy sono: selinux-policy-strict-<versio= n-arch>.rpm=20 and selinux-policy-strict-sources-<ve= rsion-arch>.rpm selinux-policy-targeted-<version-= arch>.rpm=20 and selinux-policy-targeted-sources-<= version-arch>.rpm I sorgenti delle policy risiedono in /etc/selinux/policyname/src/polic= y, quando sono installati, ed i files binari delle policy in /etc/selinux/policyname/policy. Il sorgente delle policy non =EF=BF=BD=EF=BF=BD necessario per le inst= allazioni ultra-minimali. La policy per i tipi ed i domini =EF=BF=BD=EF=BF=BD configurata separatam= ente dal contesto di sicurezza per i soggetti e gli oggetti. Cos'=EF=BF=BD=EF=BF=BD la policy targeted di &SEL;? Inizialmente, quando &SEL; fu incluso in Fedora Core, la policy= strict di NSA fu applicata. A scopo di prova, ci=EF=BF=BD=EF=BF=BD aiut=EF=BF=BD=EF= =BF=BD a trovare centinaia di problemi nella strict policy. In seguito, =EF=BF=BD=EF=BF= =BD divenne ovvio che applicare una singola strict policy ai molti ambienti degli utenti &FED; non era fattibile. Amministrare una singola strict policy per qualsiasi cosa diversa dal'installazione standard avrebbe richiesto un esperienza locale superiore. A questo punto, gli sviluppatori &SEL; rividero le loro scelte,= e decisero di adottare una strategia differente. Fu deciso di creare una policy che puntasse a bloccare specifici demoni, specialmente quelli pi=EF=BF=BD=EF=BF=BD vulnerabili agli attacchi o pi=EF=BF=BD=EF= =BF=BD devastanti per il sistema se corrotti o compromessi. Al resto del sistema =EF=BF=BD=EF=BF=BD consentita l'esec= uzione come fosse sotto la sicurezza standard di Linux, esempio, funzionare lo stesso se &SEL;= =EF=BF=BD=EF=BF=BD abilitato o meno. Sotto la policy targeted, molti processi sono eseguiti nel dominio unconfined_t. Come implica il nome, questi processi non sono per lo pi=EF=BF=BD=EF=BF=BD confinat= i dalla policy &SEL;. Questi sono comunque ancora governati dalla sicurezza standard di Linux/UNIX. Specifici demoni di rete hanno policy scritte per loro, e la policy unconfined_t transita su queste policies quando l'applicazione viene avviata. Per esempio, al boot del sistema, init viene eseguito sotto la policy unconfined_t, ma quando viene avviato named, =EF=BF=BD=EF=BF=BD transitato sotto = il dominio named_t ed =EF=BF=BD=EF=BF=BD bloccat= o dalla policy appropriata. Per maggiori informazioni sull'abilitazione e disabilitazione delle po= licy targeted per ogni demone specifico, fate riferimento a . Che demoni sono protetti dalla targeted policy? Attualmente, la lista dei demoni =EF=BF=BD=EF=BF=BD dhcpd, httpd (apache.te), named, nscd, ntpd, portmap, snmpd, squid, and syslogd. I files di policy per questi demoni si trovano in /etc/selinux/targeted/src/policy/domains/program. In futuro, molti demoni saranno aggiunti alla policy di protezi= one targeted. Che demoni aggiungerete alla targeted policy? Che ne dite di Sendmail, Postfix, MySQL, o PostgreSQL? Gli sviluppatori di &SEL; vorrebbero aggiungere eventualmente f= tp e gli agenti di posta elettronica alla targeted policy. Ad esempio, vsftpd potrebbe funzionare in modo simile a login: dopo il log-in, = un nuovo processo =EF=BF=BD=EF=BF=BD eseguito sotto il contesto dell'utente (= contesto utente reale o anonimo). Un problema con gli agenti di posta elettronica =EF=BF=BD=EF=BF= =BD che hanno spesso hanno bisogno di manipolare files nelle home directory utente. Un obbiettivo della targ= eted policy =EF=BF=BD=EF=BF=BD quello di evitare problemi di etichettatura nelle h= ome directory degli utenti. Ci si sta ancora lavorando su. E la policy strict? Funzioner=EF=BF=BD=EF=BF=BD comunque? La policy strict su &FC; funziona. La sfi= da =EF=BF=BD=EF=BF=BD con gli ambienti unici di utenti differenti. Per farla funzionare nel tuo ambiente, avrai bisogno di aggiustare sia la policy che i tuoi sistemi. Per aiutare a rendere semplice l'uso della strict policy, gli s= viluppatori di &SEL; hanno lavorato sul rendere il cambiamento da un policy all'altra semplice. Per esempio, system-config-securitylevel fa una rietichettatura negli scripts di avvio. Cosa sono i file contexts? I file contexts sono usati dal comando setfiles per rendere persistenti le etichette che descrivono il contesto di sic= urezza per un file o una directory. &FC; =EF=BF=BD=EF=BF=BD rilasciato con lo script fixfi= les che supporta tre opzioni: , , e . Questo permette agli utenti di rietichettare il file system senza aver instal= lato il pacchetto selinux-policy-targeted-sources. L'uso della linea di comando =EF=BF=BD=EF=BF=BD molto pi=EF=BF=BD=EF= =BF=BD amichevole rispetto al comando setfiles standard. Come posso vedere il contesto di sicurezza di un file, un utent= e, o un processo? La nuova opzione =EF=BF=BD=EF=BF=BD il meto= do piu immediato per mostrare il contesto di un soggetto o di un oggetto: ls -alZ file.foo=20 id -Z=20 ps -eZ Che differenza c'=EF=BF=BD=EF=BF=BD fra un dominio ed un tipo? Non c'=EF=BF=BD=EF=BF=BD differenza fra un dominio ed un tipo, = comunque il dominio =EF=BF=BD=EF=BF=BD qualche volta usato per riferisi al tipo= di un processo. L'uso del dominio in questo modo discende dal tradizionale modello TE,= dove i domini ed i tipi sono separati. Controllare &SEL; Come installo o non installo &SEL;? Il programma di installazione si comporta basandosi sulle scelt= e che fai nella schermata di Configurazione del Firewall. Di base la policy applicata =EF=BF=BD=EF=BF=BD la targeted, che per scelta pre= definita =EF=BF=BD=EF=BF=BD attiva. Come cambio la policy che sto usando? Cambiare policy non =EF=BF=BD=EF=BF=BD una cosa da prend= ere alla leggera. A meno che tu non stia provando una nuova policy su una macch= ina test a scopo di ricerca, dovresti seriamente considerare la situazione prima di cambiare policy su un sistema in produzione. Il modo di cambiare policy =EF=BF=BD=EF=BF=BD semplice. Quest= o =EF=BF=BD=EF=BF=BD un metodo abbastanza sicuro, ma deve prima essere provato su un sistema test. Un metodo =EF=BF=BD=EF=BF=BD quello di usare system-config-securitylevel per cambiare la policy e impostare il filesystem da rietichettare. La seguente =EF=BF=BD=EF=BF=BD la procedura manuale: Edita /etc/selinux/config e cambia il tipp di policy in SELINUXTYPE=3Dpolicyname. Per essere sicuri che tu possa avere un sistema funzionante= dopo un reboot, setta il modo a SELINUX=3Dpermissive. In quest= o modo SELinux sar=EF=BF=BD=EF=BF=BD eseguito sotto la corretta policy, ma ti pe= rmetter=EF=BF=BD=EF=BF=BD di fare il login se c'=EF=BF=BD=EF=BF=BD qualche problema, tipo il contesto di un= file non correttamente etichettato. Di agli init scripts di rietichettare il sistema al riavvio= con il comando touch /.autorelabel. Riavvia il sistema. Un riavvio pulito sotto la nuova policy permetter=EF=BF=BD=EF=BF=BD a tutti i processi del sistema = di avviarsi nel contesto appropriato, e rivelare qualsiasi problema nel cambiamento = di policy. Conferma che i tuoi cambiamenti abbiano effetto con il coma= ndo sestatus -v. Con il nuovo sistema avvia= to in modalit=EF=BF=BD=EF=BF=BD permissive, controlla /var/log/messages per i messaggi avc: denied. Questi possono indicare un problema che deve essere risolto affinc= h=EF=BF=BD=EF=BF=BD il sistema possa funzionare senza difficolt=EF=BF=BD=EF=BF=BD sotto la= nuova policy. Quando sei soddisfatto che il sistema sia stabile sotto la nuova policy, abilita l'enforcing cambiando SELINUX=3Denforcing. Puoi sia riavviare che eseguire setenforce 1 = per passare in enforcing in tempo reale. Come eseguo il back up dei files da un file system &SEL;? Puoi usare l'utilit=EF=BF=BD=EF=BF=BD star, = che supporta gli attributi estesi che contengono le etichette dei contesti d= i sicurezza. Specifica il formato e ls -Z /var/log/maillog -rw------- root root system_u:object_r:var_log_t /var/log/maillog cd /var/log star -xattr -H=3Dexustar -c -f maillog.star ./maillog* I percorsi assoluti possono sovrascrivere i dati esisten= ti Se usi un percorso assoluto, come /var/log/maillog, quando decompatti l'ar= chivio con star -c -f, i files verranno ripristinati nello stesso perc= orso in cui erano stati archiviati. Il file maillog tenter=EF=BF=BD=EF=BF=BD di scriverli in /var/log/maillog. Potre= sti ricevere un avviso da star se i files che stanno per essere sovrascritti hanno una data pi=EF= =BF=BD=EF=BF=BD recente, ma non potrai contare su questo comportamento. Considera attentamente come costruire gli argomenti d'archivi= azione. Come posso installare la policy strict per default con il kicks= tart? Sotto la sezione %packages, aggiungete selinux-policy-strict. Sotto la sezione %post, aggiungete quanto segue: lokkit -q --selinuxtype=3Dstrict touch /.autorelabel Come abilito/disabilito la protezione &SEL; per uno specifico d= emone sotto la policy targeted? Usa system-config-securitylevel per controll= are i valori Booleani di specifici demoni. Per esempio, se ritieni di aver bisogno di sisabilitare &SEL; per Apache per eseguirlo corrett= amente nel tuo ambiente, puoi disabilitare il valore in system-config-securitylevel. Questo disattiva la transizione della policy definita in apache.te, lasciando rimanere httpd sotto la regolare sicurezza Linux. Come faccio funzionare una directory utente public_ht= ml sotto &SEL;? Questo processo presume che hai abilitato le directories HTML p= ubbliche per gli utenti nella configurazione HTTP di Apache (/etc/httpd/conf/httpd.conf). Questo proc= esso copre solo il servizio di contenuti Web statici. Per maggiori = informazioni su &APACHE; e &SEL;, riferitevi a . Se non l'hai gi=EF=BF=BD=EF=BF=BD, avrai necessit=EF=BF=BD= =EF=BF=BD di creare la directory public_html e popolarla con i files e le cartelle che dovranno essere servite. cd ~ mkdir public_html cp /path/to/content ~/public_html A questo punto, httpd =EF=BF=BD=EF=BF=BD= configurato per servire i contenuti, ma tu continuerai a ricevere un errore 403 forbidden. Questo poich=EF=BF=BD=EF=BF= =BD ad httpd non =EF=BF=BD=EF=BF=BD consentito = di leggere i tipi di sicurezza per le directory ed i files che vengono creati= nelle directory home degli utenti. Per risolvere questo, cambiat= e i contesti di sicurezza della cartella e dei suoi contenuti ricursivam= ente usando l'opzione : =20 ls -Z -d public_html/ drwxrwxr-x auser auser user_u:object_r:user_home_t = public_html chcon -R -t httpd_user_content_t public_html/ ls -Z -d public_html/ drwxrwxr-x auser auser user_u:object_r:httpd_user_cont= ent_t public_html/ ls -Z public_html/ -rw-rw-r-- auser auser user_u:object_r:httpd_user_cont= ent_t bar.html -rw-rw-r-- auser auser user_u:object_r:httpd_user_content_t baz.html -rw-rw-r-- auser auser user_u:object_r:httpd_user_content_t foo.html Potrai notare qualche tempo dopo che il campo user, imposta= to a user_u, =EF=BF=BD=EF=BF= =BD cambiato in system_u. Ci=EF=BF=BD=EF= =BF=BD non avr=EF=BF=BD=EF=BF=BD effetto su come funziona la policy ta= rgeted; il campo che conta =EF=BF=BD=EF=BF=BD il campo tipo. Adesso sarai in grado di servire pagine web statiche. Se continuerai ad avere errori, controlla di vedere che la Boo= leana che abilita le home directories utente sia abilitata. Questo p= u=EF=BF=BD=EF=BF=BD essere impostato usando system-config-securitylevel, sotto il tab &SEL; all'interno dell'ar= ea Modifica la Policy &SEL;, abilitando Perme= tti ad HTTPD di leggere le home directories. = I cambiamenti avranno effetto immediato. Come disabilito &SEL; all'avvio? Aggiungi alla linea di comando del= tuo kernel. Sta attento quando disabiliti &SEL; Sta veramente attento nell'usare questa opzione. Se esegui l= 'avvio con , ogni file che hai creato mentre &SEL; =EF=BF= =BD=EF=BF=BD disabilitato non avr=EF=BF=BD=EF=BF=BD le informazioni di contesto &SEL;. D= ovrai come minimo rietichettare il file system, ed =EF=BF=BD=EF=BF=BD possibile che non sarai in grado di avviare il sistema con , necessitando un avvio in modalit=EF=BF=BD=EF=BF=BD single-use= r per il ripristino. Come alternativa a , prova ad usa= re SELINUX=3Ddisabled in /etc/selinux/config. Come pongo l'enforcing on/off all'avvio? Puoi specificare la modalit=EF=BF=BD=EF=BF=BD &SEL; usando il f= ile di configurazione /etc/sysconfig/selinux. # This file controls the state of SELinux on the system. # SELINUX=3D can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=3Denforcing # SELINUXTYPE=3D type of policy in use. Possible values are: # targeted - Only targeted network daemons are protected. # strict - Full SELinux protection. SELINUXTYPE=3Dtargeted Impostando il valore su enforcing =EF=BF=BD=EF=BF=BD uguale ad aggiungere alla linea = di comando quando avvii il kernel per attivare l'enforcing, mentre impostando il valore su permissive =EF=BF= =BD=EF=BF=BD come aggiungere per disattivare l'enf= orcing. Nota che il parametro della linea di co= mando del kernel prevarica il file di configurazione. Comunque, impostare il valore su disabled non =EF=BF=BD=EF=BF= =BD lo stesso di nel parametro di avvio del kernel.= Invece di disabilitare pienamente &SEL; nel kernel, l'impostazione disabled disabilita l'enforcing e salta il caricamento della policy. Come disabilito temporaneamente la modalit=EF=BF=BD=EF=BF=BD di= enforcing senza dover riavviare? Questa situazione solitamente insorge quando non puoi eseguire = un operazione che viene prevenuta dalla policy. Esegui il comando setenforce 0 per disabilitare la modalit=EF= =BF=BD=EF=BF=BD di enforcing in tempo reale. Quando hai terminato, esegui setenforce 1 per riattivare l'enforcing. E' richiesto il ruolo <computeroutput>sysadm_r</computer= output> Devi lanciare il comando setenforce con il ruolo sysadm_r; per farlo, usa il comando newrole. Alternativamente, = se cambi su root usando su -, otterrai il ruo= lo sysadm_r automaticamente. Come pongo l'auditing alle system-call on/off all'avvio? Aggiungi alla linea di comando del k= ernel per attivare l'auditing alle system-call. Aggiungi L'auditing alle system-call =EF=BF=BD=EF=BF=BD disattivato per = impostazione predefinita. Quando =EF=BF=BD=EF=BF=BD attivato, fornisce informazioni sulle system-call che erano in esecuzione quando= SELinux genera un messaggio denied. Questo pu=EF=BF=BD=EF=BF=BD essere d'aiuto quando fai il debugging della poli= cy. Come disabilito temporaneamente l'auditing alle system-call sen= za dover riavviare? Questa opzione al momento non =EF=BF=BD=EF=BF=BD supportata. In= futuro, verr=EF=BF=BD=EF=BF=BD fornita un utilit=EF=BF=BD=EF=BF=BD per amministrare l'auditing. Come ottengo informazioni sullo status della mia installazione = &SEL;? Come root, esegui il comando /usr/sbin/sestatus -v. Per maggiori informazioni, fa riferimento alla pagina di manuale di sestatus(8). Risoluzione dei problemi La mia applicazione non funziona come mi aspettavo e sto vedendo dei messaggi avc: denied, come risolvo? Questo messaggio vuol dire che l'attuale policy SELinux non per= mette all'applicazione di fare qualcosa. C'=EF=BF=BD=EF=BF=BD un numero di r= agioni per cui ci=EF=BF=BD=EF=BF=BD pu=EF=BF=BD=EF=BF=BD succedere. Primo, uno dei files a cui l'applicazione prova ad accedere pot= rebbe essere etichettato male. Se il messaggio AVC si riferisce ad un file = specifico, controlla la sua etichetta corrente con ls -alZ /path/to/file. Se vi se= mbra sbagliata, potrete provare ad usare restorecon -v /path/to/file. Se hai un gran numero di dinieghi relativi a files, potresti voler usare fixfiles relabel, o eseguire restorecon con l'opzione per rietichettare recursivamente il percorso di una directory. Altre volte, i dinieghi possono essere dovuti ad un cambiamento= nella configurazione del programma non ammesso dalla policy. Per esempio, se vuoi far si che Apache ascolti anche sulla port 8800, questo richieder= =EF=BF=BD=EF=BF=BD un cambiamento nella policy di sicurezza, apache.te.= Vedi per maggiori informazioni sulla scrittura delle policy. Se hai difficolt=EF=BF=BD=EF=BF=BD nel far funzionare un'applicazione = specifica come Apache, vedi =20 to work, see per sapere come disabilitare l'enforcement solo per quell'applicazione. Ho installato &FC; su un sistema con una partizione /home gi=EF=BF=BD=EF=BF=BD esistente, ed ora non = posso fare il log in. La tua partizione /home non =EF=BF=BD=EF= =BF=BD etichettata correttamente. Puoi facilmente risolvere questo problema in du= e modi. Se vuoi solamente rietichettare /home ricorsivamente: /sbin/restorecon -v -R /home Se vuoi essere sicuro che non ci siano altri files non correttamente rietichettati, puoi rietichettare l'intero filesystem: /sbin/fixfiles relabel Dovrai avere installato il pacchetto policycoreutils<= /filename> per usare fixfiles. Dopo aver rietichettato la mia /home usando setfiles o fixfiles, sar=EF=BF= =BD=EF=BF=BD ancora in grado di leggere /home con un sistema con &SEL; non abilitato? Puoi leggere i files da una distribuzione senza &SEL;, o una con &SEL; disabilitato. Comunque, i files creati dal sistema privo di &SEL; non avranno un contesto di sicurezza, nemmeno l'avr=EF=BF=BD=EF=BF=BD = qualsiasi files che rimuoverai e ricreerai. Questo potrebbe essere un problema con files t= ipo ~/.bashrc. Dovrai rietichettare la tua /home quando ritornerai a &FC;. Come posso condividere directories usando NFS tra &FC; e sistemi non-&SEL; NFS supporta in modo trasparente molti tipi di file system, e p= u=EF=BF=BD=EF=BF=BD essere usato per condividere directories tra sistemi &SEL; e non-&SEL;. Quando monti un file system non-&SEL; via NFS, per impostazione= predefinita &SEL; tratter=EF=BF=BD=EF=BF=BD tutti i files nella condivisione come avesse= ro contesto nfs_t. Potrai prevaricare il contesto= predefinito impostandolo manualmente usando l'opzione . Ad esempio, questo far=EF=BF=BD=EF=BF=BD apparire i files nella directory NFS montata con un contesto di=20 system_u:object_r:tmp_t in &SEL;: mount -t nfs -o context=3Dsystem_u:object_r:tmp_t server:/shared/foo= /mnt/foo Quando &SEL; esporta un file system via NFS, i files creati avr= anno il contesto della directory dove sono stati creati. In altre parole, la presenza di &SEL; sul sistema remoto che ha montato la cond= ivisione non ha effetto sui contesti di sicurezza locali. Come posso creare un nuovo account utente Linux con la home dir= ectory utente avente il contesto appropriato? Puoi creare il nuovo utente con il comando standard useradd. Prima dovrai diventare root; sotto la policy strict avrai bisogno di cambiare al ruolo sysadm_r. Questo cambio di contesto =EF=BF=BD=EF=BF=BD stato incorporato nel comando su= ed avviene automaticamente. Per la policy targeted, non avrai bisogno di cambiare ruolo, rimanendo in unconfined_t: su - root id -Z root:system_r:unconfined_t useradd auser ls -Z /home drwx------ auser auser root:object_r:user_home_dir_t /home/auser =20 Il contesto iniziale per una nuova directory utente ha un ident= it=EF=BF=BD=EF=BF=BD di root. In seguinto la rietiche= ttatura del file system cambier=EF=BF=BD=EF=BF=BD l'identit=EF=BF=BD=EF=BF= =BD a system_u. Queste sono funzion= almente le stesse poich=EF=BF=BD=EF=BF=BD il ruolo ed il tipo sono iden= tici (object_r:user_home_dir_t.) Tutte le altre documentazioni su &SEL; affermano che il comando su cambier=EF=BF=BD=EF=BF=BD solamen= te l'identit=EF=BF=BD=EF=BF=BD Linux e non il ruolo di sicurezza. Il team di sviluppo di &FC; ha preso una direzione leggermente = differente rispetto alla pratica di &SEL; esistente. Le transizioni del c= ontesto di sicurzza adesso sono integrate in su via pam_selinux. Questo semplifica enormemente l'uso del sistema. In pratica, =EF=BF=BD=EF=BF=BD come combinare il tradizionale su con il newrole di &SEL;, in un singolo passo invece di due. Altre forme di cambio d'identit=EF=BF=BD=EF=BF=BD di Linux/UNIX, per esempio setuid(2), non causano un cambio d'identit= =EF=BF=BD=EF=BF=BD &SEL;. Sto avendo alcune difficolt=EF=BF=BD=EF=BF=BD con errori avc che riempiono i miei logs per un programma in particolare. Come scelgo escluderne l'= audit d'accesso? Per esempio, se volevi escludere l'audit di dmesg, potresti inserire questa riga nel tuo file /etc/selinux/targeted/src/policy/dmesg.te dontaudit dmesg_t userdomain:fd { use }; Questo eliminer=EF=BF=BD=EF=BF=BD l'output d'errore dal termina= le per tutti gli userdomains (user, staff e sysadm). Anche avviando in modalit=EF=BF=BD=EF=BF=BD permissive, ho un g= ran numero di messaggi avc denied. In modalit=EF=BF=BD=EF=BF=BD non-enforcing, avrai pi=EF=BF=BD=EF=BF=BD messaggi che in modalit=EF= =BF=BD=EF=BF=BD enforcing. Ci=EF=BF=BD=EF=BF=BD avviene poich=EF=BF=BD=EF=BF=BD il kernel sta loggando ogni diniego di= accesso come fossi in modalit=EF=BF=BD=EF=BF=BD enforcing. Siccome non hai restrizioni, p= uoi fare pi=EF=BF=BD=EF=BF=BD cose, che danno come risultato pi=EF=BF=BD= =EF=BF=BD log di diniego. Per esempio, se un applicazione eseguita sotto la modalit=EF=BF= =BD=EF=BF=BD enforcing ha il divieto provare a leggere un certo numero di files in una directory= , essa verr=EF=BF=BD=EF=BF=BD fermata all'inizio dell'azione. In modalit=EF=BF=BD=EF=BF=BD non-enforcing, l'applicazione non viene ferm= ata dal traversare l'albero della directory, e ricever=EF=BF=BD=EF=BF=BD un messaggio di = diniego per ogni file letto nella directory. Ho un particolare diniego di premesso solo quando &SEL; =EF=BF= =BD=EF=BF=BD in modalit=EF=BF=BD=EF=BF=BD enforcing, ma non vedo nessun messaggio di audit in /var/log/messages. Come posso identificare la causa di questi dinieghi silenziosi? La ragione pi=EF=BF=BD=EF=BF=BD comune per un diniego silenzios= o =EF=BF=BD=EF=BF=BD quando la policy contiene un esplicita regola di dontaudit per sopprimere i messaggi di audit. La regola di dontaudit =EF=BF=BD=EF=BF= =BD spesso usata quando un segnale di diniego benigno riempie gli audit logs. Per vedere il tuo particolare diniego, dovrai abilitare l'auditing di tutte le regole dontaudit: cd /etc/selinux/targeted/src/policy=20 make enableaudit make load Abilitare l'output di <computeroutput>dontaudit</compute= routput> =EF=BF=BD=EF=BF=BD verboso Abilitare l'auditing di tutte le regole dontaudit produrr=EF=BF=BD=EF=BF= =BD un gran numero di informazioni audit, molte delle quali irrilevanti per il tuo diniego. Usa questa tecnica solo se stai cercando un messaggio di diniego che sembra avvenire silenziosamente. Probabilmente desidererai ri-abilitare le regole dontaudit il pi=EF=BF=BD=EF=BF= =BD presto possibile. Per ri-abilitare le regole dontaudit, fai cos=EF=BF=BD=EF=BF=BD: cd /etc/selinux/targeted/src/policy make clean=20 make load Perch=EF=BF=BD=EF=BF=BD non vedo l'output quando eseguo certi d= emoni in modalit=EF=BF=BD=EF=BF=BD debug o interattiva? &SEL; disabilita intenzionalmente l'accesso ai dispositivi tty = per impedire ai demoni la comunicazione verso il terminale di controllo. Questa comunicazione =EF=BF=BD=EF=BF=BD un potenziale buco nell= a sicurezza poich=EF=BF=BD=EF=BF=BD questi demoni possono inserire comandi nei terminali di controllo. Un programma bacato o compromesso potrebbe causare seri problemi con questo. Ci sono alcuni modi per permetterti di catturare lo STDOUT da q= uesti demoni. Un metodo =EF=BF=BD=EF=BF=BD quello di eseguire il pipe dell'outpu= t al comando cat. snmpd -v | cat Quando fai il debug di un demone, potresti voler disattivare la= transizione del demone al suo dominio specifico. Puoi farlo usando system-config-securitylevel o setsebool dalla linea di comando. Un opzione finale =EF=BF=BD=EF=BF=BD quella di disattivare la m= odalit=EF=BF=BD=EF=BF=BD di enforcing durante il debug. Puoi farlo con setenforce 0, usando setenforce 1 per ri-abilitare &SEL; quando h= ai terminato il debug. Quando eseguo un upgrade del pacchetto delle policy (per esempi= o, usando yum), cosa succede con la policy; =EF=BF=BD=EF=BF=BD automaticamente aggiornata? Le policy si ricaricano da sole quando il pacchetto =EF=BF=BD= =EF=BF=BD aggiornato. Questo sostituisce il comando manuale make load. In certe situazioni, pu=EF=BF=BD=EF=BF=BD essere necessario rie= tichettare il file system. Questo potrebbe accadere per fissare gli errori di &SEL; qualo= ra i contesti dei files divenissero invalidi, o quando l'update della policy fa dei cambiamenti ai file_contexts. Dopo aver rietichettato il filesystem, un reboot non =EF=BF=BD=EF=BF=BD necessario, ma =EF=BF=BD=EF=BF=BD utile per assicur= are che ogni processo e programma sia eseguito nel dominio appropriato. Questo =EF=BF=BD=EF=BF=BD altame= nte dipendente dai cambiamenti nella policy aggiornata. Se hai installato i pacchetti sorgente delle policy, es. selinux-policy-strict, puoi eseguire questi comandi per rietichettare il file system. cd /etc/selinux/targeted/src/policy make make relabel reboot Se non stai usando i sorgenti delle policy, un altro approccio = =EF=BF=BD=EF=BF=BD usare il comando fixfiles o avvantaggiarsi del meccanismo /.autorelabel: fixfiles relabel reboot touch /.autorelabel reboot Se la policy rilasciata con il pacchetto di un applicazione cam= bia in modo da richiedere la rietichettatura, potr=EF=BF=BD=EF=BF=BD RPM gest= ire la rietichettatura dei files posseduti dal pacchetto? Si. I contesti di sicurezza per i files posseduti dal pacchetto= sono immagazzinati nei dati dell'header del pacchetto. I contesti dei files sono impostati direttamente dopo la copia cpio, app= ena i files del pacchetto sono poggiati sul disco. Che relazioni intercorrono fra il pacchetto policy e policy=20 source? Un pacchetto policy come selinux-policy-targeted =EF=BF=BD=EF=BF=BD un req= uisito per un installazione &SEL; funzionante, mentre un pacchetto sorgente come selinux-policy-targeted-sources =EF=BF=BD=EF=BF=BD richiesto se vuoi modificare la policy predefinita. Il pacchetto policy ha i files minimi necessari per definire la policy di sicurezza di &SEL;. Viene tenuto di ridotte dimensioni per avere minimi requisiti di installazione. Il pacchetto dei sorgenti della policy contiene le definizioni = sorgente in /etc/selinux/policyname/src/polic= y che sono richiesti per creare i files /etc/selinux/policyname/contexts/= * e /etc/selinux/policyname/policy/po= licy.version. version =EF=BF=BD=EF=BF=BD il numero di ver= sione della policy. La scelta di quali pacchetti installare =EF=BF=BD=EF=BF=BD basa= ta sul tipo di installazione. Se intendi usare solo la configurazione di sicurezza pr= edefinita dagli sviluppatori &FC;, avrai bisogno solo del pacchetto policy. Se vorrai adattare la tua policy di sicurezza in qualsiasi modo, o vorrai eseguire setools, avrai bisogno di installare il pacchetto di sorgenti della policy. Installando o aggiornando i pacchetti della policy, la nuova po= licy verr=EF=BF=BD=EF=BF=BD caricata non appena intallati i nuovi files. In= modo analogo, installando o aggiornando il pacchetto di sorgenti della policy ricreer=EF=BF=BD=EF=BF=BD sia il fi= le policy.version che il file file_contexts, quindi verranno ricaricati come policy attuale effettiva. Perch=EF=BF=BD=EF=BF=BD i files /etc/selinux/policyname/po= licy/policy.<version>=20 e /etc/selinux/policyname/sr= c/policy/policy.<version>=20 sono differenti (sizes, md5sums, dates)? Quando installi un pacchetto policy, i files binari pre-compila= ti della policy sono inseriti direttamente in /etc/selinux. Quando un pacchetto sorgente policy =EF=BF=BD=EF=BF=BD installato o ag= giornato, i files binari della policy vengono compilati in /etc/selinux/policyname/sr= c/policy,=20 quindi spostati in /etc/selinux/policyname/po= licy/.=20 I differenti ambienti di compilazione creeranno files finali che hanno differenti dimensioni, md5sums, e date. I nuovi pacchetti policy potranno disabilitere il mio sistema? C'=EF=BF=BD=EF=BF=BD la possibilit=EF=BF=BD=EF=BF=BD che cambia= menti nei pacchetti della policy o nella policy rilasciata con un pacchetto applicativo possano causare errori, pi=EF=BF=BD=EF=BF=BD dinieghi, o altri comportamenti sconosciuti. Per = rimediare, puoi scoprire quale pacchetto causa il problema ripristinando policy e pacc= hetti applicativi uno alla volta. Se non vuoi tornare ad una pacchetto precedente, i files di configurazione della vecchia versione sono salvati con l'estensione di .rpmsave. Assicurati di consultare le mailing lists, bugzilla, ed IRC per aiutar= ti ad uscire dal problema. Se sei capace, scrivi un fix o una policy per risolvere il problema. Come posso aiutare a scrivere una policy? Il tuo aiuto =EF=BF=BD=EF=BF=BD apprezzato infinitamente. Puoi= cominciare entrando a far parte della &SEL; mailing list, fedora-selinu= x-list(a)redhat.com;=20 puoi sottoscriverti e leggere gli archivi su http://www.redhat.com/mailman/listinfo/fedora-selinux-list.=20 Le FAQ non ufficiali hanno qualche informazione generica su come scriv= ere le policy (http://sourceforge.net/docman/display_doc.p= hp?docid=3D14882&group_id=3D21266#BSP.1).=20 Un'altra nuova risorsa =EF=BF=BD=EF=BF=BD il Writing SE Linux policy H= OWTO (https://sourceforge.net/docman/display_doc.php= ?docid=3D21959&group_id=3D21266). Il meglio su cui puoi scommettere =EF=BF=BD=EF=BF=BD dare un oc= chiata ai files di policy in /etc/selinux/policyname/src/policy/ e provare a sperimentare. Osserva i messaggi avc denied in /var/log/messages per avere degli indizzi. Uno strumento utile per uno scrittore di policy =EF=BF=BD=EF=BF= =BD /usr/bin/audit2allow, che traduce i messaggi avc provenienti da /var/log/messages in regole che possono essere us= ate da &SEL;. Queste regole dovranno ovviamente essere rifinite. Il comando audit2allow pu=EF=BF=BD=EF=BF=BD = ricevere l'input con tre metodi. Il metodo predefinito =EF=BF=BD=EF=BF=BD dallo standard i= nput (STDIN). Usando l'opzione legge l'input da /var/log/messages, e con l'opzione legge l'input dall'output di dmesg. La mia console =EF=BF=BD=EF=BF=BD inondata da messaggi, come li= fermo? Per riottenere il controllo, disattiva i messaggi del kernel ne= lla console usando dmesg -n 1. Posso provare la policy predefinita senza installare il pacchet= to di sorgenti della policy? Puoi provare la policy predefinita di &SEL; installando solamen= te i pacchetti selinux-policy-policyname e policycoreutils. Senza il pacchetto dei sorgenti della policy installato, il comando fi= xfiles automatizzer=EF=BF=BD=EF=BF=BD la rietichettatura del file system. Il comando fixfiles relabel =EF=BF=BD=EF=BF= =BD l'equivalente di make relabel. Durante la rietichettatura, canceller=EF=BF=BD=EF=BF=BD tutti i files in /tmp, ripulendo i files che potrebbero avere vecchie etichette di contesto. Altri comandi sono fixfiles check, che contr= olla i files con etichette errate, e fixfiles restore, che fissa i files mal etichettati ma non cancella i files in /tmp. fixfiles non accetta una lista di directories come argomento, il suo scopo =EF=BF= =BD=EF=BF=BD rietichettare l'intero filesystem. Se hai bisogno di rietichettare un percorso specifico di directory, usa restorecon. Sto avendo difficolt=EF=BF=BD=EF=BF=BD nel far funzionare un ap= plicazione KDE sotto &SEL;. Gli eseguibili KDE appaiono sempre come kdeinit, che limita ci=EF=BF=BD=EF=BF=BD che pu=EF=BF=BD=EF=BF=BD essere fatto con = la policy di &SEL;. Questo perch=EF=BF=BD=EF=BF=BD ogni applicazione KDE viene eseguita nel dominio per kdeinit. I problemi spesso vengono fuorui quando si installa &SEL; perch= =EF=BF=BD=EF=BF=BD non =EF=BF=BD=EF=BF=BD possibile rietichettare /tmp e /var/tmp. Non c'=EF=BF=BD=EF=BF=BD un buon metod= o di determinare quale file dovrebbe avere quale contesto. La soluzione =EF=BF=BD=EF=BF=BD quella di eseguire un pieno log= out da KDE e rimuovere tutti i files temporanei di KDE: rm -rf /var/tmp/kdecache-<username> rm -rf /var/tmp/<other_kde_files> Al prossimo login, il problema dovrebbe essere risolto. Perch=EF=BF=BD=EF=BF=BD SELINUX=3Ddisabled non funziona per me? Fa attenzione agli spazi vuoti nel file /etc/sysconfig/selinux. Il codice =EF=BF= =BD=EF=BF=BD molto sensibile agli spazi vuoti, anche ai tabulatori. Implementare &SEL; Che file systems posso usare per &SEL;? Il file system deve supportare le estichette xattr nel giusto namespace security.*. Oltre a ext2/ext3, XFS ha recentemente aggiunto il supporto per le necessarie etichette. Come incide &SEL; sulle prestazioni del sistema? Questa =EF=BF=BD=EF=BF=BD una variabile difficile da quantifica= re, ed =EF=BF=BD=EF=BF=BD pesantemente dipendente dalla grandezza del sistema su cui &SEL; sta girando. L'ult= ima volta che le prestazioni sono state misurate, l'incidenza era circa de= l 7% per codice completamente non raffinato. I cambiamenti da allora sembrerebb= ero essere peggiorati in alcuni casi, tipo nel networking. Le performance e l'affinamento di SELinux sono una priorit=EF=BF=BD=EF=BF=BD del team= di sviluppo. Di che tipo di implementazioni/applicazioni/systemi, etc. dovr= =EF=BF=BD=EF=BF=BD tener conto per l'uso con &SEL;? Inizialmente, &SEL; servir=EF=BF=BD=EF=BF=BD ai server affaccia= ti su Internet che eseguono poche, funzioni specializzate, dove =EF=BF=BD=EF=BF=BD critico mantene= re una sicurezza estremamente stretta. Una simile macchina =EF=BF=BD=EF= =BF=BD tipicamente priva di software extra e servizi, ed esegue un servizio molto mirato od un gruppo di servizi, come un Web server o un mail server. In questi servers di nicchia, potrai bloccare la policy molto s= trettamente. Questo sar=EF=BF=BD=EF=BF=BD facilitato dal piccolo numero di interazi= oni con gli altri componenti. In modo simile, una macchina dedicata che esegue un applicazione specialistica di terze parti sar=EF=BF=BD=EF=BF= =BD un buon cadidato. In futuro, &SEL; =EF=BF=BD=EF=BF=BD orientato a tutti gli ambie= nti. Per questo, la comunit=EF=BF=BD=EF=BF=BD e gli ISVs (independent software vendors) dovranno lavorare con gli sviluppatori &SEL; per produrre le policy necessarie.= Finora, =EF=BF=BD=EF=BF=BD stata scritta una strict policy molto restrittiva, analogamente ad una targeted policy che mira a specifici, demoni vulnerabili. Che effetto ha &SEL; sulle applicazioni di terze parti? Uno degli scopi nell'implementare la policy targeted di &SEL; i= n &FC; =EF=BF=BD=EF=BF=BD quello di permettere ad applicazioni di terze parti di funzionare senz= a modifiche. Questo funziona perch=EF=BF=BD=EF=BF=BD la targeted policy =EF=BF=BD=EF=BF=BD= trasparente a quelle applicazioni che non prova a controllare e che ricadono nella sicurezza di Linux standard. Queste applicazioni non saranno eseguite in maniera extra sicura. Una policy deve essere scritta per far si che queste applicazioni siano protette dal MAC. Ci sono talmente tante variazioni nelle applicazioni di terze p= arti che =EF=BF=BD=EF=BF=BD impossibile predire come si comporterebbero con &SEL;, anche eseguendo la targeted policy. Le problematiche insorgenti possono talv= olta essere fissate nella policy. Puoi capitare che &SEL; ti mostri problemi di sicurezza con la tua applicazione che non sapevi di avere, richiede= ndo una modifica dell'applicazione per poter funzionare sotto &SEL;. Un importante valore che i testers ed utenti di &FC; porteranno= alla comunit=EF=BF=BD=EF=BF=BD =EF=BF=BD=EF=BF=BD l'estensivo testing di ap= plicazioni di terze parti. Tenendo questo a mente, sei pregato di riportare le tue esperienze sull'approp= riata mailing list (fedora-selinu= x-list(a)redhat.com) per discuterne.
--===============0114867497944496519==--