$ruptime violet up 11+04:10, 8 users,load 1,20 1,10 1,00



Benzer belgeler
BİLGİ & İLETİŞİM TEKNOLOJİLERİ

FTP ve Güvenlik Duvarları

Güvenli Kabuk: SSH. Burak DAYIOĞLU, Korhan GÜRLER

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

Yrd. Doç. Dr. A. Burak İNNER

BEUN VPN Hizmeti. VPN Nedir?

HUAWEI Cihazlara Erişim Yöntemleri

Kurumsal Güvenlik ve Web Filtreleme

Kurumsal Güvenlik ve Web Filtreleme

Windows 2000 veya XP kurarken dosya sistemini seçmeniz gerekir. Ya FAT32 dosya sistemini kullanırsınız ya da NTFS.

Temel Linux Eğitimi 1., 2. ve 3. Bölümler

Linux ta komutlar hakkında yardım almak için aşağıdaki komutlar kullanılır : - man - info - whatis - apropos

Ağ Nedir? Birden fazla bilgisayarın iletişimini sağlayan printer vb. kaynakları, daha iyi ve ortaklaşa kullanımı sağlayan yapılara denir.

BIND ile DNS Sunucu Kurulumu

Genel Bilgiler. Sistemimiz Güvenli Kabuk (Secure Shell/SSH) Protokülünü kullanan bağlan:ları kabul etmektedir.

SSH ile Sistem Yönetimi

TL-WPS510U PRINT SERVER KURULUM DÖKÜMANI

Scream! e gelen veri akışlarından bazılarını diğer bir kurum yada bilgisayarla paylaşmak için kullanılabilir.

Web Servis-Web Sitesi Bağlantısı

Linux Dosya ve Dizin Yapısı

ProFTPD FTP Sunucusu. Devrim GÜNDÜZ. TR.NET Sistem Destek Uzmanı.

Ağ Üzerinde MATLAB kurulum rehberi (Sunucu makine)

Linux işletim sistemlerinde dosya hiyerarşisinde en üstte bulunan dizindir. Diğer bütün dizinler kök dizinin altında bulunur.

AKINSOFT. Eofis NetworkAdmin. AKINSOFT EOfis NetworkAdmin Kurulumu Bilgi Notu. Doküman Versiyon : Tarih : Copyright 2008 AKINSOFT

BİLGİ İŞLEM DERS 3. Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ MSGSU FİZİK BÖLÜMÜ

Veri Tabanı Yönetim Sistemleri Bölüm - 02

CHAPTER 6 FTP SERVER

FOUR FAİTH ROUTER LARDA IPSEC GÜVENLİ HABERLEŞME KILAVUZU

08224 Sunucu İşletim Sistemleri

BitTorrent İstemci Kullanımı

PBS Betiği Hazırlama ve PBS Komutları. Feyza Eryol

DRAYTEK VIGOR 3300V. Login(Oturum Açma)

7/24 destek hattı Kolay kurulum CD si Üç yıl garanti Üç yıl garanti YM.WR.5341.UM.TR.D01REV

Coslat Monitor (Raporcu)

Useroam Kurulum Rehberi

BIL411 - BİLGİSAYAR AĞLARI LABORATUVARI

man komut man ls (ls komutu hakkında bilgi verir.) man pwd (pwd komutu hakkında bilgi verir.)

WiFi RS232 Converter Sayfa 1 / 12. WiFi RS232 Converter. Teknik Döküman

Komut Penceresi ile Çalışmaya Başlamak

Seri kablo bağlantısında Windows95/98/ME'ten Windows 2000'e bağlantı Windows95/98/ME - NT4 bağlantısına çok benzer.

3CX Phonesystem Türkçe Anonsları Windows ve Linux İşletim Sistemlerinde Aktif Etme

Sistem Programlama. (*)Dersimizin amaçları Kullanılan programlama dili: C. Giriş/Cıkış( I/O) Sürücülerinin programlaması

Wolvox Kapı Ekranı. AKINSOFT Wolvox Kapı Ekranı Yardım Dosyası. Doküman Versiyon :

Kabuk Programlama (Bash)

Kategori:Allplan->Teknik Destek ve Kurulum->SSS_Allplan_2016_Server_Lisans_Kurulumu

JasperReports Server ve Ireport raporlama Sistemi Kurulumu / Kullanımı 1. Bölüm 2. Bölüm 1- JasperReports Server ve Ireport Nedir?

Doğru Adaptor soket kutuplaması.

2. SCADA PROGRAMI. TEOS' un size sunduğu bir çok hizmet içerisinde en önemlilerini şöyle sıralayabiliriz:

Lisanslama Sistemi ve Set Yükleme İşlemleri

Erişim Noktası Ayarları

BİLGİ İŞLEM DERS 1. Yrd Doç Dr. Ferhat ÖZOK MSGSU FİZİK BÖLÜMÜ MSGSU FİZİK BÖLÜMÜ

BTP 207 İNTERNET PROGRAMCILIĞI I. Ders 1

Linux altında komut satırında...

BLGM 354 DENEY 1 * GİRİŞ

PBS Betiği Hazırlama ve PBS Komutları

Sunucu İşletim Sistemini Ayarlamak ve Yönetmek

