Browse Category

Linux

linux ping kapatma

Linux sunucunuzu ping’e kapatmak için aşağıdaki işlemleri yapabilirsiniz. Bu işlemden sonra sunucunuza ping atamazlar.

nano ile sysctl.conf dosyasını açıyoruz;

Devamı..

Memory Cache Güvenlik Açığı (Memcache Security)

AÇIKLAMALAR;
Performans ve sunucu yükünü hafifletmek amaçlı kullanılan memcache yapısında çıkan bir açık son zamanlarda sunucularda kesintilere varabilecek derecede trafik çıkışları yaratmıştır.

Yaptığımız araştırma sonucunda, network üzerinde TCP/UDP 11211 portundaki hareketliliğin sunucularda kullanılan memcache sisteminden kaynaklandığı tesbit edilmiştir.

Network üzerinden 11211 portlarını kullanan ip adresleri ve sunucu müşterilerimize gerekli açıklama ve destek verilmiştir. Sunucunuz üzerinden böyle bir sorun yaşıyorsanız aşağıdaki işlemleri yaparak açığı kapatabilir veya webkur destek ekibimize teknik destek bildirimi oluşturabilirsiniz.

Memcache nedir?

Memcache , facebook ‘un geliştiricilerini nde arasında yer aldığı , yüksek trafiği olan sitelerin daha az kaynakla daha performanslı çalışması için kullanılan bir yapıdır. Httpd isteklerini belleğe (ram) kaydederek sonraki isteklerde tekrar yorumlanmadan doğrudan cevap vermesini sağlar. Böylece sunucu üzerinde yük azaltılmış olur.

MEMORY CACHE AÇIĞI KAPATMA

nano vi veya vim editörüyle /etc/sysconfig/memcached dosyasını açın

nano /etc/sysconfig/memcached

OPTIONS=”” parametresini aşağıdaki gibi güncelleyin

OPTIONS=”-l 127.0.0.1″]

memcache servisini yeniden başlatın

service memcached restart

netstat yardımıyla 11211 portunun 127.0.0.1 (sadece sunucunuzun lokali) çalıştığına emin olabilirsiniz

netstat -ntlp | grep 11211

bilgisayarınızdan da port açıkmı kontrol edebilirsiniz. cmd açın ( Bilgisayarım – > başlat -> çalıştır -> cmd )

açılan diyalog kutusuna

 telnet ipadresiniz 11211 

Eğer bir sonuç alamıyorsanız memcache açığını kapatmışsınız anlamına gelmektedir.

Clamav Kurulum ve kullanımı

Kurulum işlemi

yum install epel-release

yum install clamav clamd -y

Kurulum işlemi tamamlandıktan sonra ilk olarak clamav veri tabanını güncelleyelim

freshclam

Virüslü dosyaları bulmak ve silmek için

clamscan -r /home –remove -v –stdout

Silmesin ve sadece log dosyasına virüslü dosyaları kaydetsin derseniz

clamscan –recursive –log=/tmp/clamscan.log /home/kullanıcı-adı

Sadece bulunduğunuz kasörün içindeki klasör ve dosyaları taramasını isterseniz

clamscan -r

Plesk panel kullanıyorsanız

clamscan –recursive –log=/tmp/clamscan.log /var/www/vhosts/siteniz.com/

Loglara

nano /tmp/clamscan.log

komutuyla bakabilir ve virüslü dosyaları inceleyebilirsiniz.

 

Linux iptables ile ddos/syn ataklarından korunmak

Linux sunucularda işinize yarayabilecek bir makale olacağını düşünüyorum. Lütfen işlemleri yapmadan yedek alınız veya test ortamında denemeden aktif bir sunucuda uygulamayınız. iptables kullanımıyla ilgili bilginiz yoksa iptables kullanımı makalemizi inceleyebilirsiniz

Saldırı çeşitlerine göre sunucunuzu belirli ataklardan koruyabilirsiniz. Genelde sitelerin http servislerini durdurmak amacıyla http/mysql gibi herkese açık portlara yapılan ve çok yüksek değerlerde olmasa da devamlı olarak istek gönderip servisi çökertebilen saldırılar için linux sunucuların firewall servisi olan iptables ı kullanarak yazılmış  aşağıdaki kurallar işinize yarayabilir.

Yaygın kullanılan saldırı yöntemleri için en iyi kernel yapılandırması olarak aşağıdaki yapılandırma dosyasını centos7 kerneliniz için kullanabilirsiniz.

Aşağıda anlattığım işlemler sunucu optimizasyonunuza göre kernel panic hatası vb. alabilme olasılığınız olabilir. Bu nedenle bir sorun oluştuğunda müdahale edebilecek bilgiye sahip değilseniz kullanmanız tehlikelidir. 

sysctl.conf (/etc/sysctl.conf) dosyanızı yedekledikten sonra ,

[cc]
kernel.printk = 4 4 1 7
kernel.panic = 10
kernel.sysrq = 0
kernel.shmmax = 4294967296
kernel.shmall = 4194304
kernel.core_uses_pid = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
vm.swappiness = 20
vm.dirty_ratio = 80
vm.dirty_background_ratio = 5
fs.file-max = 2097152
net.core.netdev_max_backlog = 262144
net.core.rmem_default = 31457280
net.core.rmem_max = 67108864
net.core.wmem_default = 31457280
net.core.wmem_max = 67108864
net.core.somaxconn = 65535
net.core.optmem_max = 25165824
net.ipv4.neigh.default.gc_thresh1 = 4096
net.ipv4.neigh.default.gc_thresh2 = 8192
net.ipv4.neigh.default.gc_thresh3 = 16384
net.ipv4.neigh.default.gc_interval = 5
net.ipv4.neigh.default.gc_stale_time = 120
net.netfilter.nf_conntrack_max = 10000000
net.netfilter.nf_conntrack_tcp_loose = 0
net.netfilter.nf_conntrack_tcp_timeout_established = 1800
net.netfilter.nf_conntrack_tcp_timeout_close = 10
net.netfilter.nf_conntrack_tcp_timeout_close_wait = 10
net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 20
net.netfilter.nf_conntrack_tcp_timeout_last_ack = 20
net.netfilter.nf_conntrack_tcp_timeout_syn_recv = 20
net.netfilter.nf_conntrack_tcp_timeout_syn_sent = 20
net.netfilter.nf_conntrack_tcp_timeout_time_wait = 10
net.ipv4.tcp_slow_start_after_idle = 0
net.ipv4.ip_local_port_range = 1024 65000
net.ipv4.ip_no_pmtu_disc = 1
net.ipv4.route.flush = 1
net.ipv4.route.max_size = 8048576
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.icmp_ignore_bogus_error_responses = 1
net.ipv4.tcp_congestion_control = htcp
net.ipv4.tcp_mem = 65536 131072 262144
net.ipv4.udp_mem = 65536 131072 262144
net.ipv4.tcp_rmem = 4096 87380 33554432
net.ipv4.udp_rmem_min = 16384
net.ipv4.tcp_wmem = 4096 87380 33554432
net.ipv4.udp_wmem_min = 16384
net.ipv4.tcp_max_tw_buckets = 1440000
net.ipv4.tcp_tw_recycle = 0
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_max_orphans = 400000
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_rfc1337 = 1
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_syn_retries = 2
net.ipv4.tcp_max_syn_backlog = 16384
net.ipv4.tcp_timestamps = 1
net.ipv4.tcp_sack = 1
net.ipv4.tcp_fack = 1
net.ipv4.tcp_ecn = 2
net.ipv4.tcp_fin_timeout = 10
net.ipv4.tcp_keepalive_time = 600
net.ipv4.tcp_keepalive_intvl = 60
net.ipv4.tcp_keepalive_probes = 10
net.ipv4.tcp_no_metrics_save = 1
net.ipv4.ip_forward = 0
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.all.rp_filter = 1
[/cc]

