Blog’a Dön

FTP ve SFTP Nedir? Sunucuya Dosya Yükleme Rehberi

FTP, FTPS ve SFTP nedir, farkları ne? FileZilla ve WinSCP ile web hostinge ve sunucuya dosya yükleme, port ayarları, SFTP kullanıcısı ve sık hatalar.

Nodesty Ekibi4 dk okumaHosting
Koyu Nodesty arka planında FTP & SFTP yazısı ile 21, 22 ve FileZilla ifadeleri

FTP (File Transfer Protocol), bilgisayarınızla bir sunucu arasında dosya aktarmak için kullanılan protokoldür. Web sitenizin dosyalarını hostinge yüklemek, bir oyun sunucusuna eklenti göndermek ya da sunucudaki günlükleri indirmek için kullanılır. Düz FTP verileri şifrelemeden gönderdiği için bugün yerini büyük ölçüde güvenli sürümlerine bıraktı: FTPS (FTP over TLS) ve SFTP (SSH File Transfer Protocol).

Bu rehberde üç protokol arasındaki farkı, web hostinge ve kendi sunucunuza dosya yüklemeyi, FileZilla ve WinSCP ayarlarını, yalnızca SFTP kullanabilen kullanıcı oluşturmayı ve sık karşılaşılan hataları anlatıyoruz.

FTP, FTPS ve SFTP arasındaki fark

ÖzellikFTPFTPS (FTP over TLS)SFTP
ŞifrelemeYokTLS ile şifreliSSH ile şifreli
Port21 ve veri portları21 (explicit) ya da 990 (implicit)22 (SSH portu)
Sunucu tarafıFTP sunucusu gerekirTLS destekli FTP sunucusu gerekirOpenSSH yeterlidir
Tipik kullanımEski sistemlerPaylaşımlı web hostingVDS, fiziksel sunucu, oyun sunucusu
Güvenlik duvarıPasif portlar gerekirPasif portlar gerekirTek port

İsimleri benzese de SFTP, FTP'nin bir türü değildir; SSH bağlantısının içinde çalışan bambaşka bir protokoldür. Kısacası:

  • Web hostingde FTPS kullanın.
  • Kendi sunucunuzda (VDS, fiziksel sunucu) SFTP kullanın; ek bir şey kurmanıza gerek yoktur.
  • Düz FTP'yi yalnızca başka seçeneğiniz yoksa kullanın.

FTP istemcileri

Dosya aktarımı için kendi bilgisayarınızda bir istemci programı kullanırsınız:

  • FileZilla: Windows, macOS ve Linux için ücretsiz; FTP, FTPS ve SFTP'yi destekler.
  • WinSCP: Windows için ücretsiz; SFTP'de çok güçlüdür ve sunucudaki dosyaları doğrudan düzenlemenizi sağlar.
  • Cyberduck: macOS ve Windows için ücretsiz bir istemci.
  • Komut satırı: sftp, scp ve rsync Linux ve macOS'ta, güncel Windows sürümlerinde de hazır gelir.

Web hostinge FTPS ile dosya yükleme

  1. FTP hesabı oluşturun. cPanel'de FTP Accounts, DirectAdmin'de FTP Management bölümünden bir FTP hesabı açın ya da ana hosting hesabınızın bilgilerini kullanın. Bir hesabı yalnızca belirli bir klasöre erişecek şekilde sınırlandırabilirsiniz; bir geliştiriciye geçici erişim verirken kullanışlıdır.
  2. FileZilla'da bağlantı kurun. Dosya → Site Yöneticisi → Yeni Site yolunu izleyin ve şu bilgileri girin:
    • Protokol: FTP - File Transfer Protocol
    • Sunucu: Alan adınız ya da hosting sunucunuzun adresi
    • Şifreleme: Açık TLS üzerinden FTP gerektir (Require explicit FTP over TLS)
    • Oturum açma türü: Normal
    • Kullanıcı ve şifre: FTP hesabınızın bilgileri
  3. Dosyaları doğru klasöre yükleyin. Ana alan adının dosyaları public_html klasörüne gider. Sol tarafta bilgisayarınızdaki, sağ tarafta sunucudaki dosyaları görürsünüz; dosyaları sürükleyip bırakmanız yeterlidir.

