Kategori arşivi: Linux

Linux find komutu ile Bulunan Dosyaları Taşıma

Linux da find komutu ile arama işlemlerine parametre ekleyerek komutu daha işlevsel bir hale getirebiliyoruz.
Find komutu ile bulunan dosyaları taşımak için gerekli olan komut

find ~/arama yapılacak dizin -name "*dosya uzantısı veya ismi" -exec mv {} ~/taşınacağı dizin \;

Find komutuna değiştirme zamanı gibi parametreler vererek üzerinde değişiklik yapılan dosyaları başka bir dizine taşıyabiliriz.

find ~/arama yapılacak dizin -name "*dosya uzantısı veya ismi" -mtime -1 -exec mv {} ~/taşınacağı dizin \;

Linux Sistemlerde Ssh Serverın kurulumu

Bu yazımız linux sistemlerde ssh serverın kurulumu ve yapılandırması hakkında olacak.
Linux sistemlerde ssh serverın kurulumu için

sudo apt-get install openssh-server

Kurulum hatasız bir şekilde sonuçlandıktan sonra “/etc/ssh/sshd_config” dosyasında gerekli ayarlamaları yapıyoruz.
ssh serverın dinleme yapacağı port varsayılanda 22 istersek bunu config dosyasındaki port parametresini kullanarak değiştirebiliriz.
ssh serverı default olarak root ile bağlanmaya izin vermiyor, eğer ssh servera root olarak bağlanacaksak PermitRootLogin parametresini değiştirmeliyiz.
Sistemimizde iki adet ağ birimi varsa ve bunlardan birinden bağlantı kabul edilmesini istiyorsanız.
ListenAddress parametresine dinleme yaapacak ağ biriminin ip adresini girin.
Örnek bir config dosyası:

Port 422
PermitRootLogin yes
ListenAddress 10.0.0.10

Linux Sistemlerde İp İşlemleri

Bu yazımız linux sistemlerde ip yapılandırması ile ilgili olacak.Linux sistemlerde eskiden ip yapılandırmasını ifconfig komutuyla yapıyorduk.Şimdi ise ip komutu ile yapacağız.Varolan ağ birimlerini görmek için

ip link show

Ağ birimine ip adresi atamak için

ip address add dev eth0 10.0.0.10/24

Ağ birimine route atamak için

ip route add 10.0.0.0/24 via 10.0.0.1 dev eth0

Bilgisayarın dns çözümlemelerini yapabilmesi için “/etc/resolv.conf” dosyasının içinde dns adreslerinin tanımlaması yapılmalı.

nameserver  8.8.8.8

Bilgisayara static ip adresi verilmek istenirse “/etc/network/interfaces” dosyasına gerekli bilgileri girmeliyiz.
Örnek:

auto eth0
iface eth0 inet static
address 10.0.0.10
netmask 255.255.255.0
gateway 10.0.0.1
dns-nameservers 8.8.8.8 8.8.4.4

Linux Sistemlerde Kullanıcı ve Group Yönetimi

Bu yazımız linux sistemlerde kullanıcı ve group yönetimi hakkında olacak.Linux işletim sistemleri multiuser olarak tasarlanmıştır.Sistem üzerinde çalışan çoğu uygulama sistemle etkileşime geçmek için kullanıcı oluşturur.Sistemde oluşturulan her kullanıcıyla beraber kullanıcı ismine uygun olarak birde grup oluşturulur(siz grup belirtmediğiniz sürece).Dosya izinleri gibi işlemler için sistemde gruplar oluşturulur.Gruplara kullanıcılar eklenerek gerekli izinler verilmiş olur.

Groupların Yönetimi

Grupları yönetmek için groupadd,groupmod ve groupdel komutları kullanılır.Bu komutlar “/etc” dizini altındaki group dosyasını işler.Gruplar için şifre oluşturulursa,şifreler “/etc/gshadow” dosyası içinde tutulur.

Grup oluşturmak için aşağıdaki komutları kullanmalısınız.

#groupadd satici
Oluşturulan grubu görmek için
#cat /etc/group | grep satici
satici:x:1001:
Grup oluştururken id atamak istersek
#groupadd satici -g 1001

Mevcut gruplar üzerinde değişiklik yapmak için aşağıdaki komutları kullanabiliriz.
Grup id sini değiştirmek için

#groupmod -g 2002 satici
Grubun ismini dğiştirmek için
#groupmod -n musteri_temsilcisi satici

Gruba kullanıcı eklemek ve çıkarmak için aşağıdaki komutları kullanabiliriz.Gruplara şifre verebiliriz ve bu şekilde gruba herhangi bir kullanıcı eklenmek istendiğinde şifre soracaktır.
Gruba şifre koymak için

#gpasswd satici
Gruba kullanıcı eklemek için
#gpasswd -a ahmet satici
Grupdan kullanıcıyı çıkarmak için
#gpasswd -d ahmet satici

Varolan bir grubu silmek için
#groupdel satici

Kullanıcı Yönetimi

Linux sistemlerde kullanıcıları yönetmek için useradd,usermod ve userdel komutları kullanılır.Bu komutlar “/etc” dizini altındaki passwd dosyasını işler.Eklenen kullanıcıların home dizini altında varsayılan olarak oluşturulacak dosyaları “/etc/skel/” dizini altında oluşturabiliriz.Buraya eklenen dosyalar kullanıcı home dizinine kopyalanır.
Kullanıcıların varsayılan ayarları “/etc/login.defs” dosyasında tutulur.Buradan varsayılan olarak kullanıcıların mail dosyası,şifre uzunluğu ve şifresinin hangi aralıklarla değiştirmesi gerektiği gibi ayarlar yapılabilir.

Yeni kullanıcı oluşturmak için

#useradd ahmet
Kullanıcıya uid belirlemek ve gruba eklemek için
#useradd ahmet -u 1000 -g satici
Kullanıcılara şifre atamak için
#passwd ahmet

Kullanıcı üzerinde değişiklikler yapmak için

#usermod -u 1002 -g ftp ahmet

Kullanıcıyı sistemden silmek için

#userdel ahmet
Kullanıcıyı home dizini ile birlikte sistemden silmek için
#userdel -r ahmet

Kullanıcılar arasında geçiş yapmak için

#su - ahmet

Ayrıca aşağıdaki kodlarla kullanıcı kilitli ve serbest olarak ayarlayabiliriz.

Kullanıcıyı kilitlemek için
#usermod -L ahmet
Kullanıcıyı serbest bırakmak için
#usermod -U ahmet

Kullanıcı ve grup işlemleri için örnek uygulamayı aşağıda bulabilirsiniz.
İlk önce bir dizin oluşturalım

#mkdir /tmp/satici
Grup oluşturalım
#groupadd satici
Kullanıcı oluşturalım
#useradd ahmet -g satici
Oluşturduğumuz dizine grubu atayalım
#chown  :satici /tmp/satici
Dizine sadece grup için izin verelim
#chmod 770 /tmp/satici

Yukarıdaki örnek de bir grup oluşturduk ve grubumuza bir kullanıcı atadık.Temp dizini altında bir dizin oluşturduk ve bu dizine grubu atadık.Root ve ahmet haricinde sistemde bir kullanıcı oturum açtığında /tmp/satici dizinine erişemeyecek ve herhangi bir işlem yapamayacak.