Bu sysctl.conf ayarları, bu kılavuzda sağladığımız iptables kurallarının etkinliğinin yanı sıra DDoS kapsamında sunucunuzun performansını en üst düzeye çıkarmanıza yardımcı olur.

 

IPTABLES ile antidos kuralları

Yukarıda DDoS saldırılarının etkilerini hafifletmek için çekirdek ayarları gösterdim. mangle tablosunu ve PREROUTING zinciriyle çoğu TCP DDoS saldırılarını azaltmak için birkaç örnek kurallara geçelim.
Çok farklı ddos saldırıları bulunuyor. Tüm ddos saldırı yöntemlerini durdurabilmek neredeyse imkanszdır Neyse ki, meşru görünen SYN paketlerini kullanmayan hemen hemen her TCP tabanlı DDoS saldırısını hafifletmemize yardımcı olan bağlantı izleme (nf_conntrack çekirdek modülü) adı verilen bir şey var.Buna, sahte TCP bayrakları kullanan DDoS saldırılarının yanı sıra her tür ACK ve SYN-ACK DDoS saldırısı da dahildir.

Çok sayıda TCP tabanlı DDoS saldırılarında işe yarayabilecek basit beş farklı iptables kuralları işinize yarayacaktır.

Geçersiz paketleri engelleme

iptables -t mangle -A PREROUTING -m conntrack –ctstate INVALID -j DROP

 

 

Syn olmayan ve yeni gelen paketleri engelleme

iptables -t mangle -A PREROUTING -p tcp ! –syn -m conntrack –ctstate NEW -j DROP

 

 

MSS değerlerini engelleme

iptables -t mangle -A PREROUTING -p tcp -m conntrack –ctstate NEW -m tcpmss ! –mss 536:65535 -j DROP

 

 

Sahte TCP imzalı blok paketleri engelleyin

iptables -t mangle -A PREROUTING -p tcp –tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -j DROP
iptables -t mangle -A PREROUTING -p tcp –tcp-flags FIN,SYN FIN,SYN -j DROP
iptables -t mangle -A PREROUTING -p tcp –tcp-flags SYN,RST SYN,RST -j DROP
iptables -t mangle -A PREROUTING -p tcp –tcp-flags SYN,FIN SYN,FIN -j DROP
iptables -t mangle -A PREROUTING -p tcp –tcp-flags FIN,RST FIN,RST -j DROP
iptables -t mangle -A PREROUTING -p tcp –tcp-flags FIN,ACK FIN -j DROP
iptables -t mangle -A PREROUTING -p tcp –tcp-flags ACK,URG URG -j DROP
iptables -t mangle -A PREROUTING -p tcp –tcp-flags ACK,FIN FIN -j DROP
iptables -t mangle -A PREROUTING -p tcp –tcp-flags ACK,PSH PSH -j DROP
iptables -t mangle -A PREROUTING -p tcp –tcp-flags ALL ALL -j DROP
iptables -t mangle -A PREROUTING -p tcp –tcp-flags ALL NONE -j DROP
iptables -t mangle -A PREROUTING -p tcp –tcp-flags ALL FIN,PSH,URG -j DROP
iptables -t mangle -A PREROUTING -p tcp –tcp-flags ALL SYN,FIN,PSH,URG -j DROP
iptables -t mangle -A PREROUTING -p tcp –tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROP

 

 

Özel alt ağlardan gelen (Sahtekar) paketleri engelleyin (spoofing olarakta bilinir)

iptables -t mangle -A PREROUTING -s 224.0.0.0/3 -j DROP
iptables -t mangle -A PREROUTING -s 169.254.0.0/16 -j DROP
iptables -t mangle -A PREROUTING -s 172.16.0.0/12 -j DROP
iptables -t mangle -A PREROUTING -s 192.0.2.0/24 -j DROP
iptables -t mangle -A PREROUTING -s 192.168.0.0/16 -j DROP
iptables -t mangle -A PREROUTING -s 10.0.0.0/8 -j DROP
iptables -t mangle -A PREROUTING -s 0.0.0.0/8 -j DROP
iptables -t mangle -A PREROUTING -s 240.0.0.0/5 -j DROP
iptables -t mangle -A PREROUTING -s 127.0.0.0/8 ! -i lo -j DROP

 

 

Sunucunuzu ping e kapatın

iptables -t mangle -A PREROUTING -p icmp -j DROP

 

 

connlimit ile bağlantıları sınırlayın 

iptables -A INPUT -p tcp -m connlimit –connlimit-above 80 -j REJECT –reject-with tcp-reset

**Aynı ip adresi üzerinden 80 den fazla bağlantı gerçekleşemez. 82 değerini kendinize göre düzenleyebilirsiniz 

 

Saniyede oluşabilecek bağlantıyı sınırlayın

Bir istemciden saniyede gelebilecek yeni tcp bağlantılarını sınırlar. Sınırı aşan bağlantıya izin vermeyecektir.

iptables -A INPUT -p tcp -m conntrack –ctstate NEW -m limit –limit 60/s –limit-burst 20 -j ACCEPT
iptables -A INPUT -p tcp -m conntrack –ctstate NEW -j DROP

 

iyi çalışmalar.

iptables kullanımı

iptables linux işletim sisteminde firewall işlemleri yapabileceğiniz harika bir moduldür. iptables sunucunuzda yüklü değilse

yum install iptables
komutuyla yum üzerinden veya ubuntu da apt-get ile yükleyebilirsiniz.

IPTABLES komutları ve yaptığı işlemler

ACCEPT Paketlerin geçisine izin verilir.
DROP Paketlerin geçişine izin verilmez.
REJECT Paketlerin erişimi reddedilir ve gönderen bilgilendirilir.
RETURN Zincirin sonuna gönderilir.
QUEUE Paketler kullanıcı alanına gönderilir.