ADSL USB Router Geniş Bantlı Internet Erişimi ADSL Modem NAT Router USB Ağ Portu Hızlı Kurulum Rehberi

Free Cooling (Tibbo Ethernet Modüllü)

V-Ray Lisanslama Sistemi

Turquaz Windows kurulum dökümanı. ftp://ftp.mirror.ac.uk/sites/ftp.postgresql.org/binary/v7.3.1/windows/pgsql731wina1.exe

moduli ssh_host_dsa_key.pub ssh_host_rsa_key ssh_config ssh_host_key ssh_host_rsa_key.pub ssh_host_dsa_key ssh_host_key.

Network üzerinde MATLAB kurulması

CİSCO ANY CONNECT UYGULAMASI İLE İÇ KAYNAKLARA ERİŞİMİ KLAVUZU

TCP/IP. TCP (Transmission Control Protocol) Paketlerin iletimi. IP (Internet Protocol) Paketlerin yönlendirmesi TCP / IP

T. C. İSTANBUL TEKNİK ÜNİVERSİTESİ Bilişim Enstitüsü ENFORMASYON SİSTEMLERİNİN TASARIMI VE YÖNETİMİ

UNIVERSAL REPEATER (TEKRARLAYICI/GENİŞLETİCİ MODU)

YAYGIN OLARAK KULLANILAN ADSL MODEMLER VE ROUTER AYARLARI

Sunucu İşletim Sistemini Ayarlamak ve Yönetmek. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

Bu bölüm V- Ray License Server lisans sunucusu uygulamasının kurulumundan

MIRACLE DATA WORKS KURULUM DOKÜMANI

LOGO TIGER WINGS KURULUMU VE AYARLARI

Temel Li nux Eği t i mi Böl üm

PocketRest Kullanımı

EC-485. Ethernet RS485 Çevirici. İstanbul Yazılım ve Elektronik Teknolojileri

Bu dosyalar NT4 Server kurulum C'sinde \CLIENTS\MSCLIENT dizini altında bulunabilir.

Bilindik engelleme yöntemlerinin dışında olan, kurumsal web filitreleri nasıl aşılır?

WiFi Relay Sayfa 1 / 11. WiFi Relay. Teknik Döküman

Mpuantor 2.7 Client Kurulumu

Açık Kod VPN Çözümleri: OpenVPN. Huzeyfe ÖNAL

AirTies Kablosuz Erişim Noktası (Access Point) olarak kullanacağınız cihazı bilgisayarınıza bağlayarak ayarlarını yapabilirsiniz.

SAMURAİ FRAMEWORK İLE HACKİNG-1 (FOOTPRINTING)

1 STUNNEL NEDİR? 2 STUNNEL KURULUMU

BioAffix Ones Technology nin tescilli markasıdır.

WEB SUNUCU GÜVENLİĞİ: Web Siteleri Neden Hacklenir?

Kaynak Kodlardan Derleme. Turquaz Muhasebe. Versiyon 0.2. Hüseyin Ergün. 26 Mart 2005

Kurulum; Ana Bilgisayar ve Tahtalara ayrı ayrı yapılmaktadır. KURULUM ŞEMASI x.x x.x x.x x.

AĞ KULLANIM KILAVUZU. Yazdırma Günlüğünü Ağa Kaydetme. Sürüm 0 TUR

Önce domain sunucuyu görebiliyor muyuz, kontrol edelim

Packet tracer arayüzü yukarıdaki şekilden de görüldüğü gibi üç ana araç çubuğundan oluşmaktadır.

Ubuntu Terminal Server Ve Uzak Masaüstü Sunucusu

INTERNET BAĞLANTISININ KURULMASI İÇİN GEREKLİ YÖNLENDİRİCİ AYARLARI

SERNET ET232CAS x2 RS232 Seri Kanal Sunucu KULLANICI KILAVUZU. Telif Hakkı Uyarısı. >>> Otomasyon Ürünleri

Sanal Makine Kurulumu (VirtualBox)

BLGM 343 DENEY 8 * TCP İLE VERİ İLETİŞİMİ

MCR02-AE Ethernet Temassız Kart Okuyucu

Linux Ubuntu Kurulumu

Microsoft Outlook 2003 Kurulumu

KULLANICI KILAVUZU: UEA FİX KULLANICILARININ SSLVPN ERİŞİMİ İMKB İÇİNDEKİLER

SERNET ET485CAS x2 RS485/RS422 Seri Kanal Sunucu KULLANICI KILAVUZU. Telif Hakkı Uyarısı. >>> Otomasyon Ürünleri

Transkript:

