- `chmod` komutuyla erişim izinlerini değiştirmek ile `chown` komutuyla kaynak sahipliğini değiştirmek arasındaki teknik fark.
- Kullanıcılar, gruplar ve diğerleri için sekizli ve sembolik gösterime dayalı izin temsil sistemi.
- Sunuculardaki güvenlik açıklarını önlemek için en az ayrıcalık ilkesine dayalı güvenlik stratejilerinin uygulanması.
Kendi VPS sunucunuzu veya özel makinenizi yönetmeye giriştiyseniz, Linux'un baştan sona ağ iletişimi için tasarlanmış bir sistem olduğunu fark etmişsinizdir. Bu nedenle güvenlik son derece önemlidir , çünkü bir dosyayı kimin okuyabileceğini, düzenleyebileceğini veya çalıştırabileceğini kontrol etmek, bilgilerinizin yanlış ellere geçmesini veya kötü niyetli bir işlemin tüm sistemi çökertmesini önler.
Bu ortamda kolaylıkla gezinmek için, yalnızca komutları nasıl çalıştıracağınızı bilmek yeterli değildir; dosya sahipliğinin ardındaki mantığı anlamanız gerekir. Linux'ta her kaynak bir kullanıcıya ve bir gruba aittir ve bu noktada, ayrıcalıkları ayarlama araçları devreye girerek uygulamalarımızın çalışmasını engellemeden sistemi güvence altına almamızı sağlar.
İzinlerin anatomisini anlamak
Bir komut başlattığınızda ls -l Terminalde, gizli bir koda benzeyen bir karakter dizisi göreceksiniz, örneğin şöyle bir şey: -rwxr-xr--Merak etmeyin, göründüğünden daha basit. İlk karakter bize bunu anlatıyor. Önümüzde ne tür bir element var?Tire işareti normal bir dosyayı, 'd' klasörü (dizini) ve 'l' sembolik bağlantıyı gösterir. Ayrıca soketler için 's' veya borular için 'p' gibi daha az yaygın karakterler de vardır.
Aşağıdaki dokuz karakter, üç eşit üçerli gruba ayrılmıştır. Birinci grup dosya sahibi ( dosyayı oluşturan kişi), ikinci grup dosya sahibi grubu ve üçüncü grup ise sistemdeki diğer tüm kullanıcılar içindir . Her üç karakterlik grup, 'r' (okuma), 'w' (yazma) ve 'x' (yürütme) harflerini veya bu izin verilmemişse tire işaretini içerebilir.
Her bir izin belgesi aslında ne anlama geliyor?
- Okuma (r): Bir dosya söz konusu olduğunda, dosyayı açıp içindekileri görmenizi sağlar. Bir klasörden bahsediyorsak, bu, dosyayı açıp içeriğini görebileceğiniz anlamına gelir. Dosyaları ve alt dizinleri listele kapsamak.
- Yazma (w): Dosya içeriğini değiştirme veya hatta silme olanağı sağlar. Dizinler söz konusu olduğunda, şunları yapmanıza olanak tanır: oluştur, sil veya yeniden adlandır İçindeki unsurlar.
- Yürütme (x): Bir dosya için, bir komut dosyasının veya programın çalışmasına olanak tanıyan şeydir. Klasörlerde ise bu izin hayati önem taşır çünkü size şunları yapmanıza olanak tanır... dizine erişin komutu kullanarak
cd.
chmod komutu: Erişim ayarlarını yapma
Komut chmod (Değiştirme modu), bu izinleri değiştirmek için kullandığımız araçtır. Bunu kullanmanın iki yolu vardır: daha sezgisel olan sembolik ve yöneticiler tarafından daha hızlı olduğu için tercih edilen sekizli (oktal).
In sembolik modDeğişikliğin kimleri etkilediğini belirtmek için harfler (kullanıcı için u, grup için g, diğerleri için o, herkes için a) ve izin eklemek veya kaldırmak için '+' veya '-' gibi semboller kullanırız. Örneğin, grubun bir dosyaya yazabilmesini istiyorsanız, şunu kullanırsınız: chmod g+w archivo.txtBu, oldukça esnek bir yöntemdir. İzinleri gerektiği gibi ayarlayın. Yapılandırmanın geri kalanını değiştirmeden.
El sekizli mod İkili sisteme dayalı sayılar kullanır. Her iznin bir değeri vardır: okuma 4, yazma 2 ve çalıştırma 1'dir. Bu değerleri topladığımızda 0 ile 7 arasında bir sayı elde ederiz. Örneğin, 7 (4+2+1) tam erişim anlamına gelirken, 5 (4+0+1) okuma ve çalıştırma anlamına gelir. Dolayısıyla, aşağıdaki gibi bir komut chmod 755 carpeta hibe Sahibine tam kontrol ve grup üyeleri ile diğerleri için yalnızca okuma/yürütme erişimi.
Mülkün chown ve chgrp ile yönetimi
Bazen, izinler doğru olsa bile, dosya sahibi doğru kişi olmadığı için dosya çalışmaz. İşte bu noktada [uygun araç/uygulama] devreye girer. chown (Sahibi değiştir). Bu komut şunlara olanak tanır: kullanıcı ve grubu değiştir Dosyaya sahip olan kişi. En yaygın sözdizimi şöyledir: chown usuario:grupo archivo.
Web sunucularında dosyaların sunucu kullanıcısına ait olması (örneğin, www-data Apache veya Nginx'te olduğu gibi, web sitesinin belirli klasörlere yazabilmesi için (örneğin Apache veya Nginx'te) bir değişiklik yapmanız gerekir. Bu değişikliği bir klasöre ve içindeki her şeye uygulamak istiyorsanız, şunu kullanmalısınız: özyinelemeli seçenek -RÖrneğin, koşmak chown -R www-data:www-data /var/www/html.
Sistemde kullanıcı ve grup yönetimi
Yukarıdakilerin hepsinin anlamlı olması için öncelikle bu kullanıcıların kimler olduğunu yönetmemiz gerekiyor. Linux'ta, aşağıdaki gibi komutlar kullanılır: useradd o adduser hesap oluşturmak için ve passwd Onlara bir anahtar atamak için. Tüm bu bilgiler, aşağıdakiler gibi kritik dosyalarda saklanır: / Etc / passwd (hesap bilgileri) ve / etc / shadow (Şifrelenmiş parolalar).
İzinleri tek tek atamak zorunda kalmamak için gruplar şarttır. groupadd Grubu oluşturduk ve usermod -aG Kullanıcıları ekliyoruz. Bu şekilde, verebiliyoruz. bir çalışma ekibi için toplu izinler Sistem güvenliğini tehlikeye atmadan belirli bir klasöre erişim sağlamak.
Terleme ve yükseltilmiş ayrıcalıklar
Her zaman root olarak çalışmak önerilmez, çünkü bir hata tüm sistemi silebilir. Bunun için şunu kullanıyoruz: sudoBu, süper kullanıcı ayrıcalıklarıyla komutları çalıştırmamızı sağlar. Kimin ne yapabileceğine dair yapılandırma dosyasında bulunur. / Etc / SudoersBu, her zaman komutla düzenlenmelidir. visudo paragraf Linux'ta sudo hatalarını giderme ve sistemden dışarıda kalmamıza neden olacak sözdizimi hatalarından kaçınalım.
Sunucularda güvenlik ve en iyi uygulamalar
Birçok acemi kullanıcının yaptığı yaygın bir hata, bir şey çalışmadığında bir klasöre 777 izinleri atamaktır. Bu, herhangi bir saldırgana kapıyı ardına kadar açar. İdeal olarak, en az ayrıcalık ilkesini izlemelisiniz : görevi tamamlamak için gerekli olan minimum erişimi verin.
Genel kural olarak, dosyaların izinleri 644 (sahibi yazabilir, diğer herkes yalnızca okuyabilir) ve klasörlerin izinleri 755 olmalıdır . SSH anahtarları veya parola korumalı yapılandırma dosyaları (.env) gibi son derece hassas dosyalar için, 600 izin ayarı doğru ayardır ve bu sayede sahibinden başka hiç kimse içeriği okuyamaz.
Web sitenizde korkulan 403 Yasak hatasıyla karşılaşırsanız, bunun büyük olasılıkla sahiplik veya izin sorunundan kaynaklandığını unutmayın. Herhangi bir köklü değişiklik yapmadan önce, web sunucusunun dosyaların sahibi olduğundan ve dizinlerin gezinmeye izin verecek şekilde yürütme izninin ayarlanmış olduğundan emin olun.
Linux sunucuları için ilk savunma hattı, chmod ve chown gibi araçlar kullanılarak kullanıcıların, grupların ve izinlerin doğru şekilde yönetilmesidir. Varsayılan izinleri tanımlamak için umask maskesinin kullanılmasından, özyinelemeli dizin yönetimine ve sudoer'ların sıkı kontrolüne kadar her ayarlama, potansiyel saldırılara karşı istikrarlı ve dayanıklı bir ortam oluşturmaya katkıda bulunur ve sistem süreçlerinin ve insan kullanıcılarının veri bütünlüğünden ödün vermeden bir arada var olmasını sağlar.
Genel olarak bayt ve teknoloji dünyası hakkında tutkulu bir yazar. Bilgilerimi yazarak paylaşmayı seviyorum ve bu blogda da bunu yapacağım; size gadget'lar, yazılım, donanım, teknolojik trendler ve daha fazlasıyla ilgili en ilginç şeyleri göstereceğim. Amacım dijital dünyada basit ve eğlenceli bir şekilde gezinmenize yardımcı olmaktır.




