Aistriúchán ar an alt a ullmhaíodh do mhic léinn an chúrsa
Is meicníocht rialaithe rochtana feabhsaithe é SELinux nó Security Enhanced Linux arna fhorbairt ag Gníomhaireacht Slándála Náisiúnta na SA (NSA) chun cur isteach mailíseach a chosc. Cuireann sé múnla rialaithe rochtana éigean (nó éigeantach) i bhfeidhm (Rialú Rochtana Éigeantach Béarla, MAC) ar bharr na samhla roghnach (nó roghnach) atá ann cheana féin (Rialú Rochtana Lánroghnacha Béarla, DAC), is é sin, ceadanna a léamh, a scríobh, a fhorghníomhú.
Tá trí mhodh ag SELinux:
- Forfheidhmiú — rochtain a dhiúltú bunaithe ar rialacha beartais.
- ceadaitheach — loga a choimeád de ghníomhaíochtaí a sháraíonn an beartas, a bheadh toirmiscthe sa mhodh forghníomhaithe.
- Díchumasaithe — díchumasú iomlán SELinux.
De réir réamhshocraithe tá na socruithe isteach /etc/selinux/config
Modhanna SELinux a athrú
Chun an mód reatha a fháil amach, rith
$ getenforce
Chun an mód a athrú go ceadaitheach rith an t-ordú seo a leanas
$ setenforce 0
nó, modh a athrú ó ceadaithe ar forfheidhmithe, forghníomhú
$ setenforce 1
Más gá duit SELinux a dhíchumasú go hiomlán, ansin ní féidir é seo a dhéanamh ach tríd an gcomhad cumraíochta
$ vi /etc/selinux/config
Chun é a dhíchumasú, athraigh an paraiméadar SELINUX mar a leanas:
SELINUX=disabled
Socrú SELinux
Tá gach comhad agus próiseas marcáilte le comhthéacs SELinux, ina bhfuil faisnéis bhreise mar úsáideoir, ról, cineál, etc. Más é seo do chéad uair ag cumasú SELinux, beidh ort an comhthéacs agus na lipéid a chumrú ar dtús. Clibeáil a thugtar ar an bpróiseas chun lipéid agus comhthéacs a shannadh. Chun tús a chur le marcáil, sa chomhad cumraíochta athraíonn muid an mód go ceadaithe.
$ vi /etc/selinux/config
SELINUX=permissive
Tar éis an modh a shocrú ceadaithe, cruthaigh comhad folamh folaithe sa fhréamh leis an ainm autorelabel
$ touch /.autorelabel
agus atosaigh an ríomhaire
$ init 6
Nóta: Bainimid úsáid as an mód ceadaithe le haghaidh marcáil, ós rud é úsáid an mhodha forfheidhmithe d'fhéadfadh sé a bheith ina chúis le tuairteáil an chórais le linn atosaigh.
Ná bíodh imní ort má théann an íoslódáil i bhfostú ar chomhad éigin, tógann an mharcáil tamall. Nuair a bheidh an mharcáil críochnaithe agus do chóras tosaithe, is féidir leat dul chuig an gcomhad cumraíochta agus an modh a shocrú forfheidhmitheagus rith freisin:
$ setenforce 1
D'éirigh leat SELinux a chumasú ar do ríomhaire anois.
Monatóireacht a dhéanamh ar na logaí
Seans gur tháinig tú trasna ar roinnt earráidí le linn na marcála nó fad a bhí an córas ag rith. Chun a sheiceáil an bhfuil do SELinux ag obair i gceart agus mura bhfuil sé ag cur bac ar rochtain ar aon chalafort, feidhmchlár, etc., ní mór duit breathnú ar na logaí. Tá logáil SELinux suite i /var/log/audit/audit.log
, ach ní gá duit an rud ar fad a léamh chun earráidí a aimsiú. Is féidir leat an fóntais audit2why a úsáid chun earráidí a aimsiú. Rith an t-ordú seo a leanas:
$ audit2why < /var/log/audit/audit.log
Mar thoradh air sin, gheobhaidh tú liosta earráidí. Mura raibh aon earráidí sa logáil, ní thaispeánfar aon teachtaireachtaí.
Beartas SELinux a chumrú
Is é atá i mbeartas SELinux ná sraith rialacha a rialaíonn meicníocht slándála SELinux. Sainmhíníonn beartas sraith rialacha do thimpeallacht ar leith. Anois foghlaimfimid conas polasaithe a chumrú chun rochtain ar sheirbhísí toirmiscthe a cheadú.
1. Luachanna loighciúla (lasca)
Ligeann lasca (booleans) duit codanna de pholasaí a athrú ag am rite, gan a bheith ort polasaithe nua a chruthú. Ligeann siad duit athruithe a dhéanamh gan polasaithe SELinux a atosú nó a ath-thiomsú.
Sampla
Ligean le rá gur mhaith linn eolaire baile úsáideora a roinnt trí léamh / scríobh FTP, agus táimid tar éis é a roinnt cheana féin, ach nuair a dhéanaimid iarracht rochtain a fháil air, ní fheicimid rud ar bith. Tá sé seo amhlaidh toisc go gcuireann polasaí SELinux cosc ar an bhfreastalaí FTP ó léamh agus scríobh chuig eolaire baile an úsáideora. Ní mór dúinn an polasaí a athrú ionas gur féidir leis an bhfreastalaí FTP rochtain a fháil ar eolairí baile. A ligean ar a fheiceáil má tá aon lasca le haghaidh seo ag déanamh
$ semanage boolean -l
Liostaeoidh an t-ordú seo na lasca atá ar fáil agus a staid reatha (ar siúl nó as) agus cur síos orthu. Is féidir leat do chuardach a bheachtú trí grep a chur leis chun torthaí ftp-amháin a aimsiú:
$ semanage boolean -l | grep ftp
agus gheobhaidh tú an méid seo a leanas
ftp_home_dir -> off Allow ftp to read & write file in user home directory
Tá an lasc seo díchumasaithe, mar sin cumasóimid é setsebool $ setsebool ftp_home_dir on
Anois beidh ár ndeamhan ftp in ann rochtain a fháil ar eolaire baile an úsáideora.
Nóta: Is féidir leat liosta de na lasca atá ar fáil a fháil freisin gan cur síos a dhéanamh getsebool -a
2. Lipéid agus comhthéacs
Is é seo an bealach is coitianta chun beartas SELinux a chur i bhfeidhm. Marcáiltear gach comhad, fillteán, próiseas agus port le comhthéacs SELinux:
- Maidir le comhaid agus fillteáin, stóráiltear lipéid mar tréithe sínte ar an gcóras comhad agus is féidir iad a fheiceáil leis an ordú seo a leanas:
$ ls -Z /etc/httpd
- Maidir le próisis agus poirt, is é an t-eithne a bhainistíonn an lipéadú, agus is féidir leat féachaint ar na lipéid seo mar seo a leanas:
phróiseas
$ ps –auxZ | grep httpd
port
$ netstat -anpZ | grep httpd
Sampla
Anois féachaimis ar shampla chun lipéid agus comhthéacs a thuiscint níos fearr. Ligean le rá go bhfuil freastalaí gréasáin againn, in ionad eolaire /var/www/html/ использует /home/dan/html/
. Measfaidh SELinux gur sárú beartais é seo agus ní bheidh tú in ann do leathanaigh ghréasáin a fheiceáil. Tá sé seo amhlaidh toisc nach bhfuil an comhthéacs slándála a bhaineann leis na comhaid HTML socraithe againn. Chun an comhthéacs slándála réamhshocraithe a fheiceáil, bain úsáid as an ordú seo a leanas:
$ ls –lz /var/www/html
-rw-r—r—. root root unconfined_u:object_r:httpd_sys_content_t:s0 /var/www/html/
Anseo fuair muid httpd_sys_content_t
mar chomhthéacs do chomhaid html. Ní mór dúinn an comhthéacs slándála seo a shocrú dár n-eolaire reatha, a bhfuil an comhthéacs seo a leanas aige faoi láthair:
-rw-r—r—. dan dan system_u:object_r:user_home_t:s0 /home/dan/html/
Ordú eile chun comhthéacs slándála comhaid nó eolaire a sheiceáil:
$ semanage fcontext -l | grep '/var/www'
Úsáidfimid semanage freisin chun an comhthéacs a athrú nuair a bheidh an comhthéacs ceart slándála aimsithe againn. Chun comhthéacs /home/dan/html a athrú, rith na horduithe seo a leanas:
$ semanage fcontext -a -t httpd_sys_content_t ‘/home/dan/html(/.*)?’
$ semanage fcontext -l | grep ‘/home/dan/html’
/home/dan/html(/.*)? all files system_u:object_r:httpd_sys_content_t:s0
$ restorecon -Rv /home/dan/html
Tar éis an comhthéacs a athrú ag baint úsáide as semanage, luchtóidh an t-ordú restorecon an comhthéacs réamhshocraithe le haghaidh comhaid agus eolairí. Beidh ár bhfreastalaí gréasáin in ann comhaid a léamh ón bhfillteán anois /home/dan/html
toisc gur athraíodh comhthéacs slándála an fhillteáin seo go httpd_sys_content_t
.
3. Polasaithe áitiúla a chruthú
D’fhéadfadh cásanna a bheith ann nach bhfuil na modhanna thuas úsáideach duit agus go bhfaigheann tú earráidí (avc/denial) in audit.log. Nuair a tharlaíonn sé seo, ní mór duit polasaí áitiúil a chruthú. Is féidir leat gach earráid a aimsiú ag baint úsáide as audit2why, mar a thuairiscítear thuas.
Is féidir leat polasaí áitiúil a chruthú chun earráidí a réiteach. Mar shampla, faighimid earráid a bhaineann le httpd (apache) nó smbd (samba), déanaimid na hearráidí a ghreamú agus cruthaímid polasaí dóibh:
apache
$ grep httpd_t /var/log/audit/audit.log | audit2allow -M http_policy
samba
$ grep smbd_t /var/log/audit/audit.log | audit2allow -M smb_policy
Anseo http_policy
и smb_policy
is ainmneacha na bpolasaithe áitiúla a chruthaigh muid. Anois caithfimid na beartais chruthaithe áitiúla seo a luchtú isteach i mbeartas reatha SELinux. Is féidir é seo a dhéanamh mar seo a leanas:
$ semodule –I http_policy.pp
$ semodule –I smb_policy.pp
Tá ár mbeartais áitiúla íoslódáilte agus níor cheart go bhfaigheadh muid aon avc nó denail in audit.log a thuilleadh.
Ba é seo mo iarracht cabhrú leat SELinux a thuiscint. Tá súil agam tar éis duit an t-alt seo a léamh go mbraitheann tú níos compordaí le SELinux.
Foinse: will.com