2 Uzaktan Erişim Uzaktan erişim komutları intranetler gibi daha küçük sistemler için tasarlanmıştır. Sizi başka bir sistemdeki diğer bir hesaba uzaktan erişmeye ve kullanmaya izin verirler. Uzaktan erişim komutlarının çoğu Internet için kullanılan serim (ağ) iletişim olanaklarıyla mukayese edilebilir. Örneğin: rlogin bir sisteme uzaktan giriş yapar. Bu komut telnet komutuna benzerdir. rcp komutu uzaktan dosyaları kopyalar ve bu komut FTP ye benzer fonksiyonlara sahiptir. rwho komutu who komutu ile benzer işlemi görür serimizdeki her sisteme o anda bağlanmış tüm kullanıcıları görüntüler. ruptime seriminizdeki her sistem hakkında bilgiyi gösterir. Bu bilgi her sistemin nasıl çalıştığını gösterir. Bu komutla sistemin açık olup olmadığını, ne kadar süredir açık/ kapalı olduğunu, sistemdeki kullanıcıların sayısı ve son 5-10 ve 15 dakikadır sistemdeki ortalama yükü görüntüler. Örneğin : $ruptime violet up 11+04:10, 8 users,load 1,20 1,10 1,00 2.1 Telnet Bu programın ismi, Telecommunications Network ün kısaltılmasından gelir. Uzaktan sisteme giriş (login) ve virtual terminal kullanma imkanlarını sağlar. Remote sistem ile bağlantı kurarak onu direk kullanma olanağı sağlar. Server da telnet in dahil olduğu işlem, telnet oturumlarından gelen talepleri kabul etmektir. Unix sisteminde bu işlem telnetd deamon unda olur. 2.1.1 Telnet Bağlantıları Telnet protokolü, network virtual terminal (NVT) mantığını kullanır. Bağlantının her ucu mantıksal bir klavye ve yazıcıya sahiptir. Mantıksal yazıcı terminal ekranıdır ve karakterleri gösterirken, mantıksal klavye kullanıcı klavyesidir ve karakterleri oluşturur. Telnet protokolü iki ucu NVT gibi görür. Burada giriş yapılan makine client görevindedir ve telnet çekilen makine server görevindedir. telnetd daemonu arka planda calışarak bunların arasında çevirmen görevi yapar. Telnet bağlantısı; $telnet makinenin_ip_adresi veya makinenin_adı(dns e bağlı) ile sağlanır. Ayrıca port numaraları bilinen bazı servislerle bağlantı kurulabilir. Eğer alıcı ve gönderen makinede graphical user interface(gui), Motif veya X varsa karakter tabanlı arayüz yerine her iki ucun da lokal terminali windowing için kullanmasını isteyebiliriz. Yani bağlandığımız makineye ait grafiksel arayüzü (Menüler, pencere ve gra

fikler v.s) kendi ekranımızda görmek isteyebiliriz. Bağlandığımız makinenin X uygulamalarını kendi lokal makinemizde calıştırmak için: $xhost +remote_makinenin_ip adresi yapmalıyız. Bu işlem, bağlandığımız makinadan grafiksel arayüze ait bilgilerin bizim makinamız tarafından alınma izinlerini verir. Bu izinler olmadan telnet ile bağlantıyı gerçekleştirsek bile grafiksel arayüze ulaşamayız. Daha sonra telnet yapılır. Eğer bu olanak kesilmek isteniyorsa remote makine kapatıldıktan sonra; $xhost -remote_makinenin_ip_adresi ile izinler kaldırılabilir. 2.1.2 Telnet Komutları Bunlar protokolun kullanımı için gerekli komutlardır. Komut satırına telnet yazıp enter tuşuna basıldıktan sonra? komutu ile görülebilir : close close current connection display display operating parameters mode try to enter line or character mode ('mode?' for more) open connect to a site quit exit telnet send transmit special characters ('send?' for more) set set operating parameters ('set?' for more) unset unset operating parameters ('unset?' for more) status print status information toggle toggle operating parameters ('toggle?' for more) b change state of special charaters ('slc?' for more) z suspend telnet! invoke a subshell environ change environment variables ('environ?' for more)? print help information örneğin : $telnet telnet> open remote_makinenin_ip_adresi yazarakda telnet bağlantısı sağlanabilir. 2.2 FTP (File Transfer Protocol) FTP (file transfer protocol), bir makinadan diğerine yapılan dosya transferinde en çok kullanılan yollardan biridir. İnternet desteği olan işletim sistemlerinin hepsinde (MS-DOS, Windows, OS/2... ) ftp, standart program olarak kullanıcıların hizmetine sunulmuş durumdadır. Linux altında da ftp desteği vardır. FTP, dosyaları alabilmenizle birlikte istediğiniz adrese yollamanıza da izin verir. Eğer İnternet'e bağlıysanız ve Linux kullanıyorsanız, ftp vazgeçemeyeceğiniz bir program olacaktır.

