Ağ Yönetimi (Network Management)
Tarih: 2026-06-15 | Kategori: Linux
Etiketler: Linux
Linux'ta ağ yönetimi, komutlar ve yapılandırma dosyaları aracılığıyla gerçekleştirilir. Ağ yapılandırması ve sorun giderme için birçok komut mevcuttur. Bu bölüm size bir Linux işletim sisteminde ağın nasıl yapılandırılacağını öğretecektir.
*Not: Bu bölüm Debian ve türevi dağıtımlar için geçerlidir.*
Ağ Arayüzü Yapılandırması (Network Interface Configuration)
[Image of Linux network interface card architecture diagram]
Birçok GNU/Linux sistem yöneticisi, ağ arayüz kartlarını (NIC) yapılandırmak için hala geleneksel `ifconfig` komutunu tercih etmektedir. Bu, Linux ve Unix tabanlı işletim sistemlerinde ağ arayüzlerini yapılandırmak ve yönetmek için kullanılan geleneksel bir komuttur. Sistem yöneticileri ve ağ uzmanları tarafından yıllardır tercih edilen bu araç; IP adresleri atama, ağ maskelerini ayarlama ve ağ arayüzlerini etkinleştirme veya devre dışı bırakma gibi çeşitli ağ yapılandırma görevlerini gerçekleştirmek için kullanılmıştır.
Mevcut Cihazları Listeleme
`ifconfig` komutu parametre olmadan çağrıldığında, mevcut ağ cihazlarını (NIC, Ağ Arayüz Denetleyicisi) listeler.
root@hackerbox:~$ ifconfig
Yukarıdaki çıktıda 2 adet ağ arayüzü bulunmaktadır:
Belirli bir arayüzü görüntülemek için, parametre olarak arayüz adını verin:
root@hackerbox:~$ ifconfig eth0
DOWN (yani devre dışı) olan arayüzleri görüntülemek için `-a` parametresini kullanın.
root@hackerbox:~$ ifconfig -a
Arayüzleri Etkinleştirme ve Devre Dışı Bırakma
Bir arayüzü (örneğin `eth0`) aktif hale getirmek (up) için `ifconfig` komutunu şu şekilde kullanın:
root@hackerbox:~$ ifconfig eth0 up
Bir arayüzü kapatmak (down) için aşağıdaki komutu kullanın:
root@hackerbox:~$ ifconfig eth0 down
*Not: Bu işlemleri internete bağlı olduğunuz arayüz üzerinde gerçekleştirmek internet bağlantınızı etkileyebilir.*
IP Adresi Atama
`ifconfig` komutunu kullanarak bir ağ arayüzüne IP adresi atamak veya mevcut bir IP adresini güncellemek için, doğrudan arayüz adını ve istediğiniz IP adresini yazın:
root@hackerbox:~$ ifconfig eth0 172.20.1.110
Yukarıdaki örnekte, `eth0` arayüzünün IP adresi `172.20.1.110` olarak değiştirilmiştir.
Ağ Maskesi Atama
Bir ağ arayüzünün ağ maskesini (netmask) ayarlamak için aşağıdaki komutu kullanın:
root@hackerbox:~$ ifconfig eth0 netmask 255.255.255.0
Promiscuous Modu
Ethernet kartınız destekliyorsa, aynı ağdaki diğer cihazlara yönelik paketleri işlemek için promiscuous (karmaşık) modunu etkinleştirebilirsiniz.
Promiscuous modunu etkinleştirmek için:
root@hackerbox:~$ ifconfig eth0 promisc
Promiscuous modunu devre dışı bırakmak için:
root@hackerbox:~$ ifconfig eth0 -promisc
MAC Adresini Değiştirme
Cihazınızın MAC adresini değiştirebilirsiniz. Bunun ağın ARP tablolarında karışıklığa neden olabileceğini unutmayın, bu yüzden dikkatli kullanın.
root@hackerbox:~$ ifconfig eth0 hw ether AA:BB:CC:DD:EE:FF
DNS Ayarları
Linux'ta DNS ayarları `/etc/resolv.conf` dosyasında bulunur. Nano gibi bir metin düzenleyici kullanarak bu dosyadaki DNS ayarlarını güncelleyebilirsiniz.
root@hackerbox:~$ nano /etc/resolv.conf
Dosya içeriği şuna benzer olacaktır:
nameserver 172.20.1.1
Kullanmak istediğiniz DNS sunucularını bu formatta satır satır ekleyebilirsiniz. Örneğin, sistem genelinde Cloudflare'in DNS sunucularını kullanmak için dosyayı gösterildiği gibi güncelleyin:
nameserver 1.1.1.1
nameserver 1.0.0.1
SSH (Secure Shell)
[Image of SSH connection protocol and tunneling diagram]
SSH, bir ağ üzerinden başka bir bilgisayara güvenli bir şekilde bağlanmak ve komutları yürütmek için kullanılan bir protokoldür. SSH, özellikle uzak bilgisayarlara erişmek ve yönetmek için yaygın olarak kullanılır. `ssh` komutu bir SSH bağlantısı oluşturmak için kullanılır.
SSH Hizmetini Kurma ve Başlatma
Öncelikle SSH servisini kurmanız gerekebilir. Debian tabanlı bir sistemde, aşağıdaki komutu kullanarak `openssh-server` paketini kurabilirsiniz:
sudo apt-get update
sudo apt-get install openssh-server
Kurulum tamamlandıktan sonra servisi başlatabilirsiniz:
sudo systemctl start ssh
Sistem açıldığında SSH servisinin otomatik olarak başlamasını sağlamak için:
sudo systemctl enable ssh
SSH ile Uzak Sunucuya Bağlanma
Uzak bir sunucuya bağlanmak için `ssh` komutunu kullanabilirsiniz:
ssh kullanıcı_adı@ip_adresi
Örneğin, kullanıcı adınız `root` ve sunucu adresi `192.168.1.100` ise:
ssh root@192.168.1.100
Bu komutu çalıştırdıktan sonra, uzak sunucunun şifresini girmeniz istenecektir.
SSH Anahtar Çifti Oluşturma
Parola tabanlı girişin yanı sıra, bir SSH anahtar çifti kullanarak parolasız (ve daha güvenli) bir şekilde bağlanabilirsiniz. `ssh-keygen` komutunu kullanarak bir SSH anahtarı oluşturabilirsiniz:
ssh-keygen
Bu komutu çalıştırdıktan sonra, oluşturulan genel anahtarı (public key) uzak sunucuya kopyalamanız gerekir:
ssh-copy-id kullanıcı_adı@ip_adresi
Örneğin:
ssh-copy-id root@192.168.1.100
Bu işlem tamamlandıktan sonra, şifre girmeden SSH kullanarak bağlanabilirsiniz.
SSH Yapılandırma Dosyası
SSH yapılandırma ayarları genellikle `/etc/ssh/sshd_config` dosyasında bulunur. SSH portunu değiştirmek veya root girişlerini devre dışı bırakmak gibi çeşitli SSH ayarları bu dosyada yapılandırılabilir:
sudo nano /etc/ssh/sshd_config
Dosya içeriğinde, port numarasını değiştirmek için `Port` ayarını bulup düzenleyebilirsiniz:
Port 2222
Değişiklikleri yaptıktan sonra SSH servisini yeniden başlatmanız gerekir:
sudo systemctl restart ssh
Bu bölümde SSH kullanımının temellerini öğrendik. Artık ağ üzerinden güvenli bağlantılar kurabilir ve SSH kullanarak uzak sunucuları yönetebilirsiniz.