Parametreler

-A ZİNCİR Zincire kural ekler.
-E ZİNCİR Zinciri yeniden adlandırır.
-D ZİNCİR Zincirden bir kural siler.
-D ZİNCİR Zincirden belirtilen numaradaki kurali siler.
-L ZİNCİR Belirtilen zincirdeki kurallari gösterir.
-E ZİNCİR Zinciri yeniden adlandirir.
-l ZİNCİR Zincirde belirtilen numaralı alana kuralı ekler.
-R ZİNCİR Zincirde kuralın yerine başkasını koyar.
-R ZİNCİR Zincirde belirtilen numaralı alana bir başkasını koyar.
-N ZİNCİR Yeni bir zincir oluşturur.
-X ZİNCİR Kullanıcının eklediği bir zinciri siler.
-F ZİNCİR Zincirdeki kuralların tümünü siler.
-P ZİNCİR Zincire genel politika ekler.

Zincirler ( INPUT,OUTPUT,FORWARD ve POSTROUTING PREROUTING ) büyük harflerle yazılır.

işlemler
Tüm kuralları silmek için

#iptables -F

Belirli bir zinciri silmek için

#iptables -X CHAIN_NAME

Örnekler

eth0 isimli ethernet arayüzümüde 80 portuna izin verelim. Burada udp için tcp yerine udp yazmanız yeterlidir.

iptables -A INPUT -i eth0 -p tcp -m tcp –sport 80 -j ACCEPT

Belirli bir ip adresine izin verelim

iptables -A INPUT -s 10.123.452.36 -j ACCEPT

    belirli bir ip aralığına belirli bir portu yasaklamak

iptables -I FORWARD -m tcp -p tcp –dport 443 -m iprange –src-range 192.168.0.100-192.168.0.254 -j REJECT

Yazdığınız kuralların kaydedilmesi ve reboot işleminden sonra tekrar çalışması için 

#Ubuntu ve türevi dağıtımlar için
sudo /etc/init.d/iptables save
sudo /etc/init.d/iptables restart

#Archlinux ve türevi dağıtımlar için
sudo /etc/rc.d/iptables save
sudo /etc/rc.d/iptables restart

Çok kullanılan linux komutları

Çoğu komut yanına -h veya –help yazıldığında küçük bir bilgi verir. Buna ek olarak linux’ta binlerce dokümanın bulunduğu manual sayfaları vardır. Yapmanız gereken tek şey man komutundan sonra bilgi almak istediğiniz komutun adını yazmak.

komut -h veya help : komut hakkında bilgi verir
man komut: Komut hakkında detaylı doküman verir

Dizin listeleme komutu

ls : Bulunduğun dizinin içeriğini göster
ls -a: Gizli dosyaları da göster
ls -l: Uzun listele (sahip, izinler, boyut ve tarih dahil)
ls | less: Uzun listeleri kısaltmak için

Dizin işlemleri

cd yol: yol dizinine geçer
cd ~: Sizin home dizininize geçer
cd –: Bir önceki dizine döner
cd..: Bir üst dizine geçer

 

Dosya işlemleri

cp kaynak hedef: Kaynaktan hedefe kopyalar
cp -R kaynak hedef : Önyineli(recursive) kopyalar
mkdir dizin : Yeni dizin yaratır
mv kaynak hedef : Dosyaları taşımak veya adlarını değiştirmek için
rm dosya : Dosyayı kaldırır
rm -R dizin : Önyineli kaldırır
rmdir dizin : Boş dizini kaldırır
touch dosya : Dosya varsa tarihini değiştirir, yoksa yaratır
pwd : Çalışılan dizinin ismini verir
Dosya arama

Herhangi bir dosyayı sistemde aramak için find ve locate komutları kullanılır. find bulunduğunuz dizinden başlayarak tüm alt-dizinleri arar. locate ise tüm dosyaları bir veritabanında tutar, bunun için hayli hızlıdır. Ancak bu veritabanı günde bir yenilendiğinden son kaydettiğiniz dosyaları bulamayabilirsiniz.

find yol -name dosyaadı : Belirttiğiniz dizinden başlayarak dosyayı arar
locate dosyaadı : Dosyayı arar
Metin dosyalarıyla çalışma

Kısa bir metin dosyasını görüntülemek için cat, metin dosyasında yön tuşları-Page Up/Down ile ilerlemek için less, dosyada bir yazıyı aramak için grep, satırları sıralamak için sort, ve küçük bir editör ile açmak için ise pico kullanılır.

cat dosyaadı : Dosyayı ekranda görüntüler
grep yazı dosyaadı: Yazıyı dosyada arar, bulunduğu satırı görüntüler
less dosyaadı: Dosyada ilerlemek için kullanılır (Çıkış q ile)
pico dosyaadı: Dosyayı basit bir metin editörüyle açar
sort dosyaadı: Dosyadaki satırları alfabetik sıraya göre dizip gösterir
Sıkıştırılmış dosya açma işlemleri

bunzip2 dosyaadı.bz2: bzip2 dosyasını (.bz2) açar
gunzip dosyaadı.gz: gzipped (.gz) arşivini açar
unzip dosyaadı.zip: PkZip veya WinZip dosyasını (.zip) açar
tar -xvf dosyaadı.tar: tar (.tar) arşivini (tarball) açar
tar -xvzf dosyaadı.tar.gz: tar arşivini (.tar.gz or .tgz) açar
Ağ servislerini kullanma

Dosya transferi yapmak için ftp, ağ bağlantısını kontrol etmek için ping, secure shell protokolüne bağlanmak için ssh, telnet protokolü üzerinden bağlanmak için ise telnet kullanılır.

ftp ipadres: FTP sunucusuna bağlanır
ping ipadres : Sunucuya ping isteği gönderir
ssh -l kullanıcıadı ipadres : Uzaktaki makinaya Secure Shell protokolü ile bağlanır
telnet ipadres : Uzaktaki makinaya TELNET protokolü ile bağlanır
Sistem bilgisi görüntüleme

date: İşletim sisteminin saat ve tarihini görüntüler
df -h: Disk kullanımını görüntüler
free: Bellek kullanımını görüntüler
history: Kullanılan hesap için çalıştırılan komutları listeler
hostname: Yerel sunucu adını verir
rwho -a: Ağa bağlı kullanıcıları listeler
uptime: Bilgisayar açıldığından beri geçen süreyi verir
who: Makineye bağlı kullanıcıları listeler
whoami: Giriş isminizi görüntüler
Dosya izinlerini değiştirme

chown kullanıcı.grup dosyaadı : Dosyaya sahip olan grubu ve kullanıcıyı değiştirir. Tabii ki bu komutu sadece o dosyanın sahibi kullanabilir
chmod (augo)(+-)(rwx) dosyaadı: Dosya üzerindeki okuma-yazma-çalıştırma (read-write-execute) izinlerini (rwx) farklı seviyedeki kullanıcılar için (all-owner-group-other) artırıp azalmayı (+/-) sağlar

