Guido Socher Yazar Hakk�nda: Linux'u seviyor ��nk� Linux �zg�r bir sistem ayr�ca b�t�n d�nyadaki Linux kullan�c�lar�yla �al��mak �ok e�lenceli. Bo� zamanlar�n� k�z arkada��yla ge�iriyor, BBC radyosunu dinliyor, k�rlarda bisiklet s�r�yor ve L�nux'la oynamaktan ho�lan�yor. |
Dosya Eri�im �zinleri�eviri: Azime �zt�rk
�zet:
Bu makale iki bol�me ayr�lm��t�r:
Temel dosya giri� izinleriLinuz kullan�c�lar�n kendi dosyalar�na farkl� giri� izinleri verebilcekleri cok kullan�c�l� bir sistem. Her kullan�c� kendisini tan�mlayan tek bir kullan�c�-Id numaras�na sahiptir. Ayn� zamanda kullan�c�lar bir yada daha fazla gruba dahildir. Gruplar �ok say�da insana giri�i s�n�rlamak i�in de kullan�labilir. �ok say�da insanla daha kolay tak�m �al��mas� yapmak i�in iyi bir �zellik. Kullan�c� -Id'nizi kontrol etmek ve dahil oldu�unuz grup veya gruplar� g�rmek i�in sadece id komutunu yaz�n:
Giri� izinleri her bir dosyaya dosya sahibi , grup vedi�erleri i�in okuma (r), yazma(w) ve �al��t�rma(x)izinleri ilkesiyle konulabilir. Bu izinleri g�rmek i�in ls -l komutunu kullanabilirsiniz.
/usr/bin/id dosyas� sadece root kullan�c�s� taraf�ndan kullan�l�r ve root grubuna aittir. -rwxr-xr-x ifadesi dosya giri� izinlerini g�sterir.Bu dosya sahibi taraf�ndan okunabilir (r),yaz�labilir(w) ve �al��t�r�labilir(x), grup ve di�erleri taraf�ndan okunabilir(r)ve �al��t�r�labilir(x). �zinleri, her bir biti dosya sahibi, grup ve d�gerleri i�in tahsis edilmi� 3 bitlik bit vekt�r gibi d���nebilirsiniz. ��yle ki r-x bit olarak 101 'e ondal�k olarak 4+1=5'e kar��l�k gelir. r-bit ondal�k 4'e, w-bit ondal�k 2'ye ve an x-bit de ondal�k 1'e kar��l�k gelir.
chmod komutu bu izinleri de�i�tirmek i�in kullan�labilir. G�venlik i�in yaln�zca root yada dosya sahibi izinleri de�i�tirebilir. Chmod ile izinlerin ondal�k veya sembolik ifadelerin her ikisi de kullan�l�r. Sembolik ifade [ugoa][+-][rwx]. ��yle ki u (kullan�c�=dosya sahibi), g (grup), o(di�erleri), a(herkes=u, g ve o) harflerini izinleri eklemek veya kald�rmak amac�yla + veya - daha sonra da izinlerin sembolik ifadeleri r(read) w(write) x(execute) takip eder. "file.txt" dosyas�n� herkes i�in all yaz�labilir writable yapmak amac�yla �unu yaz�n:
chmod 644 file.txt izinleri "normal"hale yani dosya sahibi i�in okunabilir+yaz�labilir ve di�erleri i�in sadece okunabilir �ekline koyar. bir dizindeki de�i�iklik (cd komutuyla)dizini y�r�rl��e koymakla denktir. "Normal"Buna g�re bir dizin i�in "Normal" izinler644 de�il 755 dir:
umask ihmal edilen izinlerinizi tan�mlar. Bu izinler yeni dosyalar (ve dizinler, vs...) yarat�ld���nda uygulan�r. Kan�t olarak senin koymak istemedi�in ondal�k ifade �eklindeki bitleri al�r. umask 022 iyi bir e.g a se�imidir. 022 ile dosyalar�n� ve "cd" dizinlerinin i�ini herkes okuyabilir ancak yaln�zca sen de�i�iklik yapabilirsin. Ge�erli umask oturumlar�n� yazd�rmak i�in sadece umask yaz�n. Burada umask ve chmod'un nas�l kullan�ld���n� g�steren bir �rnek var:
�al��t�r�labilir olmas�na ihtiya� duyan normal derli binary'de �al��t�rmak i�in dosyan�n okunabilir ve �al��t�r�labilir olmas�na dikkat edin. ��nk� dosya �evirmen(kabuk) taraf�ndan okunmal�. Dosyay� �al��t�rmak �unu �retir: merhaba alice Bu dosya ( ./myscript )a�a��daki izinlere sahip: -rwxr-xr-x T-bit, SUID and SGIDLinux'la bir dosya i�in �al��t�ktan sonra b�y�k olas�l�kla burada dosya izinleri i�in "rwx" bitlerinden �ok daha fazlas�n�n oldu�unu ke�federsiniz.Dosya sisteminizin i�ini ara�t�rd���n�zda "s" ve"t" yi g�r�rs�n�z:
Nedir bu "s" ve "t" biti? �zin bitlerinin vekt�r� ger�ekte 4 * 3 bit uzunlu�undad�r. chmod 755, chmod 0755 nin bir k�saltmas�d�r. t bitit biti (bazen "sticky bit"e kar��l�k gelir)sadece dizin kombinasyonlar�nda kullan�labilir. Yukarda g�rd���n�z gibi/tmp diziniyle kullan�l�r. Normalde (t-biti dizinlere yerle�tirilmeden )dosyalar�n silinebilmesi i�in dizinin tuttu�u dosyalar silen ki�i taraf�ndan okunabilir olmal� .B�ylece herkesin dosya koyabilece�i bir dizininiz varsa burada herkes herkesin dosyas�n� silebilir . t-biti bu kural� de�i�tirir. t-bitini koymakla yaln�zca dosya sahibi yada dizin sahibi dosyalar� silebilir. t-bit chmod a+tw veya chmod 1777 ile konabilir .Bir �rnek:
S-bit set on the userLinux i�lemleriyle bir kullan�c�-Idsi alt�nda �al���n. Bu kullan�c�ya girebilece�i t�m kaynaklara(dosyalar vs...) giri� verir. Burada 2 tane kullan�c� Idsi mevcut. Ger�ek kullan�c�-IDsi ve y�r�rl�kteki kullan�c�-IDsi. Y�r�rl�kteki kullan�c�-IDsi dosyaya giri�i belirleyendir. A�a��daki program� idinfo ad� alt�nda kaydedin ve �al���r hale getirin(chmod 755 idinfo).
Notlar� y�r�rl��e koyunca y�r�yen i�lemin ald��� kullan�c�-ID'nizi ve group-ID'nizi g�receksiniz: y�r�rl�kteki kullan�c�-IDsi: alice ger�ek kullan�c�-IDsi: alice grup IDsi: kullan�c�lar Tux sizin idinfo program�n�z� y�r�t�nce tux'un ID'sinde o anda y�r�t�len i�lemleri g�steren benzer ��kt�lar al�r.Program�n ��kt�s� sadece o program� y�neten kullan�c�ya ba�l�d�r dosya sahibine de�il. G�venlik nedenleri i�in s-biti sadece binarilerde (derlenmi� kod) �al���r programlarda(perl programlar� istisnad�r) �al��maz. Bu y�zden idinfo program�m�z� �a��racak bir C-program� yarat�r�z:
Program� "gcc -o suidtest -Wall suidtest.c"ile derle ve s-bitini program sahibi �zerine yerle�tir:
Program� y�r�t!Ne olu�tu? Hi�bir �ey mi ?Farkl� bir kullan�c� �zerinden y�r�t! suidtest dosyalar� alice'e aittir ve normalde dosya sahibi i�in x'in yerle�tirildi�i yerde s-bitine sahiptir. Bu,dosyan�n �al��t�ran kullan�c�n�nkinden ziyade dosya sahibi olan kullan�c�n�n y�r�rl�kteki kullan�c�-Idsi alt�nda �al��t�r�lmas�na sebep olur. Tux program� y�r�tt���nde a�a��daki gibi g�rn�r:
Bu, �zellikle s-biti yerle�tirilmi� dosyaya root sahipse �ok g��l� bir �zelliktir.O zaman hi�bir kullan�c� normalde sadece rootun yapabilece�i �eyleri yapamaz.G�venlik �zerine birka� kelime. Bir SUID program� yazd�ktan sonra bu program�n sadece senin planlad���n ama� i�in kullan�labilece�inden emin ol. Her zaman zor �ifrelenen hard-coded de�ere bir yol yerle�tir. Asla kullan�c� girdisine (ayar dosyalar�, st�r komut tart��malar� , vs...) g�venme.Kullan�c� girdisini bit bit kontrol et ve onlar� g�z �n�ne ald���n ge�erli de�erlerle kar��la�t�r. Bir SUID program� root taraf�ndn �zelle�tirildikten sonra y�r�rl�kteki kullan�c� ve ger�ek kullan�c�-ID'leri (setreuid()i�lemiyle) yerle�tirilebilir. Set-UID programlar� genelde "root" taraf�ndan s�radan kullan�c�lara normalde sadece "root" yapabilece�i �eylere eri�imi vermek i�in kullanilir. Root gibi siz de di�er bir kullan�c�n�n makinenizde ppp-on/ppp-off programlar�n� �al��t�rmas� i�in suidtest.c 'de e.g de�i�iklik yapabilirsiniz. S-bit'in grupta kullan�m�S-bitine sahip �al��t�r�labilir programlar dosya sahibinin group-ID si alt�nda �al���r. Bu alt paragraftaki kullan�c� s-biti ile �ok benzerdir. S-bit gruba bir dizin i�in konduktan sonra grup da bu dizinde yarat�lan her dosya i�in konur. Alice 2 gruba aittir:
Normalde alice i�in yarat�lan dosyalar grupla kullan�c�lara ayarlan�r. Fakat grupla bir dizin yarat�lm��sa diske yerle�tirilir ve s-biti gruba yerle�tirilir sonra alice'in yaratt��� t�m dosyalar grup ID disk: ine sahip olur.
�ok say�da insanla tak�m i�inde �al��mak istiyorsan�z bu iyi bir �zelliktir. Bu �zellik dosyalar�n grup ID'lerinin do�ru gruba yaz�lmas�n� sa�lar. Bu da tak�m�n dizinleriyle �zellikle kullan�c�lar�n normalde 027 umask'a sahip olduklar� bir �evrede �al��mak i�indir ki 027 umask, dosyalar� grup d���ndaki insanlara girilmez k�lar. |