2.2.1 Temel FTP Komutları FTP, İnternet'e bağlı olan makinalarda anlam kazanır ve gücünü hissettirir. Saniyeler içinde onlarca dosya, yüzlerce kilobayt bilgi transfer edilebilir. FTP'ye başlamak için kullanabileceğiniz iki komut var. Birisi, standart ftp paketinden çıkan 'ftp' komutu, diğeri de 'ncftp' komutu. İkisinin de avantajları olmasına rağmen 'ncftp' nin kullanıcıya yönelik kullanım kolaylığı vardır, bu nedenle sizde 'ncftp' kullanın. Bir FTP adresine bağlanmak için o adresin IP numarasını veya ismini bilmeniz yeterli. Örnek olarak çok geniş bir Linux arşivi olan linux.org.tr adresine bağlanmak için: $ ftp linux.org.tr yazın. Ekranda aşağıdaki gibi bir görüntü gelecektir. ncftp, ftp yapmak için gerekli olan kullanıcı kodunu ve şifreyi kendisi gönderir ve otomatik olarak karşıdaki adrese bağlanır. Eğer ftp kullanıyor olsaydınız, kullanıcı kodu için anonymous veya ftp, şifre için de e-posta adresini girmeniz gerekecekti. linux:~$ ftp linux.org.tr Connected to linux.org.tr. 220 metu FTP server (Version wu-2.4(1) Tue Aug 8 15:50:43 CDT 1996) ready. Name (linux.org.tr:root): ftp 331 Guest login ok, send your complete e-mail address as password. Password: 230-Welcome, archive user! This is an experimental FTP server. If have any 230-unusual problems, please report them via e-mail to root@metu 230-If you do have problems, please try using a dash (-) as the first character 230-of your password -- this will turn off the continuation messages that may 230-be confusing your ftp client. 230-230 Guest login ok, access restrictions apply. Remote system type is UNIX. Using binary mode to transfer files. ftp> Karşıdaki makinaya bağlandık ve önümüze bir komut satırı çıktı. Bu komut satırında kullanılabilecek ftp komutlarının listesini görmek için ftp> help yazın. Bir komut hakkında daha ayrıntılı bilgi elde etmek için ise 'help' komutunun hemen ardından ftp komutunu getirebilirsiniz. Şimdi patika ismini bildiğimiz bir dosyayı kendi hesabımıza çekelim. Öncelikle nerede olduğumuzu görelim. Bunun için Linux komutunun benzeri olan ls veya dir komutunu kullanın. ftp> dir 200 PORT command successful. 150 Opening ASCII mode data connection for /bin/ls. total 9 drwxrwxr-x 8 root wheel 1024 Jan 7 1980. drwxrwxr-x 8 root wheel 1024 Jan 7 1980.. drwxrwxr-x 2 root wheel 1024 Jan 7 1980 bin drwxrwxr-x 2 root wheel 1024 Jan 7 1980 etc drwxrwxr-x 2 root wheel 1024 Dec 3 1993 incoming drwxrwxr-x 2 root wheel 1024 Nov 17 1993 lib drwxrwxr-x 12 root wheel 1024 Feb 14 08:08 pub drwxrwxr-x 3 root wheel 1024 Jan 7 1980 usr -rw-r--r-- 1 root root 312 Aug 1 1994 welcome.msg 226 Transfer complete.