İlk bağlantıda FileZilla bir sertifika onayı isteyebilir. Sertifikadaki ad, bağlandığınız sunucunun adıyla eşleşiyorsa onaylayın.

Kendi sunucunuza SFTP ile bağlanma

VDS ya da fiziksel sunucunuza SSH ile bağlanabiliyorsanız SFTP de hazırdır:

  • Protokol: SFTP - SSH File Transfer Protocol
  • Sunucu: Sunucunuzun IP adresi
  • Port: 22 (SSH portunu değiştirdiyseniz yeni port)
  • Oturum açma türü: Şifre ya da Anahtar dosyası

SSH anahtarıyla bağlanıyorsanız FileZilla'da oturum açma türünü Anahtar dosyası yapıp gizli anahtarınızı seçin; WinSCP'de Gelişmiş → SSH → Kimlik doğrulama bölümünden anahtarı gösterin. Gerekirse programlar anahtarı kendi biçimlerine dönüştürmeyi önerir. SSH anahtarı oluşturmayı SSH nedir? yazımızda anlattık.

Komut satırından tek seferlik aktarımlar için:

scp site.zip kullanici@203.0.113.10:/var/www/
rsync -avz ./site/ kullanici@203.0.113.10:/var/www/site/

rsync yalnızca değişen dosyaları gönderdiği için büyük klasörleri senkronize etmek için en verimli yoldur.

Yalnızca SFTP kullanabilen kullanıcı

Bir geliştiriciye ya da müşteriye sunucunuzda yalnızca belirli bir klasöre dosya yükleme izni vermek, ama komut satırı erişimi vermemek isteyebilirsiniz. OpenSSH bunu kendisi yapabilir:

  1. Bir grup ve kullanıcı oluşturun:
    sudo groupadd sftpkullanicilari
    sudo useradd -m -g sftpkullanicilari -s /usr/sbin/nologin gelistirici
    sudo passwd gelistirici
    
  2. Kullanıcının hapsedileceği klasörü hazırlayın. Kök klasörün sahibi root olmalıdır; kullanıcı yalnızca içindeki bir klasöre yazabilir:
    sudo mkdir -p /srv/sftp/gelistirici/yuklemeler
    sudo chown root:root /srv/sftp/gelistirici
    sudo chown gelistirici:sftpkullanicilari /srv/sftp/gelistirici/yuklemeler
    
  3. /etc/ssh/sshd_config dosyasının sonuna ekleyin:
    Match Group sftpkullanicilari
        ChrootDirectory /srv/sftp/%u
        ForceCommand internal-sftp
        AllowTcpForwarding no
        X11Forwarding no
    
  4. Yapılandırmayı test edip SSH servisini yeniden başlatın:
    sudo sshd -t
    sudo systemctl restart ssh
    

Bu kullanıcı SFTP ile bağlandığında yalnızca kendi klasörünü görür ve SSH ile komut çalıştıramaz. Bazı dağıtımlarda servisin adı ssh yerine sshd'dir.

Sık karşılaşılan hatalar

  • 530 Login incorrect: Kullanıcı adı ya da şifre yanlış. cPanel'deki ek FTP hesaplarında kullanıcı adının kullanici@alanadiniz.com biçiminde olduğunu unutmayın.
  • Dizin listesi alınamıyor ya da zaman aşımı: FTP/FTPS'te veri bağlantısı kurulamıyor. FileZilla'da aktarım modunun Pasif olduğundan emin olun; kendi FTP sunucunuzsa güvenlik duvarında pasif port aralığını açın.
  • Connection refused (SFTP): SSH servisi çalışmıyor ya da yanlış porta bağlanıyorsunuz. SSH portunu değiştirdiyseniz istemcide de değiştirin.
  • Permission denied: Kullanıcının o klasöre yazma izni yok. Linux'ta klasörlerin sahibini ve izinlerini kontrol edin; dosyalar için 644, klasörler için 755 yaygın değerlerdir.
  • Dosyalar yüklendi ama site değişmedi: Doğru klasöre yüklediğinizden emin olun ve tarayıcı ya da CDN önbelleğini temizleyin.