Linux temel olarak kullanıcıyla X Pencere Sistemi adı verilen (startx buyruğuyla başlatıldığını daha önce görmüştük.) bir pencere ortamı olmaksızın, komut satırından iletişim sağlayan bir sistemdir.Konsolda her komuttan sonra helpine bakarsanız o komutun tüm fonksiyonlarını görebilirsiniz.

Örnek :
ls –h
veya : ls –help

root@aku: ~# _
tipik bir komut yorumlayıcı komut (prompt). Komutların biçim ya da yapısı kullanıcının isteğine göre oluşturulabilir. Bizim özel örneğimizde “@” iminden önceki etiket (root ) şu anda geçerli olan kullanıcıyı, aku ise sistemin konak adını belirtiyor. ~ karakteri, yöneticinin hesabı halinde /root olacak olan kullanıcıların anayerleşim (home) dizinini gösteriyor ve son olarak da “#” komutu bu özel hesabın süper kullanıcıya ait olduğunu belli ediyor. Kullanıcı şimdi hareketeden imleçten sonra herhangi bir komutu girebilir.

ls: dizin içeriğini listeler
Örneğin: root@aku:~$ ls
BasiliX/ dead.letter mail/
root@yonca:~# ls -l deneme
Bu örnekte kullanıcının nasıl bir komut (ls), bir komut seçeneği (-l) ve bir parametreden (deneme) oluşan bir deyim oluşturduğunu görebiliriz. Kullanıcı enter tuşuna bastığında, Linux deneme dosyasını listeleyecektir (dosyanın büyüklüğü, oluşturulduğu tarih, ve birkaç başka özelliğini görüntüleyecektir.) Bir kabuk deyiminin genel yapısı, bir karakter boşluktan sonra komut adını izleyen seçeneklerden oluşur.

ls -l -a deneme
Seçenekler aşağıdaki gibi birlikte de kullanılabirler:

ls -la deneme
Son olarak, komut dosya olarak birden fazla dosyaadı belirtilebilir, bunlar da birbirinden boşluk karakteriyle ayrılmalıdır.

ls deneme word yedek
Bu, deneme, word ve yedek dosyalarını ayrıntı vermeden listeler. Dosyaların daha ayrıntılı bir tanımlamasını almak isteyen daha önceki gibi -l seçeneğini kullanabilir.

ls -l deneme word yedek

Linux, sistemin nasıl kullanılacağı hakkında çok geniş ağiletişimli (online) bilgiye sahiptir. Bir komutun adını biliyor ve nasıl kullanıldığını öğrenmek istiyorsanız :
man [komut]
Bu, komutunun elyordam sayfasını oluşturacaktır. Hemen hemen tüm sistem komutları için elyordam sayfaları sistemde var durumdadır. man komutunun kendisinin seçenekleri hakkında daha çok bilgi almak isterseniz, yalnızca man man yazmanız yeterli. Bir UNIX buyruğunun seçeneklerini akılda tutmak asla gerekmez. Çünkü ağiletişimli elyordam sayfaları her zaman belleğimizi tazelemek için hızlı ve kolay bir yol sağlar. Öte yandan öğrenmek istediğiniz şeyin konusunu ya da bir açkı sözcüğünü biliyorsanız şunu deneyin:

apropos [subject]
Bu, konuyla ilişkili tüm komutların bir listesini verecektir. root@yonca:~$

apropos zip
atalkd (8) – AppleTalk RTMP, NBP, ZIP, and AEP manager
bzip2, bunzip2 (1) – a block-sorting file compressor, v1.0 bzcat – decompresses files to stdout bzip2recover – recovers data from damaged bzip2 files
explodepkg (8) – Extract the contents of a tar+GNUzip package (such as a Slackware software package) in the current directory.
funzip (1) – filter for extracting from a ZIP archive in a pipe
gzip, gunzip, zcat (1) – compress or expand files
jaztool, ziptool (1) – Tool for Iomega JAZ and ZIP drives
mzip (1) – change protection mode and eject disk on Zip/Jaz drive ‘” t TQ $1 ..
unzip (1) – list, test and extract compressed files in a ZIP archive
unzipsfx (1) – self-extracting stub for prepending to ZIP archives
zforce (1) – force a ‘.gz’ extension on all gzip files
zip, zipcloak, zipnote, zipsplit (1) – package and compress (archive) files
zipgrep (1) – search files in a ZIP archive for lines matching a pattern
zipinfo (1) – list detailed information about a ZIP archive

ls –help:
Bazı komutlar –help parametresiyle birlikte verildiğinde mümkün olan tüm seçeneklerin kısa bir tanımını verirler.
Bir komutun çıktısı bir ekrandan fazlasını dolduruyorsa kaygılanmak için bir neden yoktur, çıktıyı okumak için klavye üzerindeki PageUp ve PageDown tuşlarını kullanmak yeterlidir. Çoğu Linux sürümü çeşitli programlar ve yararları hakkında birçok kaynakbilgi (document) içerir. Bu kaynakbilgiler /usr/doc dizinindedir. Örneğin tetex ile ilgili bilgi için yalnızca bu dizine girip more tetex yazmanız yeterlidir. /usr/doc dizinindeki dosyaların çoğu ASCII dosyalarıdır. Daha da çoğu var. info sayfaları komutların tanımlarını ve uygulamalarını içerir. emacs editöründen [Control+h][Control+i] tuşlarıyla kolayca erişilebilen info sayfalarında da açıklamalar bulabiliriz.

$ ls -l
drwxr-xr-x 3 fenix fenix 1024 Jun 15 1997 Calendar
drwx—— 5 fenix fenix 1024 Nov 6 19:35 Desktop
drwx—— 2 fenix fenix 1024 May 16 1997 Mail
drwxrwxr-x 2 fenix fenix 1024 Mar 10 00:28 X11
lrwxrwxrwx 1 root root 11 Mar 13 20:53 ada -> private/ada
drwxrwxr-x 2 fenix fenix 1024 Mar 10 00:28 bin

cp: Dosya kopyalama
Bu komut dosyayı başka bir dizinde bulmak veya yeni başka bir ad vermek için dosya kopyalamaya izin verir.
root@aku:/home/web# cp index.html /home/
Eğer, yedek varolan bir dizin değilse, komut, dosyayı başka bir ad altında kopyasının yaratılmasının istendiği yorumunu yapacaktır. Buradaki yedek dizini home altındaki son klasörünün içine kopyalanacaktır.