Bir ftp adresine bağlandıktan sonra genelde her adreste yeralan pub, incoming, bin gibi dizinler göreceksiniz. Bunlardan şu an için işimize yarayanı pub dizini olacaktır. Bir dizine girmek için yine bir UNIX komutu olan 'cd' ve ardından 'pub' yazın. ftp> cd pub Şimdi `pub' dizini altındayız. Genellikle her türlü program, uygulama yazılımı, ağ uygulamaları ve çeşitli dosyalar bu dizin altında bulunur. Burada hangi dosya ve dizinler olduğunu görelim. ftp> dir 200 PORT command successful. 150 Opening ASCII mode data connection for /bin/ls. total 12 drwxrwxr-x 12 root wheel 1024 Feb 14 08:08. drwxrwxr-x 8 root wheel 1024 Jan 7 1980.. drwxr-xr-x 2 root root 1024 Feb 14 08:07 X drwxr-xr-x 2 root root 1024 Feb 14 08:07 applications drwxr-xr-x 2 root root 1024 Feb 14 08:07 development drwxr-xr-x 2 root root 1024 Feb 14 08:08 distributions drwxr-xr-x 2 root root 1024 Feb 14 08:07 docs drwxr-xr-x 2 root root 1024 Feb 14 08:07 games drwxr-xr-x 2 root root 1024 Feb 14 08:07 graphics drwxr-xr-x 2 root root 1024 Feb 14 08:09 kernel drwxr-xr-x 2 root root 1024 Feb 14 08:07 network drwxr-xr-x 2 root root 1024 Feb 14 08:07 sunsite 226 Transfer complete. ftp> Örneğin 'kernel' dizini altında yer alan bir çekirdek dosyasını kendi makinemize alalım. ftp> cd kernel 250 CWD command successful. Dosyaların transferi için iki farklı transfer türü mevcuttur. 1) ASCII 2) binary Ftp protokolünde, dosyaların bir makineden diğerine taşınması esnasında dosyanın çalıştırılabilir (arşivler, sıkıştırılmış dosyalar ve diğerleri) veya metin dosyası olması hayati önem taşır. İnternet üzerinde, zamandan tasarruf amacıyla tüm dosyalar ASCII formatta taşınırlar. Çalıştırılabilir dosyalar 8 bitlik karakterlerden oluştuğu için bunları indirebilmek için taşıma işleminin 8 bit halinde yapılması gerekir. Mevcut transfer türünün hangisi olduğunu görmek için type komutu kullanılır. ftp> type using binary mode to transfer files. ftp> ascii 200 Type set to A Uzaktaki sunucudan bir dosyanın bilgisayarınıza bağlantını almak için get komutu kullanılır tersine kopyasını koymak için ise put komutu kullanılır. Çok sayıda dosya kopyalanması durumunda myget veya mget* myput veya mput* (tüm dosyalar)

bağlantısının kesilmesi ve yeniden bağlanılması durumunda reget komutu kullanılır. Dosya silinmesi için delete, eğer çok sayıda ise mdelete komutu kullanılır. macdef komutu ile ftp için bir makro tanımlayabiliriz. ftp> macdef kopya Bu komuttan sonra aşağıdaki gibi macro komutlarını satır satır girerek nihayet makroyu boş bir satırla sona erdiririz. cd.. ls -l <enter> Komut satırından normal bir komut yerine bir makroyu çalıştırmak istediğimizde başına $ sembolü koyarız. Örneğin yukarıdaki kopya makrosunu çalıştırmak için ftp> $kopya şeklinde makro adını gireriz. Dosyayı indirmeden önce, kontrol edilmesi gereken bir şeyde dosyanın indirileceği yerel dizinini belirtmektir. Burada linux-1.3.56.tar.gz programını 'kernel' dizininin altına çekelim. Bunun için lcd komutunu kullanalım. ftp> lcd /root/kernel Local directory now /root/kernel Artık istediğimiz dosyayı indirebiliriz. Dosyaları almak için get komutu kullanılır. ftp> dir 200 PORT command successful. 150 Opening ASCII mode data connection for /bin/ls. total 5838 drwxr-xr-x 2 root root 1024 Feb 14 08:09. drwxrwxr-x 12 root wheel 1024 Feb 14 08:08.. -rw-r--r-- 1 root root 5951488 Feb 14 08:10 linux-1.3.56.tar.gz 226 Transfer complete. ftp> get linux-1.3.56.tar.gz 200 PORT command successful. 150 Opening BINARY mode data connection for linux-1.3.56.tar.gz (5951488 bytes). 226 Transfer complete. 5951488 bytes received in 26 secs (2.2e+02 Kbytes/sec) 26 saniye içinde yaklaşık 6 MB büyüklüğündeki dosyayı çektik. Sizin İnternet'e bağlantı hızınıza bağlı olarak dosyayı yerel diske yazma süresinde değişiklikler olabilir. Yukarıdaki işlemleri istediğiniz kadar tekrar edip gereken dosyaları çektikten sonra ftp'den çıkmak için ftp> quit 221 Goodbye. komutunu kullanın. Sunucu makinayla bağlantınız kesilecek ve kabuk komut satırına geri döneceksiniz. Birden fazla dosya çekmek veya göndermek için, komutların başına m getirilir. Örneğin :

ftp> mget ker* komutu, ker ile başlayan tüm dosyaları çekmek için kullanılır. 2.3 FTP Sunucusu FTP protokolü TCP paketleri kullanarak sunucu istemci mimarisinde çalışan bir uygulamadır. FTP sunucuları 20 ve 21 nolu portları dinleyerek hizmet verirler. 21. port kontrol kanalı olarak adlandırılır ve istemci tarafından FTP sunucusuna gönderilen tüm komutlar sunucunun 21. portuna gönderilir. 20. port ise veri kanalı olarak adlandırılır ve istemciden sunucuya yada sunucudan istemciye gönderilecek veriler sunucunun 20. portunu kullanır. FTP sunucuları bağlantı şekillerine göre ikiye ayırabiliriz; Aktif FTP sunucu bağlantısı Pasif FTP sunucu bağlantısı Aktif FTP Bağlantı Aşamaları; İstemciniz FTP sunucusuna FTP kontrol portu olan 21. portundan bağlanır. ls, get gibi komutlarınız bu bağlantı üzerinden gider.

İstemci kontrol portu üzerinden yolladığı komutla sunucudan kendisine doğru veri transer etmek isterse veri sunucunun 20. portundan istemcinin 1024'den daha yukarıdaki portlarından birine yapılacak olan bir bağlantıyla sağlanır. ls komutu çıktısı gibi verilerde, veri transfer edilen (20. portu kullanan) bağlantı üzerinden istemciye ulaşır. Aktif ftp bağlantısı istemcinin NAT arkasında bulunduğu durumlarda gerekli yönlendirmeler yapılmamışsa problem yaratabilir. Pasif FTP Bağlantı Aşamaları; İstemciniz FTP sunucusunun kontrol portu olan 21. portuna bağlanır. Komutlarınız bu bağlantı üzerinden sunucuya gider. İstemci ne zaman veri transferi isteğinde bulunsa istemci 1024'ten yüksek bir portu kaynak port olacak şekilde hedef portu sunucunun 1024'ten yüksek bir portu olacak şekilde bağlantı kurar ve veri transferini bu bağlantı üzerinden gerçekleştirir. Pasif FTP bağlantıları sırasında sunucu istemciye doğru herhangi bir bağlantı kurma çabasına girmez. İstemci veri gönderirken de alırken de her zaman gereken bağlantıları kurar. Firewall veya NAT arkasındaki istemcileri için pasif bağlantı şekli daha iyi çalışacaktır. Linux üzerinde kullanılan bir çok ftp sunucusu mevcuttur; Pure-ftpd Vsftpd Proftpd Wu-ftpd... Vsftpd Vsftpd (Very Secure FTP) yaygın olarak kullanılan ve konfigürasyonu oldukça basit bir ftp sunucusudur. Genellikle xinetd daemon u tarafından kontrol edilmektedir. Eğer sisteminizde vsftpd yüklüyse; Sunucuyu başlatmak için /etc/xinetd.d/vsftpd dosyası içerisindeki disable satırının değerini no olarak değiştirmek gerekmektedir. service ftp { } socket_type = stream protocol = tcp wait = no user = root server = /usr/sbin/vsftpd server_args = log_on_success += DURATION USERID log_on_failure += USERID nice = 10 disable = yes/no

ardından $ /etc/init.d/xinetd restart komutuyla xinetd deamon unu yeniden başlatarak ftp sunucunuzu açmış olursunuz. Anonymous kullanıcıların öntanımlı olarak ulaşacakları dizin sistemde lokal olarak tanımlanmış olan ftp kullanıcısının ev dizinidir. ftp:x:40:49:ftp account:/disk/suse93iso:/bin/bash Vsftp sunucusunun konfigürasyon dosyası /etc/vsftpd.conf dosyasıdır. Bu dosya içerisindeki konfigürasyonla ilgili bazı önemli parametreler aşağıda açıklanmıştır. Ftp sunucunuza girildiğindeki görünmesini istediğiniz hoş geldiniz mesajı ftpd_banner parametresiyle değiştirilebilir ftpd_banner="welcome to FOOBAR FTP service." Ftp sunucunuza anonymous kullanıcıların yanında sunucuda tanımlı olan lokal kullanıcıların da ev dizinlerine şifreleri ile ulaşmasını istediğinizde local_enable parametresini YES olarak ayarlamalısınız. local_enable=yes Sunucunuza ev dizinlerine ulaşmak için giren lokal kullanıcıların ev dizinlerinden daha üst dizinlere çıkmasını engellemek isterseniz chroot_local_user parametresi YES olarak ayarlanmalıdır. chroot_local_user=yes Ev dizinine hapsetmek istediğiniz kullanıcıları liste halinde tutmak istiyorsanız chroot_list_enable parametresini YES olarak ayarlayıp ardından kullanıcı listenizi chroot_list_file parametresi ile belirtmelisiniz. chroot_list_enable=yes chroot_list_file=/etc/vsftpd.chroot_list Sunucunuza bağlanan kullanıcılarınızın veri transfer hızını sınırlamak isterseniz local_max_rate parametresini byte/sn cinsinden belirlemelisiniz. Öntanımlı değer 0 yani sınırsızdır. local_max_rate=7200 Anonymous bağlantıya izin vermek istediğinizde anonymous_enable seçeneğinin YES olarak ayarlanması gerekmektedir. anonymous_enable=yes

Kullanıcının sunucuyla bağlantısının kesilmesine sebep olacak hareketsiz kalma süresi idle_session_timeout parametresi ile saniye cinsinden belirtilir idle_session_timeout=600 Veri transferinde kesinti olduğunda ne kadar süre bğlantı yapma denemelerinin devam edeceği data_connection_timeout parametresi ile saniye cinsinden belirtilir data_connection_timeout=120 2.4 Uzaktan erişim izni :.rhosts.rhosts dosyasını kullanarak TCP/IP komutları kullanan kullanıcılar tarafından hesabınıza erişimi kontrol edebilirsiniz. Kullanıcılar.rhosts dosyasını standard bir editör (örneğin vi veya emacs) kullanarak kendi hesaplarında oluştururlar. Bu dosya kullanıcının ev dizininde olmalıdır. Aşağıdaki örneklerde kullanıcı bir.rhosts dosyasının içeriğini görüntülemiştir. $ cat.rhosts garnet serdar violet mehmet.rhosts dosyası aracılığı ile diğer insanlara şifrenizi vermeksizin hesabınıza erişme iznini basit bir şekilde verebilirsiniz. Bir kullanıcıya erişimi engellemek için, basitçe.rhosts dosyanızdan sistemin ismini ve kullanıcının login-name ini silmeniz yeterlidir. Bu tip bir erişim çalışmak için ve uzaktan login işlemleri için gerekli değildir, daha ziyade uzaktan dosya kopyalanması, linux komutlarının uzaktan çalıştırılması gibi diğer uzaktan erişim komutları için gereklidir. Uzaktaki bir sistemde böyle komutları çalıştırmak istiyorsanız bu hesap sizin login name inize ve sistem isminize.rhosts dosyasında gereksinim duyar..rhosts un temin ettiği erişim türü, size diğer hesaplara doğrudan erişmek için TCP/IP komutlarını kullanmanıza izin verir. Bu hesaplara ilk olarak girmek zorunda değilsiniz. Gerçekte diğer sistemlerdeki hesaplarınızı o anda kullandığınız hesabınızın bir uzantısıymış gibi kullanabilirsiniz. rcp komutuyla herhangi bir dosyayı bir klasörden diğerine hangi sistem üzerinde olursa olsunlar kopyalayabilirsiniz. rsh komutu ile herhangi bir linux komutunu hesabınızın olduğu diğer uzak hesaplarınızda çalıştırabilirsiniz. Bu komutların genel yapıları aşağıdaki gibidir : $ rlogin sys-name -l login-name Eğer diğer sistemdeki login-name iniz farklı ise -l opsiyonu ile ona girebilirsiniz. Sisteme girdiğinizde istediğiniz herhangi bir komutu çalıştırabilirsiniz. Çıkmak için exit, CTRL-D, ~. veya logout (TCSH veya C-shell de) komutları kullanılır. $ rcp remote-system-name:source-file copy-file bu komutu kullanabilmek için uzak sistemin.rhosts dosyasında sizin local sisteminiz ve login name iniz olmalı. Örneğin: $ rcp violet:wednesday today

Wednesday dosyası violet uzak sisteminden kendi sistemine today adı ile kopyalandı. $ rcp -r letters violet:oldnotes letters klasörü, uzak sistem violet de oldnotes klasörü olarak kopyalanır $ rsh remote-system-name linux-command Bu komut içinde.rhosts dosyası gereksinimi vardır. Aşağıdaki örnek de uzak sistem violet de ls komutu çalıştırılır ve violet de /home/robert klasöründe dosyaları listeler $ rsh violet ls /home/robert Bu örnek te uzak sistemdeki dosyaları listeler ve onları local sistemdeki standart çıktıya yollar. $ rsh violet ls /home/robert > myfiles Eğer özel kota işareti kullanılırsa bu artık uzak sistemde değerlendirilen linux komutunun bir parçası olur. Örneğin: $ rsh violet ls /home/robert > myfiles ls komutu dosya isimlerinin listesini üretir ve uzak sistemdeki myfiles isimli bir dosyaya yönlendirir. Aynı şey borular içinde geçerlidir örneğin aşağıdaki 1.örnekte dosya listesi local printer a yönlendirilirken 2.örnekte standart çıktı uzaktaki sistemin printer ına yönlendirilmiştir. $ rsh violet ls /home/robert lpr $ rsh violet ls /home/robert lpr 2.5 Secure Shell (SSH) SSH (Secure SHell) telnet ve rsh gibi ağ üzerindeki diğer bilgisayarlara uzaktan kabuk erişimi ve dosya transferi için kullanılan bir programdır. Günümüzde rsh ve telnet gibi programların yerini alan ve hemen hemen bütün linux ve unix sürümlerinde standart olan uzaktan erişim aracıdır. SSH ın bu kadar popüler olmasının başlıca sebebi tüm haberleşmenin oldukça kuvvetli şifreleme algoritmaları ile şifrelenmesi ile ağ üzerindeki veri alışverişini güvenli kılmasıdır. Aynı şekilde dosya transferi ve SSH kullanılarak yapılacak olan tünelleme (IP Tunneling) işlemlerinde de bu şifreleme algoritmaları güvenlikten sorumludur. Cipher SSH1 SSH2 DES yes no 3DES yes yes IDEA yes no

Blowfish yes yes Twofish no yes Arcfour no yes Cast128-cbc no yes Tablo: SSH V1 ve SSH V2 Sürümlerinde Kullanılan Şifreleme Algoritmaları Günümüzde SSH versiyon 1(V1) ve 2(V2) olarak 2 farklı versiyona sahiptir. SSH V2 15 Haziran 2000 de ilk olarak OpenBSD 2.7 versiyonu ile birlikte dağıtıldığından beri SSH V1 ve V2 sunucuları ve istemcileri geriye doğru uyumlu bir şekilde çalışmaktadır. Ancak dikkat edilmesi gereken nokta SSH V1 in gelişiminin durmuş olması ve bu yüzden olası güvenlik açıklarının fark edilmeme ihtimali artmış olmasıdır. Bu yüzden güvenliğin ön planda olduğu sunucularda SSH V2 kullanılması gerekmektedir. Genelde çalışan sunucuların problem çıkarmadıkça çok fazla üzerinde oynama yapılmaması sebebi ile ve bir çok linux dağıtımının SSH V2 ye hemen geçmemesi sebebi ile SSH V1 sunucular hala oldukça fazla sayıda kullanılmaktadır. Aşağıda 2000 yılından 2004 yılına kadar SSH V2 ve SSH V1 kullanan pc lerin taranması ile elde edilmiş kullanım dağılımını görebilirsiniz. Grafik: 2000 2004 Yılları Arasında Kullanılan SSH versiyonları 2.5.1 SSH Kullanımı Uzaktan Kabuk Erişimi için; $ ssh makine_adı (yada makine ip adresi) -l kullanıcı_adı $ ssh maslak.be.itu.edu.tr -l serdar $ ssh 160.75.90.172 -l serdar veya $ ssh kullanıcı_adı@makine_adı (yada makine ip adresi) $ ssh serdar@maslak.be.itu.edu.tr

şeklinde ssh komutu kullanılabilir. Uzaktaki makineden kendi makinenize dosya ve dizin transferi için ; $ scp kullanıcı_adı@makina_adı:/dizin/dosya /dizin/ $ scp serdar@maslak.be.itu.edu.tr:/depo/betik.sh /tmp/ $ scp -r serdar@maslak.be.itu.edu.tr:/depo /tmp/ Kendi makinenizden uzaktaki makineye dosya ve dizin transferi için ; $ scp /dizin/dosya kullanıcı_adı@makina_adı:~/dizin/ $ scp /tmp/betik2.sh serdar@maslak.be.itu.edu.tr:~/ $ scp -r /tmp/ serdar@maslak.be.itu.edu.tr:~/ Uzaktaki makinede kabuk açmadan komut çalıştırmak için ssh uygulamasını aşağıdaki gibi kullanabilirsiniz $ ssh kullanıcı_adı@makine_adı komut $ ssh serdar@maslak.be.itu.edu.tr uptime SSH ile uzaktaki makineye kabuk bağlantısı yaptığınızda eğer uzaktaki makine üzerindeki X-Window uygulamalarını kullanmak isterseniz bu uygulamaların görüntülerini kendi makinenize yönlendirmeniz gerekmektedir. Eğer aşağıdaki gibi bir hata alıyorsanız bu yönlendirmeyi yapmamışsınız demektir. gursoy@silivri:~> ssh maslak l gursoy gursoy@maslak:~> xterm xterm Xt error: Can't open display: silivri:0.0 X-Window yönlendirmesi yapmak için iki yol vardır. Basit olanı SSH ın X11 Forwarding özelliğini kullanmaktır. Bu özellik SSH ın kendi şifrelenmiş tüneli içerisinden X-Window pencerelerini lokal makineye getirmesini sağlar. Bu şekilde bağlantı yapıldığında her uygulama ağ hızınızın iyi olduğu ortamlarda problemsiz olarak çalışacaktır ssh X maslak l gursoy Bir diğer görüntü yönlendirme şekli ise DISPLAY çevre değişkenini kullanmaktır. Aşağıdaki işlemleri sırayla gerçekleştirmek gerekir Lokal makinede uzak makineden gelen pencerelerin gösterilmesine izin vermek için xhost komutu kullanılır. $ xhost + görüntü_yollayacak_makine_adı(ya da ip adresi) $ xhost + maslak.be.itu.edu.tr Gelen bütün görüntülere izin vermek için xhost komutuna makine adı belirtmeden kullanabilirsiniz $ xhost +

Verilen izni kaldırmak içinse komutu aşağıdaki gibi kullanabilirsiniz $ xhost maslak.be.itu.edu.tr $ xhost - İkinci aşama uzaktaki makinedeki DISPLAY çevre değişkenini lokal makinenizi ifade edecek şekilde değiştirmenizdir. Örneğin maslak makinesinden silivri makinesine görüntü yönlendirmek istersem maslak makinesinde aşağıdaki komutu çalıştırmam gerekmektedir; Sh, bash kabukları için; $ export DISPLAY=silivri.be.itu.edu.tr:0.0 csh, tcsh için $ setenv DISPLAY=silivri.be.itu.edu.tr Bu aşamadan sonra maslak makinesinde çalıştırdığınız X-Window uygulamalarının pencereleri silivri makinesine yönlendirilecektir. 2.5.2 Şifresiz SSH Bağlantısı SSH uygulamasının anahtar bazlı bağlantısını kullanarak şifresiz bir şekilde makineler arası bağlantı yapmak mümkündür. Bu özellik özellikle sistem yöneticilerine kolaylık sağlamaktadır. Ağ üzerinde çalışan betikler için oldukça kullanışlı bir özelliktir. Genel olarak sistem şu şekilde çalışmaktadır. İlk olarak kullanıcı dsa yada rsa algoritmasıyla genel(public)/özel(private) anahtarlarını (key) üretir. Özel anahtarını çalıştığı makinenin ~/.ssh/id_dsa dosyasına kopyalar. Genel anahtarını şifresiz ssh yapacağı makinelerin ~/.ssh/authorized_keys2 dosyasının sonuna ekler. Bağlantı aşamasında özel anahtar kullanılarak tek kullanımlık bir imza(signature) üretilir. SSH yapılacak olan makinedeki genel anahtar ancak bu özel anahtarın ürettiği imzalara sahip kullanıcıların şifresiz olarak kabul etmektedir. İki makine arasında şifresiz ssh yapabilmek için ilk olarak aşağıdaki çalıştırılması gerekmektedir. komutların İlk olarak genel/özel anahtar çiftini yaratılması gerekmektedir $ ssh-keygen t dsa (Çıkan soruların hepsini öntanımlı cevapları kabul edecek şekilde enter a basarak geçiniz) Anahtarları ürettiğiniz makinedaki genel anahtarı ssh yapacağınız makinelerdeki ~/.ssh/authorized_keys2 dosyasına eklemeniz gerekmektedir. $ cat ~/.ssh/id_dsa.pub > ~/.ssh/authorized_keys2

(Laboratuardaki tüm bilgisayarlara ev dizininiz sunucu üzerinden dağıtıldığı için artık ~/.ssh/authorized_keys2 dosyası her makinede bulunmaktadır.) Ardından SSH yapmadan önce aşağıdaki komutları çalıştırmanız gerekebilir; $ ssh-agent bash $ ssh-add ~/.ssh/id_dsa Artık şifresiz olarak ssh yapabilirsiniz.