Portların nasıl çalıştığını Port nedir? yazımızda anlattık.

Nodesty'de dosya aktarımı

Nodesty web hosting paketlerinde cPanel ya da DirectAdmin üzerinden FTP hesapları oluşturup dosyalarınızı FTPS ile güvenle yükleyebilir ya da kontrol panelinin dosya yöneticisini kullanabilirsiniz; paylaşımlı sunucularda güvenlik nedeniyle SSH ve SFTP erişimi sunulmaz. AMD Ryzen 9 9950X VDS paketlerinde ise Linux sunucunuza SSH ve SFTP ile, Windows Server'a uzak masaüstüyle bağlanıp dosyalarınızı doğrudan aktarabilirsiniz.

Sıkça Sorulan Sorular

FTP güvenli mi?

Düz FTP, kullanıcı adınızı, şifrenizi ve dosyalarınızı şifrelemeden gönderir; aynı ağdaki biri bu bilgileri okuyabilir. Bu yüzden düz FTP yerine her zaman FTPS (FTP over TLS) ya da SFTP kullanın. Web hostinglerde FTPS, kendi sunucularınızda SFTP en pratik seçimdir.

FTP kullanıcı adım nedir?

cPanel ve DirectAdmin'de oluşturduğunuz ek FTP hesaplarının kullanıcı adı genellikle kullanici@alanadiniz.com biçimindedir. Ana hosting hesabıyla bağlanıyorsanız hesap kullanıcı adınızı kullanırsınız. Doğru biçimi kontrol panelindeki FTP hesapları bölümünde görebilirsiniz.

SFTP için ayrıca bir program kurmam gerekir mi?

Sunucu tarafında hayır; SFTP, Linux sunucularda zaten kurulu olan OpenSSH'ın bir parçasıdır ve SSH ile bağlanabildiğiniz her sunucuya SFTP ile de bağlanabilirsiniz. Kendi bilgisayarınızda ise FileZilla, WinSCP ya da Cyberduck gibi bir istemci kullanırsınız.

Web hostingde SFTP kullanabilir miyim?

SFTP, SSH üzerinden çalışır. SSH erişimi sunulmayan paylaşımlı web hosting paketlerinde dosyalarınızı FTPS (FTP over TLS) ya da kontrol panelindeki dosya yöneticisiyle yüklersiniz. Nodesty web hosting paketlerinde SSH erişimi bulunmadığı için FTPS kullanmanızı öneririz.

Yüklediğim dosyalar sitede görünmüyor, neden?

Dosyaları büyük olasılıkla yanlış klasöre yüklediniz. Web hostingde ana alan adının dosyaları public_html klasörüne gider; eklenti alan adları ve alt alan adları için kendi klasörleri vardır. Tarayıcı ya da CDN önbelleği de eski dosyaları göstermeye devam ediyor olabilir.

Çok sayıda küçük dosyayı nasıl hızlı yüklerim?

Binlerce küçük dosyayı tek tek göndermek, her dosya için ayrı bir işlem gerektirdiği için yavaştır. Dosyaları önce tek bir zip arşivinde toplayıp yükleyin, ardından kontrol panelinin dosya yöneticisinden ya da sunucuda unzip komutuyla açın.

Nodesty

Yazar hakkında

Nodesty Ekibi · Altyapı ve Destek

Nodesty ekibi sunucularımızı, ağımızı ve DDoS korumamızı her gün işletir ve müşteri destek taleplerini 7/24 yanıtlar. Bu rehberler o deneyimden yazılır.

İlgili yazılar

Sunucunuzu şimdi başlatın.