mv: Dosya taşıma
mv “MoVe” demektir ve taşı anlamına gelir. Bu komut ile dosyaları yeniden adlandırabilir veya diğer bir dizine taşıyabilirsiniz.
root@aku:/home/web# mv index.html /home/
Eğer yedek varolan bir dizin olmasaydı, dosyayı yeniden adlandırmak istediğiniz yorumu yapılacaktı. Yedek dizini home altına taşınacaktır.

cd: dizinin içine girmek
Argümansız cd buyruçu ilk dizine geçişi sağlar. Eğer yetkin kullanıcı (superuser) iseniz bu komut size /root/ dizinini verecektir; eğer hasan iseniz /home/hasan’a gideceksiniz. Burada görebildiğiniz şey dizinlerin sağ tarafa eğimli çubuklara sahip olduğu gerçeğidir Son olarak, /home ~ karakteri ile yer değiştirebilir. Bu nedenle, cd ~yedek bizi /home/yedek ‘ğe ***ürür. root@sezer:/home/webadmin# cd linuxweb
root@sezer:/home/webadmin/linuxweb#

mkdir: dizin oluşturmak
root@sezer:/home/webadmin# mkdir linuxweb
root@sezer:/home/webadmin/linuxweb#
mkdir [dizinadı] biçiminde çok basit bir yapıdır ve bu ad altında bir dizin yaratır.

rmdir: boş bir dizini silmek
root@sezer:/home/webadmin# rmdir linuxweb

İçinde dosyalar bulunmayan bir dizini yok etmek istiyorsanız, rmdir [dosyaadı] komutuyla yapılır. Eğer dosyalara sahip dizinleri yok etmek istiyorsanız (ya da diğer dizinler) rm komutuna bakın.

rm: dosyayı silmek
rm [dosyaadı] ile her tür dosya silinir.
Diğer ek komutları: -i Dosyayı silmeden önce doğrulama gerektirir.
-r Bir dizini ve onun tüm içeriğini siler.
-rf Bir dizini ve onun içeriğini herhangi bir doğrulama gerektirmeksizin siler.

ln: diğer dosyalara link vermek
Linux dosyaların ayrı adlara sahip olduğunu veya onlara ayrı dizinlerden erişebileceğimizi varsayar. Bu, bağlantılar ile yapılır. İki türü vardır: ” katı: bağlantıda dosya içeriğinin tamamını kopyalar, kaynak dosya veya tersine bağlantı değiştiğinde karşılığı da değişir. ” simgesel: Kopyalamaz, kaynak dosyaymış gibi çalışır. Bu yolda dosya içeriğinin kopyası yoktur, böylece tekerde boş yer kalır. Bugünlerde neredeyse yalnızca bu tür bağlantılar kurulmaktadır. Bu yolla dizinler sadece simgesel bağlantılara izin verir. Katı bağlantılar ln ile yapılır. Ve simgesel bağlantılar ln -s [kaynakdosyalar] [erekdosya] ile yapılır.

cat:dosyanın içini gösterir
cat [dosyaadı]

more: sayfalamalı dosya içeriği gösterimi, eğer göreceğimiz dosya çok uzunsa (ekranda görmek istediğimiz birçok satırı varsa), en üstteki ilk satırları yitireceğiz. Çözüm ise ekran buffer kullanmaktır. Bu buffer altında, Mays+Repag ile yer değişimi sağlanabilir. Fakat bu buffer sınırlı büyüklüktedir ve çoğu kez yardımcı olmaz. more buyruğu dosyaları sayfalayarak görmemizi sağlar.
more [dosya-adı]
Bu etkileşimli bir programdır. Daha ilginç olan “keys” (etkileşimli komutlar) aşağıdadır: Açkı Fonksiyon (Key Function)
spacebar Bir sayfa ileri
b bir sayfa geriye al
return bir satır ilerle</td>
/[string] katar’ın dosya içindeki bir sonraki yerini bul
?[string] katar’ın dosya içindeki son görüldüğü yeri bul
q bırak çık

