Linux ortamlarında dosya ve klasörlerimizi korumanın en pratik yollarından biri, sisteme erişenlerin bu dosyaları düzenleyebilmeleri veya düzenleyememeleri için izinleri uygun şekilde ayarlamaktır. Tüm bu değerler basit bir şekilde oluşturulabilir ve bir kullanıcının bir Linux klasörü veya dosyasında hangi kapsamda olabileceğini tanımlayarak okunabilir veya yazılabilir ve böylece dosyalarımızın bütünlüğünü korur. Linux izinleri, farklı kullanıcılar arasında Linux dosya ve klasörlerini koruyabilmek için önemlidir. Hepsinden iyisi, içerdiği öznitelikleri kullanarak Linux izinlerini chmod ve chmod izinleriyle yönetebiliriz. En çok kullanılan sözdizimlerinden biri, belirli kullanıcılara Linux kök kullanıcısı olarak izin vermek için ana komutlardan biri olarak Chmod 777 veya Chmod 755'tir.
ile izinler CHMOD Linux Dosyalara ve klasörlere erişmemizi sağlayanlar onlar. CHMOD, tüm bunlar için izin yöneticisidir. Çoğunuz bunları diğerlerinin yanı sıra web sunucularında da kullanıyorsunuz çünkü bu, Linux sunucusu veya bilgisayardaki tüm dosya ve klasörler üzerinde izinleri gerçekleştirme ve yönetme söz konusu olduğunda en kullanışlı ve etkili işlevlerden biridir.
CHMOD komutu bize Linux makinesinin dosya ve klasörlerinin izinlerini değiştirme imkanı verir. Bu eğitimde bazı örnekleri detaylandırıyoruz. Çoğu zaman CHMOD kullanımının pHp için diğer diller arasında en iyisi olduğu bilinmektedir, bu yüzden diğer özellikler arasında Linux sunucularının kullanılmasıdır. Bu komutların nasıl çalıştığını anlamanız için bilmeniz gereken ilk şey nasıl çalıştığıdır.
Bugün farklı komutlar ve parametrelerle Linux izinlerinin nasıl ayarlanacağını tartışacağız. Bu durumda Debian'da bir dosya kullanacağız, ancak prosedür herhangi bir Linux dağıtımında benzer.
1. Linux'ta izinler
Tüm Unix sistemlerinde, yöneticiler olarak belirli bir dosya veya klasöre erişim türlerini tanımlamamıza izin veren bir mekanizma vardır.
Unix ortamlarının bu kontrol mekanizması içinde, işlevlerini bilmemiz ve anlamamız gereken iki tür değişken vardır:
derslerBunlar, hangi kullanıcıların dosyaya veya klasöre erişebileceğini belirler
izinlerBunlar, yetkili kullanıcıların bu dosyalarda çalıştırabileceği görevi belirler.
Şimdi, bir dosya veya klasöre sağ tıklayıp Özellikler seçeneğine gittiğimizde aşağıdakileri görebiliriz:
Bu şemada üç (3) sınıf türü tanımlıyoruz:
SahipBu, dosyayı veya klasörü oluşturan kişidir.
GrupBu parametre içerisinde dosya veya klasöre erişimi olacak kullanıcı grubunu tanımlayacağız.
DiğerleriBu parametre içerisinde özel kullanıcılar yer almaktadır.
Artık dosyalarımız veya klasörlerimiz için üç tür düzenleme iznimiz var, bunlar:
OkumaBu seçenek, kullanıcının dosyayı görmesine izin verir ancak dosyada değişiklik yapma yetkisi vermez; bu da, dosyayı düzenleyemeyecekleri, kopyalayamayacakları veya silemeyecekleri için bize yüksek düzeyde güvenlik sağlar.
yazıBu izni vererek, dosyaya veya klasöre erişen kullanıcıların, dosya veya klasör üzerinde her türlü düzenlemeyi (kopyalama, kesme, silme) gerçekleştirmelerine izin veriyoruz ve bu da bütünlüğünü riske atıyor.
ÇalıştırmakVarsayılan olarak devre dışı olan bu seçeneği aktif hale getirerek dosyaları çalıştırabiliriz.
Bunu anlayarak, dosyalarımız için en iyi güvenlik seviyesini belirlemek için izinler ve sınıflar arasında kombinasyonlar oluşturabiliriz.
2. Linux izinleri ve hata kodları
Şimdi BT alanında görev yapan yöneticiler veya personel olarak bilmemiz gereken noktalardan biri geliyor ve bir kullanıcı, örneğin ünlü 777 gibi bir dosya üzerinde bir işlem yapmaya çalıştığında ortaya çıkan hataların belirlenmesidir.
Unix ortamlarında temel olarak her izin aşağıdaki değere sahiptir:
- Okuma: 4
- Yazma: 2
- Yürütme: 1
Linux deneyimimizi en iyi hale getirmek için bu sayılarla aşağıdaki şekilde oynamayı öğrenmeliyiz.
Yazma izni oluşturmak istiyorsak 6 (4 + 2 = Okuma + Yazma) kullanacağız.
Bir kullanıcının çalıştırabilmesini istiyorsak 7 (4 + 2 + 1 = Okuma + Yazma + Yürütme) kullanacağız.
Şimdi aşağıdaki değerler tablosuna sahibiz:
Linux izinleri değerleri tablosu
- 0: İzin yok
- 1: Yürütme
- 2: Yazma
- 3: Oku ve yaz
- 4: Okuma
- 5: Okuma ve yürütme
- 6: Oku ve yaz
- 7: Oku, yaz ve çalıştır
3. Linux izinleri: chmod 777, chmod 644, chmod 755, chmod 700, chmod 666
En yaygın izin türleri veya bunların kombinasyonu aşağıdaki gibidir:
666 (RW / RW / RW)Bu seçenek, tüm kullanıcıların bir dosyayı okumasına ve yazmasına izin verir.
777 (RWX / RWX / RWX)Bu seçenek, tüm kullanıcıların dosya veya klasör üzerinde okumasına, yazmasına ve yürütmesine izin verir.
755 (RWX / RW / RW)Bu izinle, dosyanın sahibi dosyayı okuyabilir, yazabilir ve çalıştırabilir, diğerleri ise dosyayı okuyup yazabilir ancak çalıştıramaz.
644 (RW / Sağ / Sağ)
Bu izinle, sahibi dosyayı okuyabilir ve dosyaya yazabilir, diğerleri ise yalnızca okuyabilir.
700 (RWX / ---)Bu izinle, sahibi dosya üzerinde tam kontrole sahipken diğer kullanıcılar dosyaya hiçbir şekilde erişemez.
Gördüğümüz gibi, Linux'ta ilgili izinleri oluşturmak için farklı seçeneklerimiz var.
4. Bir dosya veya klasöre CHMOD izinleri
İzin oluşturma prosedürü çok basittir. Sadece terminale gidin ve aşağıdaki sözdizimini çalıştırın:
chmod İzin türü File_PathÖrneğin:
chmod 666 /home/Solvetic/Solvetic.jpg.webpDosya ve klasörlerimizde en iyi güvenlik parametrelerini oluşturmak için bu ilginç seçeneklere sahibiz.
Linux sistemlerinde harflerle gördüğünüzde, tam olarak Linux izinleri açısından şöyle bir şey görürsünüz:
0 = --- = erişim yok 1 = --x = yürütme 2 = -w- = yazma 3 = -wx = yazma ve yürütme 4 = r-- = okuma 5 = rx = okuma ve yürütme 6 = rw- = okuma ve yaz 7 = rwx = oku, yaz ve çalıştırİstediğimiz birkaç izin vermekse, yapmamız gereken onları eklemek.
ayar 777Örneğin chmod 777 komutunu kullanırsak:
chmod 7773 tip kullanıcıya maksimum izin verdiğimizi, onlara okuma, yürütme ve yazma izni verdiğimizi söylüyoruz ve 4 + 2 + 1 eklemiş olmak bu yüzden 7'yi üç kez kullanıyoruz. yazma izinleri, 4+ 2 = 6 olurdu, eğer istediğimiz sadece okumaksa 4 olurdu. Eğer okumak ve yürütmek istediğimiz şey ise, 4 + 1 = 5 eklemek olurdu. Dolayısıyla farklı kombinasyonlar. .
ayar 755
chmod 755Bu durumda chmod 755 sahibi dışında tüm kullanıcılara okuma ve çalıştırma izni (4 + 1) veriyoruz (okuma, yazma, yürütme 4 + 2 + 1).
ayar 666Bu tür chmod komutunun yaptığı şey, yürütme (4 + 2) dışında herkese okuma ve yazma izni vermektir. Herkes dosyaya erişebilir, içeriğini okuyabilir ve değiştirebilir.
chmod 644Bu chmod 644, genellikle sahibinden başka kimsenin yazmasına izin vermemek için kullanılır. (755 benzerdir, okuma ve çalıştırma ve sahip için tüm izinler) Bu chmod 644 daha kısıtlayıcı (salt okunur) ve (okuma, sahibi için yazma).
Bu komutlar komutlar ile, yerel bir sunucu ise, daha sonra oturum açıp doğrudan yaparak, uzak ise bu programa bağlanarak Linux sunucu penceresinin görünmesini sağlayabilirsiniz (yerel bir sunucuymuş gibi) . Veya diğer bir seçenek de ücretsiz olarak indirip bu izin değişikliklerini grafiksel (daha kolay) yapmamızı sağlayan Filezilla programını kullanmaktır.
Bu durumda size Filezilla ile uzaktan bağlandığımız bir Linux sunucusunu gösteriyoruz ve hem dosya hem de klasörlerin izinleri grafiksel olarak görünüyor.
Bunları değiştirmek istiyorsak klasör veya dosyanın üzerine sağ tuş ile tıklayın ve Dosya İzinleri seçeneği çıkacak, üzerine tıkladığımızda bunları değiştirebileceğimiz pencere belirecektir.
Linux / Unix sistemlerinde izinlerin işleyişini anlamanıza yardımcı olduğunu umuyoruz. İzin yönetimi için diğer 2 komuta geçelim.
5. Linux'ta CHOWN komutu nasıl kullanılır?
Linux ortamlarında uygulayabileceğimiz çeşitli günlük görevler arasında güvenlik, organizasyon veya yönetim sorunları için bir dosya veya klasörün yeni sahibini oluşturmak vardır.
Bu amaçla Linux'ta sahip olduğumuz en pratik yollardan biri chown komutunu kullanmaktır ve bugün onu nasıl uygulayabileceğimizi ve bu önemli komuttan en iyi şekilde yararlanabileceğimizi göreceğiz.
Chown Nedir?Chown (Sahibi Değiştir - Sahibi Değiştir), dosya sistemindeki bir dosyanın veya klasörün sahibini veya sahibini değiştirme imkanı sunan bir komuttur.
Bu komut, tüm Linux dağıtımlarında varsayılan olarak bulunan coreutils paketinin bir parçasıdır ve Chown'u kullanarak yeni sahibi ya isimle ya da sistem içindeki kullanıcının kimliğiyle (UID) belirleyebiliriz.
Seçilmiş parametrelerChown kullanımı için bir dizi parametre tanımlayabiliriz:
- -c: Bu parametre, dosyanın sahip olacağı değişiklikleri tanımlamamızı sağlar.
- -R: Dizinlerin sahiplerini içerikleriyle birlikte azalan sırada değiştirir.
- -v: (ayrıntılı) Bilginin daha açıklayıcı bir çıktısını görüntüler.
- --version: Chown'un sürümünü ekranda gösterir.
- --dereference: Bu parametre hedef yerine sembolik değerlere göre hareket eder.
- --reference: bu parametre, başka bir dosyanın sahibine atıfta bulunarak bir dosyanın sahibini değiştirir.
- -h: Sembolik bağlantılar söz konusu olduğunda, bağlantının kendisi yerine hedefin sahibini değiştirin.
Chown'u kullanırken dikkate almamız gereken sözdizimi şudur:
chown (seçenekler) kullanıcı (: grup) dosya(lar) veya dizin(ler)
Bu çalışma için Ubuntu kullanacağız.
İşte Chown'un nasıl kullanılacağına dair bazı örnekler.
Bir dosyanın sahibini değiştirinBu, chown komutuyla sahip olduğumuz temel görevlerden biridir ve ilk etapta dosyanın şu anki sahibini doğrulamamız gerekir, bunun için sözdizimini kullanırız:
ls -lart Dosya_adıAşağıdakileri girdiğimiz solventtic.txt adında bir dosya oluşturduk:
ls -lart çözücü.txtBu, sahibin yanı sıra sahip oldukları izinleri ve oluşturma tarihini gösterecektir.
Şimdi o dosyanın sahibinin root olacağını belirleyeceğiz, bunun için aşağıdakileri giriyoruz:
chown kök çözücü.txtŞimdi ls -lart solventtic.txt dosyasını tekrar çalıştırıyoruz ve yeni sahibini görebiliyoruz:
Bir dosyanın grubunu değiştirmeDosyalarımız için chown kullanarak yeni bir grup kurabiliriz, bunun için aşağıdaki işlemi yapmalıyız:
Dosyanın geçerli grubunu görüntülemek için ls - l (Dosya Adı) komutunu kullanın.Bu durumda ls -l solventtic.txt kullanacağız. Ardından, ilgili değişiklik için aşağıdaki sözdizimini kullanacağız:
chown: solventtic.txt'yi destekleyin(Destek, yeni grubun adıdır).
Chown'ın mevcut sürümünü görüntüleyinBunu yapmak için aşağıdakileri girmeniz yeterlidir:
chown -sürüm
Klasör sahibini ve içindeki her şeyi değiştirinBu görev için aşağıdaki sözdizimini kullanacağız:
chown -R kullanıcı klasörüBu durumda kök kullanıcıyı klasörün sahibi yapacağız, bu durumda aşağıdakini giriyoruz:
chown -R kök Solvetik
Kullanıcı belirli bir gruba aitse grubu değiştirDosya önceden belirlenmiş bir grup içindeyken değiştirilecek grubu ayarlayabiliriz.
Örneğin, solventtic.txt dosyası solvent grubunun içindeyse, yeni gruba destek adı verilir. Bunun için -from parametresini kullanacağız.
İlk olarak, dosyanın ait olduğu grubu görüntülemek için ls -l solventtic.txt kullanacağız. Daha sonra -from: current group): (new group) sözdizimini kullanacağız, bu şekilde dosyanın bu durumda Solvetic grubuna ait olması durumunda destek grubu olacağını belirtiyoruz.
Bir dosyanın sahibini diğerine kopyalama-reference seçeneğini kullanarak bir dosyanın sahip olduğu parametreleri diğerine kopyalayabiliriz.
Bu durumda iki dosyamız var:
- solventtic.txt = solvente ait
- testler.txt = köke aittir.
Sözdizimini kullanacağız:
chown -referans = çözücü.txt testler.txtBöylece test.txt'nin sahibi solvent.txt ile aynı olur.
Linux ortamlarında farklı dosya ve klasörlerin sahiplerini basit ve güvenilir bir şekilde yönetmek için chown'ın bize nasıl çeşitli alternatifler sunduğunu görüyoruz.
6. CHATTR komutu nasıl kullanılır?
Sistem yöneticileri, destek personeli veya BT alanıyla ilişkili personel olarak işlevler arasında, güvenlik seviyelerini artırmak için bir klasör veya dosyanın niteliklerini değiştirmek ve elde edebileceğimiz sonuç olan çok önemli bir işlev vardır. şunlar olacak:
- Dosyalara veya klasörlere yetkisiz erişimi önleyin
- Dosyaların düzenlenmesini engelle
- Bilgi hırsızlığından kaçının
- Bilgisayarda depolanan klasörler ve dosyalar üzerinde özel kontrol sağlayın
Bunu yapmanın birkaç yolu olmasına rağmen, bugün herhangi bir Linux dağıtımında öznitelikleri değiştirmek için çok çeşitli seçeneklere sahip bir komut göreceğiz: Chattr
Chattr nedir?Chattr (Change Attribute - Change Attributes), dosyaları yanlışlıkla silinmelerden veya istem dışı değişikliklerden koruma imkanı verecek çeşitli parametrelerle basit bir şekilde uygulayabileceğimiz bir komuttur.
Chattr'ın en büyük avantajlarından biri, silmeye çalışan kişinin root izinlerine sahip olsa bile dosyaları korumasıdır.
Chattr ile uygulanabilen tüm özellikler, ext2, ext3, ext4 ve btfrs gibi yerel Linux sistemleri tarafından desteklenir ve bu yardımcı programın çok daha geniş bir güvenlik kapsamına sahip olmasını sağlar.
Chattr kullanmak için genel sözdizimi aşağıdaki gibidir:
chattr (operatör) (özellik) (dosya)Uygulamak istediğimiz şey için parantez içindeki verileri değiştirmemiz gereken yer. Bunu aşağıdaki örneklerde göreceğiz.
Chattr ile kullanılabilen parametreler
Gördüğümüz gibi, dosyalarımızın sahip olacağı güvenlik seviyesini tanımlamamıza izin veren belirli parametreleri belirtmeliyiz, bunlar kategoriye göre şunlardır:
Chattr operatörleri
- +: Belirtilen özniteliklerin dosyada zaten var olan özniteliklere eklenmesine izin verir.
- -: Özniteliklere belirtilen özniteliklerin kaldırılmasına izin verir.
- =: Belirtilen özniteliklerin dosyadaki mevcut öznitelikleri değiştirmesine izin verir.
Sohbet Seçenekleri
- -V: Programın versiyonu da dahil olmak üzere daha açıklayıcı bir chattr komut çıktısı elde etmemizi sağlar.
- -R: Bu seçenek, dizinlerin özniteliklerini ve içeriklerini indirir.
- -v: Programın versiyonunu görmemizi sağlar.
Chattr özellikleri
- a: Dosyanın yalnızca yazma-ekleme modunda açılmasına izin verir.
- C: Son erişim tarihinin veya saatin değiştirilmemesine izin verin.
- c: Dosyanın otomatik olarak sıkıştırılmasına izin verir.
- d: Döküm aracını kullanırken seçilen dosyanın yedekleme için aday olmadığını tanımlamanızı sağlar.
- D: Bir dizine atıfta bulunduğunuzda, verilerin eşzamanlı olarak diske yazılmasına izin verir.
- e: dosya veya klasörün blok eşleme için kullanılan uzantıları (uzantıları) kullandığı gerçeğini ifade eder.
- j: ext3 ve ext4 dosya sistemlerinde kullanılır ve seçeneklerle mount ettiğimizde jurnalde yazılacak dosyayı ayarlamamızı sağlar. veri = sıralı veya veri = geri yazma.
- i: Dosyanın değiştirilemez olmasını sağlar, yani silinebilir veya düzenlenebilir.
- S: Dosyada yapılan değişikliklerin eş zamanlı olarak diske yazılacağını belirtir.
- s: Bu öznitelik ile sabit diskte kullanılan bloklar sıfır (0) ile yazılacaktır.
- u: Bu özniteliği ayarlayarak, bir dosya silindiğinde içeriği daha sonra kurtarılmak üzere saklanır.
Chattr Linux, Ubuntu'da nasıl kullanılır?
Şimdi Linux dağıtımlarında chattr komutunun nasıl kullanılacağına dair pratik örnekler görelim, bu durumda Ubuntu kullanacağız.
Solvetic adında bir klasör ve testler.txt adında bir dosya oluşturduk. Bu dosyaları korumak istiyorsak aşağıdaki sözdizimini kullanacağız (Sudo'yu süper kullanıcı ayrıcalıklarına sahip olması için kullanacağız).
sudo chattr + i Solvetic / test.txt
Gördüğümüz gibi, hiçbir bilgi görüntülenmemesine rağmen, değişiklikler işlendi.
Chattr özelliklerini görüntüle
Uyguladığımız öznitelikleri kontrol etmek için lsattr kullanacağız ve aşağıdakileri göreceğiz:
Eğer superuser olarak test.txt dosyasını silmeye çalışırsak, bunun mümkün olmadığını göreceğiz, aşağıdaki sözdizimini kullanacağız:
sudo rm testi.txt
Orijinal Chattr değerlerini ayarla
Dosyalarımızın chattr özniteliklerine sahip olmamasını istiyorsak, aşağıdaki sözdizimini kullanacağız:
sudo chattr -i Dosya_adıÖrneğimizde aşağıdaki gibi olacaktır:
sudo chattr -i Çözücü / test.txtŞimdi dosyayı silmeyi deneyebiliriz ve öznitelikleri kaldırdığımız için bunun zaten mümkün olduğunu göreceğiz:
Aynı şekilde, sistemin optimal işlevi için hassas olan dosyaları da koruyabiliriz, örneğin:
/ etc / passwd ve / etc / gölge dosyalarıBu dosyaları korumak için aşağıdakileri girmeliyiz:
sudo chattr + i / etc / passwd sudo chattr + i / etc / gölge dosyalarıGrafiği Linux'ta nasıl kullanabileceğimize bir başka örnek, dosyayı ek modunda açmamıza izin verdiği parametreyi kullanmaktır, bunun için solvent.txt adlı bir dosya oluşturduk.
Daha sonra şu komutu kullanacağız:
sudo grafiği + bir Solvetic.txtBu parametreyi ayarlamak için.
lsattr kullanarak dosyanın özniteliklerini görebiliriz.
Şimdi echo komutunu kullanarak dosyadaki bir şeyi düzenlemeye çalışıyoruz ve İşleme izin verilmiyor mesajının görüntülendiğini göreceğiz. Şimdi >> sembollerini kullanırsak metne bir şeyler ekleyebiliriz.
Bu şekilde, Linux'ta chattr kullanmanın birkaç seçeneği var ve chattr'nin bize sunduğu bazı özellikleri kullanarak en önemli dosya ve klasörlerimiz için ek güvenlik parametreleri sağlıyoruz.
7. CHMOD izinleri: USB Linux'u engelle
Gördüğümüz gibi, Chmod, dosya ve klasörlere izin verirken ilginç ve kullanımı kolay bir komuttur. Buna ek olarak, iş ortamlarındaki bilgisayarları yönetiyorsak, çıkarılabilir medyaya istenmeyen erişimleri önlemek için USB kilidini kontrol etmek de faydalı olacaktır. Bunun için aşağıdaki gibi chmod izinlerini kullanacağız.
Dağıtımımız systemd kullanıyorsa, USB'nin / media / yoluna veya / run / media / yoluna monte edildiğine dikkat edilmelidir. Bundan yola çıkarak yapacağımız şey, bu rotaların izinlerini sadece root kullanıcısının erişebileceği şekilde değiştirmek.
Bunu yapmak için dediğimiz gibi chmod komutunu aşağıdaki şekilde uygun şekilde çalıştıracağız. Sahibinin tüm izinlere sahip olması için chmod 700 kullanıyoruz, ancak diğer kullanıcılar buna erişemiyor.
sudo chmod 700 / medya / sudo chmod 700 / çalıştır / medya /
BÜYÜT
Bu işlem ile ünitenin monte edilmesini sağlayacağız ancak kullanıcı bu konuda herhangi bir bildirim almayacak ve içeriğine erişemeyecektir. Yalnızca kök kullanıcı bunu yapma iznine sahip olacaktır.
Gördüğümüz gibi, Linux'ta dosyaların gizlilik düzeyini yönetebileceğimiz Linux izinlerine sahip bir kılavuzumuz var. Vurgulanacak ana komut, dosya ve klasörlerimizi yapılandıracağımız Chmod izinleridir.