Debian 8’e sudo özelliği eklemek

Neden Debian’da “sudo” kurulu gelmez?

Aslında Debian’da “sudo” kurulu gelir. ancak dikkat edilmeyen bir husus var ki bu sebeple “sudo” öntanımlı olarak kurulmuyor. Bu yüzden işlerinizi “su” ile halletmeniz gerekiyor. Bu durumun önüne geçmek için “Debian” kurulumu sırasında sizden istenen “root” kullancısına parola tanımlama bölümünde “root” kullanıcısına parola tanımlamadan, parola alanını boş bırakarak o adımı geçmeniz gerekmektedir. Böylelikle sistem kurulumu tamamlandığında “sudo” özelliğine haiz bir sisteme sahip olursunuz.

Neden “su” yerine “sudo” kullanılmalı?

“su” kullanmanız gerekiyorsa, bu, yapılacak tüm sistem çapındaki işlemler için “root” kullanıcı “shell”ine ulaşmak için aktif bir “root” kullanıcısının olmasını gerektirir. Bu da ister istemez sistem açıklarına sebep olabilir. Aktif bir “root” hesabı hiç beklemediğiniz bir anda sisteminizde oluşan bir açıktan faydalanılmasını sağlayabilir. Bu yüzden “su” yerine “sudo” kullamanız sisteminizin güvenliği için iyi bir adımdır. Böylelikle aktif bir “root” kullanıcısı olmasa bile sistem çağında işlem yapabilmenize olanak sağlanır.

Yüksek güvenli parolası olan bir “root” kullanıcısı olması yerine “root” işlemlerini yapabilecek başka bir kullanıcı olmasının ne gibi bir avantajı olabileceğine gelirsek;

Her sistemde standart olarak bir “root” kullanıcısı bulunduğundan açık hedeftir. Bu yüzden saldırganlar başka kullanıcı aramakla uğraşmaz doğrudan “root” kullanıcısını hedef gözetirler, ve yapmaları gereken sadece şifresini ele geçirmektir. Aktif bir “root” kullanıcısı yoksa, saldırgan önce “root” haklarına sahip olabilen bir kullanıcı tespit etmelidir. bu da demek oluyor ki sistemdeki kullanıcı isimlerini bilmelidir (düşük bir ihtimal). Bu kullanıcıyı bulduktan sonra şifresini ele geçirmeye çalışmak zorundadır. Aktif bir “root” kullanıcısına saldırmaktan çooook daha meşakatli bir durum söz konusu olduğunu anlamışsınızdır.

Debian 8’de “sudo” kurulumu ve “root” kullanıcısının kullanılmaz hale getirilmesi:

Gerekli bilgileri aldığınıza ve kafadaki soru işareti bulutlarını dağıttığımıza göre bu işlemlerin nasıl yapılacağına geçebiliriz.

En başta anlattığım gibi, eğer Debian kurulumunda “root” kullanıcısına parola tanımlamadıysanız zaten “sudo”ya sahip bir sisteminizin olması gerekmektedir. Eğer kurulum esnasında “root “kullanıcısına parola tanımladıysanız önce “sudo” komutunu kurmamız gerekmektedir. bunun için önce “root” kullanıcısı olmamız gerekmektedir.

LocalHost$ su –
Password:

Daha sonra gerekli paketi kurmak gerekli:

root@LocalHost# apt-get install sudo
Reading package lists… Done
Building dependency tree
Reading state information… Done
The following NEW packages will be installed:
sudo
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 855 kB of archives.
After this operation, 2,390 kB of additional disk space will be used.
Get:1 http://ftp.tr.debian.org/debian/ jessie/main sudo amd64 1.8.10p3-1+deb8u3 [855 kB]
Fetched 855 kB in 0s (1,753 kB/s)
Selecting previously unselected package sudo.
(Reading database … 90343 files and directories currently installed.)
Preparing to unpack …/sudo_1.8.10p3-1+deb8u3_amd64.deb …
Unpacking sudo (1.8.10p3-1+deb8u3) …
Processing triggers for man-db (2.7.0.2-5) …
Processing triggers for systemd (215-17+deb8u4) …
Setting up sudo (1.8.10p3-1+deb8u3) …
Processing triggers for systemd (215-17+deb8u4) …

Paket kurulumu tamamlandıktan sonra kendi kullanıcımızı “sudoers” listesine yani “sudo” grubuna eklememiz gerekmektedir.

root@LocalHost# adduser kullanı_adı sudo

Bu işlemden sonra kullanıcımızın “sudo” ile “root” haklarına sahip olabilmesi için, bu kullanıcı ile yeniden oturum açmanız gerekmektedir. Çünkü her kullanıcının grup bilgileri oturum açtığında bir kereye mahsus okunmaktadır ve oturum kapatılıp yeniden açılıncaya kadar değişiklikler etkin olmaz. Yeniden oturum açtıktan sonra aşağıdaki komut ile “sudo” komutunu kullanıp kullanamadığınızı kontrol edin:

LocalHost$ sudo -s
[sudo] password for kullanıcı_adı:
root@LocalHost#

Kullanıcınız artık “sudo” ile root yetkileri alabilecek konuma geldi. Bundan sonra aktif “root” kullanıcısını tecrit etmemiz lazım. bunun için aşağıdaki komutu kullanmanız yeterlidir:

LocalHost$ sudo passwd -l root
passwd: password expiry information changed.

Eğer daha sıkı bir “root” kullanıcısı güvenliği istiyorsanız “/etc/passwd” dosyasında aşağıdaki satırda değişik yapmanız gerekmektedir.

root:x:0:0:root:/root:/bin/bash

Bu satırda “/bin/bash” kısmında kullanıcının login olduğu zaman hangi “shell”i kullanacağı belirtilmiş. bu “shell”i “/usr/sbin/nologin” ya da “/bin/false” ile değiştirdiğiniz takdirde kullanıcı aktif olsa bile sisteme bu kullanıcı hesabı ile giriş yapılamaz. Böylece “root” kullanıcısına ikinci bir güvenlik adımı eklemiş olduk.

 

Bu yapılandırmadan sonra “root” kullanıcısı olmayan sisteminizde kendi kullanıcınız ile “root” işlemleri yapabilir hale gelmiş bulunmaktasınız.