chmod:dosya izin haklarının değiştirilmesi
Düzenli kullanıcılar (root her şeyi yapabilir) yalnızca sahip oldukları dosyaların erişim izinlerini değiştirebilirler. Bu, boşlukla ayrılmış 2 parametre türünün birleşimidir.
chmod [kim][+/-] [yenihaklar] [dosya]
kim’de aşağıdakilere gönderim yapabiliriz: Kim Betimlemesi u dosyaya sahip olan kullanıcı
g dosyaya sahip olan grup
o geriye kalan kullanıcılar
a herhangi bir kullanıcı (sahip, grup, diğerleri)
+ ile izin hakları ekler – ile izin haklarını çıkartırız.
Yeni izinlerde hangi izinlerin eklendiğini veya kaldırıldığını gösteriyoruz. Bunlar ls yardımı ile uzun listenin ilk alanındaki harfler ile betimlenirler (Bunun anlamı, r: (ku, w:yaz, x:çalıştır veya konuk ol, setUID şeklindedir).

chmod u+rw my
Bununla sahip (bu genellikle sizsiniz), my dosyası üzerinde okuma ve yazma iznine sahip olur.

chmod a-x directory
Ve bununla tüm kullanıcıların (siz ve sahip dahil) directory dizinine konuk olma izinlerini kaldırıyoruz.
chmod diğer ve daha gelişmiş niteliklere sahiptir, bunları burada görmeyeceğiz, fakat man chmod komutunu kullanarak elyordam sayfaları kullanabilirsiniz:.

man chmod
* : Herhangi bir katara (0 veya daha çok sayıda) gönderme yapar

rm *:Bütün dosyaları sil.

rm a* :a ile başlayan tüm dosyaları sil.

rm bet*as :bet ile başlayıp as ile biten tüm dosyaları sil.

? :herhangi karakter (yalnızca bir)

cat c?t : c ile başlayan ve sonu t ile biten tüm dosyaların içeriklerini görüntüler.

[group]: köşeli parantezler arasındaki karakter grubu

more [tp]erez:Eğer varsa, sayfa düzeninde terez ve perez dosyalarını gösterir.
cp c[AEIOU]endo directory c ile başlayan, [ ve ] arasında verilen büyük harflerle süren ve endo ile sona eren dosyaları directory adlı dizine kopyalar. Aralıkları yaratmak için “-” kullanabiliriz:

mv *[a-z] trash :Büyük harf ile bitmeyen tüm dosyaları trash adlı dizine taşır. Aralıkların dışı da taban alınabilir:

ls [!a-zA-Z]* :İlk karakteri büyük veya küçük harf olmayan dosyaları listeler.

nl :Bir dosyayı satırlarını numaralamak ve mantıksal sayfalar halinde göstermek için kullanılır.
nl komutu nl [seçenekler][dosya] şeklinde kullanılır. $nl x _file
1 aku
2 bim

wc: Dosyada bulunan satır,kelime veya karakter sayısını gösterir.Sokakta başka anlama gelir
$wc index.html
59 95 1188 index.html

pwd: Kullanıcı dizinler üzerinde hareket ederken zaman zaman hangi dizin üzerinde çalıştığını öğrenmek için bu komut kullanılır.
$pwd
/usr/ser

chown:Bir dosyanın veya dizinin paremetresinde tanımlı bulanan dosya veya dizinin sahibi parametrelerini değiştirir. Dosya veya dizin sahibi parametresi /etc/passwd dosyasında, kullanıcı kimliği(user ID) veya bağlantıı ismi (login name) olarak kayıtlı bulunmak zorundadır.Dosya ve dizin parametreside /etc/group dosyasında, group kimliği (group ID)veya gurup ismi (group name ) olarak kayıtlı olmak zorundadır.
chown [-f][-h][-R] sahibi[:grubu]{dosya I dizin}

ps:Aktif işlemler hakkında çeşitli bilgileri görüntüler root@yonca:~/mail$ ps
PID TTY TIME CMD
15085 ttyp1 00:00:00 bash
15232 ttyp1 00:00:00 ps
You have new mail in /var/mail/root

kill:Çalışan süreci durdurmak için singal gönderir.Bir root kullanıcı herhangi bir süreci kil komuduyla öldürebilir.Eğer root kullanıcısı değilseniz sadece kendinize ait işlemleri öldürebilirsiniz.
kill [-s{sinyal ismi Isinyalnumarası}]süreç tanıtım numarası (PID)

lprm : (line printer remove)Printer’da döküm için bekleyen işlemleri sıran çıkarır.
lprm[-P Printer][görev sırası][Kullanıcı adı..][-]

echo:İfadeleri görüntülmek için bu komut kullanılır,kabuk programlarında kullanılır.
Önce a değişkenini “hasan”‘a aktaralım sonra da echo komutula hasanı görüntüleyebiliriz.
$ a=hasan
$echo $a
hasan
$_

date sistemin tarihini ve zamanını gösterir.date komutu “date+%X”şeklinde kullanılır.
$date
Mon Jan 11 13:29:48 Mest 2002

tail : Dosyanın son bölümünü görüntüler.
$tail yedek
yedek dosyasının son 10 satırını görüntüler.

uname:İşletim sistemi hakkında bilgi verir.Kernelinizin sürümünü görmek için “uname -r” .
-m Makinanın donanımının adını verir.
-n Nodename i yazar. Nodename sistemin network iletişimi için kullanılır..
-r Print the operating system release
-s Sistem ismini yazar
-v İşletim sisteminin versiyonuu yazar
-a yukarıdaki bilgilerin tamamını yazar

ping : (packet internet groper)Bir network bilgisayara ICMP(Internet Control Message Protocol)echo paketi gönderir ve geri dönen paketleri bildirir.

Hostname: Paketlerin gönderildiği bilgisayarın ismini belirtir.

mount : Üzerinde bir dosya sistemi olan bir disk birimine veya parçasına okuma veya yazma amacıyla ulaşabilmek için bu birim veya parçayı / dosya yapısında bir alt dizine mount edilmiş olması gerekir./dizini bilgisayarın açılması sırasında otomatik olarak mount edilmektedir. Eğer bu kök dizini bilgisayarın açılması aşamasında mount edilmezse , o bilgisayar zaten açılmaz.Diğer disk ve disk parçalrı otomatik olarak mount edilmesi için gerekli işlemler ise sistem yöneticisi root tarafından yapılır. Otomatik olarak mount edilmesi istenen diskler ve mount edilecekleri dizinler /etc/filesystems dosyasında tanımlanır.
aku@yonca:~$ mount

/dev/sda1 on / type ext2 (rw)

/dev/sda3 on /home type xfs (rw)

none on /proc type proc (rw)

mailx : Mesajların elektronik olarak alınması ve gönderilmesi için ortam sağlayan bir yazılımdır. “mailx”komutu mesaj okunurken saklama silme ve mesajla yanıtlama olanağı sağlar.
mailx [seçenekler] [isim]
utebay@yonca:~$ mailx
Mail version 8.1 6/6/93. Type ? for help.
“/var/mail/utebay”: 26 messages 25 unread
1 MAILER-DAEMON@yonca. Sat Jun 29 09:37 13/546 “DON’T DELETE THIS MES”
2 mailto:ukarabudak@cizgi.com ukarabudak@cizgi.com Fri Jun 28 17:44 67/2841 “[Linux] Re: ntfs moun”

grep : Karekterlerden oluşan belirli kalpıları bir veya daha fazla dosya içinde aramınızı sağlayan komuttur.
grep[seçenekler]ifade [dosya…] $ cat deneme.c
include “stdio.h”
main ()
{
printf (”merhaba”;
return(0)

du Komutu (Diskin Durumu)Sistem yöneticisi zaman zaman disklerin nasıl kullanıldığını öğrenmek için bu komut kullanılır.Aşırı büyüyen dosyalar ve dizinleri belirlemesi,sağlar.
utebay@yonca: ~$ du
8 ./BasiliX
12 ./mail
0 ./.ssh

cut :Bir dosya içerisindeki satırların içerdiğialanların keserek belirli bir yere kopyalamak için kullanılır.
cut [seçenekler][dosya]

chgrp :Bir dosyanın yada klasörün grup sahipliğini değiştirmeye yarar.
chgrp[-f][-h][-R]Grup{Dosya….|Klasör….}

who komutu : Sistemde o anda kimlerin çalıştığını saptayan komuttur.
who [seçenekler][isimler]

umount : Mount edilmiş bir kütük sistemini, bilgiisayarın /kütük sisteminden ayırmak için kullanılır.Bu işlem genellikle CD ler için kullanılır.
{umount|unmount}[-f][-a]|[all|allr|Device |Directory|File|FileSystem|-n Nome|-t Type]

Paste : Aynı bir dosyanın veya başka dosyaların bellirli kısımlarını bir araya getirmek için kullanılır. Paste komutuyla ister yatay, isterse düşey olarak birleştirme işlemi yapılabilir.
paste[seçenekler][dosya..]

head : Dosyalrın ilk kısmını listeler.Verilen dosyanın belirtilen kadar satırını, belirtilmemişse ilk 10 satırını listeler. Eğer dosya verilmemişse veya’-‘dosya adıyla karsılaşılasırsa standart girdiler okunur.Eğer birden fazla dosya verilmişse her dosya listelemesinde önce ==> ve <== içine koyulmuş dosyaların adlarından oluşan başlıklar listeler.

FTP : İki Bilgisayar arasında dosya transferini sağlar.Uzaktaki bilgisayara dosyalar koyabilirsiniz, yada uzaktaki bilgisayardan yerel bilgisayarlardan yerel bilgisayarlara dosyalar indirebilirsiniz.

diff : Dosyalar arasındaki farklılıkları ortaya koyarak,gerekiyorsa değişiklik kullanılır.
diff [seçenekler] dosya-1 dosya-2

alias Bir komuta icin kisayollar yaratmak icin
at Belirlenen bir zamanda programi calistirmak icin
atq Liste halinde at icin bekleyen programlari verir
atrm at listesinden bir programi silmek icin
cat Programin icerigini standart cikti cihazinda gosterir
chfn Finger ile saglanan bilgileri degistirmek icin
chsh Kullandiginiz kabuk programini degistirmek icin
cp Dosyalari kopyalamak icin
dd Disk iceriklerini kopyalamak icin
df Kullanilabilir disk alani
dir Klasorun icerigini goruntulemek icin
dmesg Acilis mesajini goruntulemek icin
dump Sistemleri yedeklemek icin
e2fsck Dosya sistemlerini hataya karsi kontrol etmek icin
export Kabuk icinde cevre degiskeni yaratmak icin
find Dosyalari bulmak icin
fdformat Dusuk seviye disk formatlama
fdisk Yeni disk bolumleri yaratmak veya silmek icin
finger : Sunucudan kullanici bilgisini almak icin
free : Hafiza (RAM) Takas Alani(Swap) bilgisi icin
grep : Verilen karekter grubuna uyan satirlari bulmak icin
groupadd veya addgroup* : Yeni bir kullanici grubu yaratmak icin
groupdel veya delgroup* : Kullanici grubu silmek icin
groups : Sistemdeki kullanici gruplarini listelemek icin
gzip : Dosyalara sikistirma yapmak veya acmak icin
halt : Sistemi kapatmak icin
host : Sunucu bilgisine bakmak icin
ifconfig : Ağ(Network) arayuzlerini tanimlamak icin
init : Calisma Seviyesini (Run Level) tayin icin ; konsol seviyuesi “init 3″ , xwindow masaüstü grafik seviyesi ” init 5 ” , shotdown kapatma seviyesi ” init 6 ”
insmod : Modulleri yukleyebilmek icin
kill : Calisan surecleri durdurmak icin (process)
less : Dosyalari goruntulerken filtre koymak icin
ln : Dosya veya klasorler arasinda link yaratmak icin
locate : Verilen karektere uyan dosyalari belirlemek icin
login : Sisteme baglanmak veya kullanici degistirmek icin
logout : (ctrl+d) Sistemden ayrilmak icin
lpc : Yazici kuyrugunu duzenlemek icin
lpq : Yazici kuyrugunu goruntulemek icin
lpr : Dosylari yazdirmak icin
ls : Klasor icerigini listelemek icin
lsmod : Yuklu modulleri gormek icin
make : Dosyalari derlemek veya bakim yapmak icin
makewhatis : “whatis” veritabani yaratmak icin
man : Manual sayfalarini goruntulemek icin
mcd : DOS disketindeki bir klasore gecmek icin
mcopy : DOS disketine dosya kopyalamak icin
mdel : DOS disketinden dosya silmek icin
mdeltree : DOS disketinden klasor silmek icin
mdir : DOS disketindeki bir klasorun icerigini goruntule
mformat : DOS disketini formatlar (bicimlendirir)
mkbootdisk : Acilis diketi yaratmak icin (boot disk)
mkdir : Yeni bir klasor yaratmak icin
mkswap : Takas alani yaratmak icin (Swap Space)
modprobe : Modulleri (sistem suruculeri) yuklemek icin
more : Klasor ve dosyalari goruntulerken filtre koymak icin
mount : Dosya sistemleri ve Cihazlari sisteme tanitmak icin
mv : Dosyalari tasimak veya isimlerini degistirmek icin
netcfg : (her dagitimda bulunmaz) Ag Yapilandirma Araci
netstat : Ağ baglantilarinin durumunu gosterir
nslookup : Isim Sunucusunu (Name Server) kullanmak icin
passwd : Kullanici sifresini degisitirmek icin
ping : Ağ uzerinde bir sunucunun varligini kontrol icin
printtool : Yazici kurmak icin
ps : Sureclerin ozelliklerini gostermek icin
pstree : Surec yer aldigi mantiksal agaci gostermek icin
pwd : O an icinde bulunulan klasoru gostermek icin
reboot : Sistemi tekrar baslatmak icin (shutdown -r now)
restore : Dump yedek dosyalarini ilk haline getirmek icin
rm : Dosyalari silmek icin
rmdir : Klasorleri silmek icin
rmmod : Yuklu modulleri kaldirmak icin
rpm : RPM paketlerini yonetmek icin örn: rpm -i deneme.rpm
set : Kabuk cevre degiskenlerini degistirmek icin
shutdown : Sistemi kapatmak icin ?
startx : X Windows alt sistemini baslatmak icin
su : Bir baska kullaniciya gecmek icin(switch user)
sync : Tampon veriyi hard diske yazmak icin
sysinfo : Sistem ile ilgili bilgi almak icin
tar : Sikistirilmis arsivler yaratmak icin veya açmak için örn :tar xvf deneme.tgz
top : Calisan surecleri goruntulemek icin
touch : Boş bir dosya yaratmak veya olan dosyanin zaman bilgilerini degistirmek icin(yaratilma,erisilme gibi)
traceroute : IP paketlerinin izledigi yolu goruntulemek icin
umount : Sistemde yuklu bulunan dosya yapilarini sistemden ayirmak icin
uname : Sistem hakkinda bilgi almak icin örn : uname -r
unzip : Sikistirilmis dosyalari eski haline getirmek icin örn unzip deneme.zip
updatedb : “locate” veritabanini yaratmak,guncellemek icin
uptime : Sistemin ne kadar uzun zamandir acik kaldigi,
useradd veya adduser* : Yeni kullanici hesaplari eklemek icin
userdel veya deluser* : Kullanici hesaplarini silmek icin
usermod : Kullanici hesaplarini duzenlemek icin
whatis : Komut hakkinda basit icerik saglamak icin
whereis : Komut icin uygulama,kaynak ve manual dosyalarini belirlemek icin,
which : Program icin uygulama dosyasinin dosya sistemindeki yerini belirlemek icin,
who : Kimin o anda sisteme bagli oldugunu gormek icin
whoami : Sisteme bagli bulunan kullanicinin kim oldugunu goruntulemek icin
xlock : X Windows alt sistemini kilitlemek icin
* Kullandiginiz dagitima gore degisiklik gosterebilir.

KDE Klavye Komutlari :

ctl+tab : Masaustleri arasinda gecis icin
alt+tab : Uygulamalar arasinda gecis icin
alt+f1 : Uygulama menusunu acmak icin
alt+f2 : Komut penceresini acmak icin
alt+f3 : Pencere menusunu acmak icin
alt+f4 : Pencereyi kapatmak icin
f1 : Yardim gorutulemek icin
f2 : Pencerede bir kelimeyi aramak icin
f3 : Pencere aramasinda bir sonraki eslesmeye gitmek icin
space : Dosyalari secmek/secmemek icin
ctl+n : Dosya yoneticisi penceresini acmak icin
ctl+a : Icinde bulunulan klasorde butun dosya ve klasorleri secmek icin
ctl+t : Icinde bulunulan klasorde terminal penceresi acmak icin
ctl+w : Pencereyi kapatmak icin
ctl+f : Dosya bulmak icin
ctl+c : Kopyalama islemi icin
ctl+v : Yapistirma islemi icin

GNOME Dosya Yoneticisi (Nautilus) Klavye Komutlari:

ctl+b : Favorilere ekle
ctl+d : Kopyala
ctl+f : Bul
shift+ctl+f : Web Aramasi
ctl+i : Ozlellikleri Goster
ctl+h : Ana Sayfa
ctl+u : Bir seviye yukari
ctl+n : Yeni Klasor
ctl+o : Aç
ctl+w : Pencereyi Kapat
shift+ctl+w : Butun pencereleri kapat
ctl+= : Yakinlas
ctl+- : Uzaklas
ctl+[ : Geri
ctl+] : Ileri
ctl+t : Cop kutusuna koy
ctl+r : Yenile/Guncelle
ctl+a : Hepsini Sec

Komut ya da kavram adı Açıklaması
. Halihazırdaki dizini gösterir.
.. Önceki dizini gösterir.
~ Aktif kullanıcının ev dizini
cd .. Önceki (üst) dizine geç.
ls .. Önceki (üst) dizinin içeriğini göster.
CTRL-C Çalışan bir programı keser (komut satırına düşürür).
TAB Komut/dosya ismi tamamlama
apropos &ltkelime> İçinde “kelime” geçen tüm kılavuz sayfalarını tarar.
cp &ltdosya1> &ltdosya2> dosya1′i dosya2′ye kopyala.
PATH Çalıştırılabilir dosyaların yerini gösteren değişken
echo $PATH Bir dosya çalıştırılmadan önce nereye bakılacağını gösterir.
SHELL Altında çalışılan kabuk.
echo $SHELL Çalışan kabuğu gösterir.

Linux plesk panel roundcube problemi

Plesk migration problemi nedeniyle manuel olarak sorunsuz taşıdığımız sunucu işlemi sonrasında oluşan roundcube problemini aşağıdaki işlemler sonucunda çözdük. Bu gibi bir problemle karşılaşanlar için  paylaşıyorum. Devamı..

ssh zip tar tar.gz işlemleri

Ssh ile bir klasörü zip ile sıkıştırmak 

zip -r klasor.zip klasor

Ssh ile zipli dosya açmak

unzip dosya.zip

Ssh ile tar.gz ile sıkıştırmak

tar -zcf arşiv-name.tar.gz klasöradı/

Ssh ile tar.gz uzantılı dosya açmak

tar -zxvf dosya.tar.gz

Ssh ile .rar dosyası açmak

rar x archive.rar

Linux scp ile dosya aktarımı

linux ssh üzerinden scp ile dosya veya klasör aktarımı oldukça basit ve işe yarayan bir işlemdir.

Bulunduğum sunucudan başka sucuya ssh ile dosya gönderme

scp dosya.txt root@uzaksunucu_ip_adresi:/dizin

başka bir linux sunucudan bulunduğum sunucuya ssh ile dosya aktarımı
Aşağıda kullanılan / dizini dosyanın ana dizine kopyalanacağı anlamına gelir.

scp root@uzaksunucu:dosya.txt /

scp ile klasör kopyalama
Eğer bir klasör kopyalıyorsak -r kullanırız.

scp -r /klasor root@uzak_sunucu_ip_adresi:/uzak_sunucu_klasörü

ssh scp ile dosya aktarımında karşı sunucu portu farklıysa
Farklı port kullanmak için -P kullanırız. port numarasının 2100 olduğunu varsayalım

scp -P 2100dosya.txt root@uzak_sunucu_ip_adresi:/klasor

 

Ssh mysql işlemleri

Size bu yazımda Ssh üzerinden mysql ile yapılabilen işlemleri anlatacağım.

Ssh ile mysql sunucusuna bağlanmak
Aşağıdaki komutu girdiğinizde sizden mysql root şifrenizi isteyecektir. Bağlanabilmeniz için mysql şifrenizi girmeniz gerekir.

mysql -u root -p

Ssh ile Mysql kullanıcısı oluşturma

CREATE USER ‘kullanici_adi‘@’%’ IDENTIFIED BY ‘sifre‘;
FLUSH PRIVILEGES;

Ssh ile mysql veritabanı oluşturma

CREATE DATABASE db-isminiz-buraya;
FLUSH PRIVILEGES;

Ssh ile mysql veri tabanına kullanıcı yetkisi verme
bu örnekte % kullanıldığı için kullanıcıya ait şifreyi bilen tüm kullanıcılar veri tabanına erişim yapabilir. Kısıtlamak için % yerine bir ip adresi yazabirsiniz.

GRANT ALL ON veritabani.* TO ‘veritabanı_kullanıcı‘@’%’;
FLUSH PRIVILEGES;

ssh ile Veri tabanı kullanıcısına veri tabanı için farklı yetkiler verme

GRANT  SELECT,INSERT,UPDATE,DELETE ON database_name.* TO ‘kullanici_adi’@’localhost′;
FLUSH PRIVILEGES;

Ssh ile veri tabanı kullanıcısına ait tüm yetkileri kaldırmak için

REVOKE ALL ON *.* TO ”kullanici_adi’@’%’;
FLUSH PRIVILEGES;

ssh ile veri tabanına ait sadece belirli bir yetkiyi kaldırmak

REVOKE INSERT ON *.* TO ”kullanici_adi’@’%’;
FLUSH PRIVILEGES;

ssh ile veri tabanı kullanıcısı silmek

DROP USER kullanici_adi;
FLUSH PRIVILEGES;

Önemli Not : ssh ile mysql kullanıcı yetkisi verirken % işaretini kullanmanız bu kullanıcıya şifresini bilen tüm ip adreslerinden bağlantı sağlanabileceği anlamına gelir. % yerine ip adresi kullandığınızda sadece belirlediğiniz ip adresinden bağlanılabilir.

Mesela örnek olarak bir kullanıcı oluşturalım , kullanıcıya tüm ip adresleri bağlanabilsin ve sunucudaki tüm veri tabanlarına ulaşabilsin.

CREATE USER ‘kullanici_adi‘@’%’ IDENTIFIED BY ‘sifre‘;
GRANT ALL ON *.* TO ‘olusturdugunuz_kullanıcı‘@’%’;

işleminiz bittiğinde FLUSH PRIVILEGES; kullanarak yaptığınız değişikliği veya işlemi aktif hale getirebilirsiniz.