Nodesty'nin üstün altyapısı ile projelerinizi özgürce inşa edin ve sınır tanımadan ölçeklendirin.

                                                                                                                                                                                                                            
                                                                                                                                                                                                                            
                                                                                                                                                                                                                            
                                                                                                                             ············································                                                   
                                                ··································································································..........···························                                     
                                       ················..........................................................................................................................··············                             
                                  ·············.................::::::::::::::::::::::::::::::::::::::::::::::....................:::::::::::::::::::::::::::::::::::::::................···········                        
                             ············................:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::............·········                     
                         ············.................:::::::::::::::::::::::::::::::::::::::::::::::::::------------::::::::::::::::::::::::::::::----------------:::::::::::::::::::::..........········                  
                    ············......................::::::::::::::::::::::::::::::::::::------------------------------------------------------------------------------------:::::::::::::.........········                
                ··········.............................................::::::::::::::::::-------------==========================================-----------------------------------:::::::::::........·······               
             ········..................:.....................................::::::::::--------=======+++++++++++++++++++++++++++++++++++++=========================------------------::::::::::.......·······              
           ······.........::::::::::::::::::::................................:::::::-----=====++++xxxxxx**************************xxxxxxxxx++++++++++++++===================------------::::::::.......·······             
          ·····.......:::::::::::::::::::::::::::.............................:::::----===+++xxx****%%%%&&&&&&#############&&&&&&&%%%%%*******xxxxxxxx++++++++++++++==============----------:::::::......······             
         ····......::::::::-------------:::::::::::..........................::::---===+++xx***%%%&&&####@@@@@@@@@@@@@@@@@@@@@@@@####&&&&&%%%%*******xxxxxxxxx+++++++++++++===========--------::::::......·····             
        ····.....:::::::--------------------:::::::::.......................::::---===++xxx**%%&&&###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###&&&&%%%%%********xxxxxxxxxxx++++++++++++========------::::::.....······            
        ····.....:::::--------------------------::::::::....................::::---===++xx***%%&&&####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###&&&&&%%%%%**********xxxxxxxxxxxxx+++++++++=======------:::::.....·····            
        ····....::::::-------=============---------:::::::::................:::::---===+++xx***%%%&&&#####@@@@@@@@@@@@@@@@@@@@@@@@@#####&&&&&%%%%%%*************xxxxxxxxxxxxxx+++++++++======-----:::::....·····            
         ····....:::::-------================---------:::::::::...............:::::----===++++xxx***%%%%&&&&&&#################&&&&&&%%%%%%%*******************xxxxxxxxxxxxxxxxx++++++++======----:::::....·····            
         ·····....:::::--------=================---------::::::::::..............:::::::-----====+++++xxxxxx**************************xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx++++++++=====-----::::....·····            
          ·····.....:::::--------=================----------:::::::::::.................:::::::::-------=============++++++++++++++++++++++++++++++++++++xxxxxxxxxxxxxxxxxxxxxxx++++++++======-----::::....·····            
            ·····.....:::::::----------===========-------------::::::::::::.........................::::::::::::::::::------------------=============+++++++++++++++++++++++++++++++++=======-----::::.....·····            
              ······......:::::::---------------------------------:::::::::::::........................................:::::::::::::::-----------============+++++++++++++++++++++========------:::::.....·····             
                 ······........:::::::::---------------------------:::::::::::::::::...........................................:::::::::::::------------=============================--------::::::.....······              
                    ·········.........:::::::::::::::-------------::::::::::::::::::::::::.......................................::::::::::::::::--------------------------------------::::::::......·······                
                          ··········............::::::::::::::::::::::::::::::::::::::::::::::::::................................::::::::::::::::::::::::::-------------:::::::::::::::.........········                   
                                  ············..................:::::::::::::::::::::::::::::::::::::::::::.........................:::::::::::::::::::::::::::::::::::::................···········                        
                                             ················.............................................................................................................·················                                 
                                                           ······················................................................................···························                                                
                                                                               ·········································································