﻿{"id":10846,"date":"2026-11-05T21:06:18","date_gmt":"2026-11-05T21:06:18","guid":{"rendered":"https:\/\/verisunucu.net\/blog\/?p=10846"},"modified":"2026-11-08T21:21:26","modified_gmt":"2026-11-08T21:21:26","slug":"ftp-sunucusu-kurma","status":"publish","type":"post","link":"https:\/\/verisunucu.net\/blog\/ftp-sunucusu-kurma\/","title":{"rendered":"FTP Sunucusu Kurma"},"content":{"rendered":"<p dir=\"ltr\" data-path-to-node=\"1\">Bir web sunucusu (VPS veya VDS) y\u00f6netirken, site dosyalar\u0131n\u0131 y\u00f6netmek, yedekleri aktarmak veya \u00e7oklu kullan\u0131c\u0131lar\u0131n sunucuya g\u00fcvenli bir \u015fekilde dosya y\u00fcklemesini sa\u011flamak i\u00e7in en temel y\u00f6ntemlerden biri FTP (File Transfer Protocol) servisi kurmakt\u0131r. Linux da\u011f\u0131t\u0131mlar\u0131 aras\u0131nda en g\u00fcvenli, kararl\u0131 ve yayg\u0131n kullan\u0131lan FTP sunucu yaz\u0131l\u0131m\u0131 <b data-path-to-node=\"1\" data-index-in-node=\"340\">vsftpd (Very Secure FTP Daemon)<\/b> uygulamas\u0131d\u0131r.<\/p>\n<p dir=\"ltr\" data-path-to-node=\"2\"><a href=\"https:\/\/verisunucu.net\/\"><b data-path-to-node=\"2\" data-index-in-node=\"0\">Verisunucu.net<\/b> <\/a>olarak haz\u0131rlad\u0131\u011f\u0131m\u0131z bu kapsaml\u0131 rehberde; Linux sunucunuza ad\u0131m ad\u0131m vsftpd ile FTP sunucusunun nas\u0131l kurulaca\u011f\u0131n\u0131, g\u00fcvenlik ayarlar\u0131n\u0131n nas\u0131l yap\u0131land\u0131r\u0131laca\u011f\u0131n\u0131 ve istemci programlar\u0131yla nas\u0131l ba\u011flan\u0131laca\u011f\u0131n\u0131 t\u00fcm detaylar\u0131yla inceliyoruz.<\/p>\n<figure id=\"attachment_10852\" aria-describedby=\"caption-attachment-10852\" style=\"width: 1024px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-10852\" src=\"https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/6-1024x513.png\" alt=\"FTP Sunucusu Kurma\" width=\"1024\" height=\"513\" srcset=\"https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/6-1024x513.png 1024w, https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/6-300x150.png 300w, https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/6-768x385.png 768w, https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/6-1536x770.png 1536w, https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/6-400x201.png 400w, https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/6-800x401.png 800w, https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/6-832x417.png 832w, https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/6-1248x626.png 1248w, https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/6.png 1600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption id=\"caption-attachment-10852\" class=\"wp-caption-text\">FTP Sunucusu Kurma<\/figcaption><\/figure>\n<h2 dir=\"ltr\" data-path-to-node=\"4\">1. Ad\u0131m: vsftpd Kurulumu<\/h2>\n<p dir=\"ltr\" data-path-to-node=\"5\">Sunucunuza SSH \u00fczerinden root veya sudo yetkili bir kullan\u0131c\u0131yla ba\u011fland\u0131ktan sonra, i\u015fletim sisteminizin paket y\u00f6neticisini kullanarak vsftpd kurulumunu ger\u00e7ekle\u015ftirebilirsiniz.<\/p>\n<ul class=\"md-has-block-component\" dir=\"ltr\" data-path-to-node=\"6\">\n<li>\n<p dir=\"ltr\" data-path-to-node=\"6,0,0\"><b data-path-to-node=\"6,0,0\" data-index-in-node=\"0\">Ubuntu \/ Debian Sistemler \u0130\u00e7in:<\/b><\/p>\n<div class=\"code-block ng-tns-c1783459983-60 ng-animate-disabled ng-trigger ng-trigger-codeBlockRevealAnimation\" data-hveid=\"0\" data-ved=\"0CAAQhtANahgKEwjfq7OvmfmXAxUAAAAAHQAAAAAQoQM\">\n<div class=\"formatted-code-block-internal-container ng-tns-c1783459983-60\">\n<div class=\"animated-opacity ng-tns-c1783459983-60\">\n<div class=\"code-block-decoration header-formatted gds-emphasized-body-m ng-tns-c1783459983-60 ng-star-inserted\">\n<p><span class=\"ng-tns-c1783459983-60\">Bash<\/span><\/p>\n<div class=\"buttons ng-tns-c1783459983-60 ng-star-inserted\"><\/div>\n<\/div>\n<pre class=\"ng-tns-c1783459983-60\"><code class=\"code-container formatted ng-tns-c1783459983-60\" role=\"text\" data-test-id=\"code-content\">sudo apt update\r\nsudo apt install vsftpd -y\r\n<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/li>\n<li>\n<p dir=\"ltr\" data-path-to-node=\"6,1,0\"><b data-path-to-node=\"6,1,0\" data-index-in-node=\"0\">AlmaLinux \/ CentOS \/ RHEL Sistemler \u0130\u00e7in:<\/b><\/p>\n<div class=\"code-block ng-tns-c1783459983-61 ng-animate-disabled ng-trigger ng-trigger-codeBlockRevealAnimation\" data-hveid=\"0\" data-ved=\"0CAAQhtANahgKEwjfq7OvmfmXAxUAAAAAHQAAAAAQogM\">\n<div class=\"formatted-code-block-internal-container ng-tns-c1783459983-61\">\n<div class=\"animated-opacity ng-tns-c1783459983-61\">\n<div class=\"code-block-decoration header-formatted gds-emphasized-body-m ng-tns-c1783459983-61 ng-star-inserted\">\n<p><span class=\"ng-tns-c1783459983-61\">Bash<\/span><\/p>\n<div class=\"buttons ng-tns-c1783459983-61 ng-star-inserted\"><\/div>\n<\/div>\n<pre class=\"ng-tns-c1783459983-61\"><code class=\"code-container formatted ng-tns-c1783459983-61\" role=\"text\" data-test-id=\"code-content\">sudo dnf install vsftpd -y\r\n<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/li>\n<\/ul>\n<p dir=\"ltr\" data-path-to-node=\"7\">Kurulum tamamland\u0131ktan sonra servisi ba\u015flatmak ve sunucu her a\u00e7\u0131ld\u0131\u011f\u0131nda otomatik olarak \u00e7al\u0131\u015fmas\u0131n\u0131 sa\u011flamak i\u00e7in \u015fu komutlar\u0131 \u00e7al\u0131\u015ft\u0131r\u0131n:<\/p>\n<div class=\"code-block ng-tns-c1783459983-62 ng-animate-disabled ng-trigger ng-trigger-codeBlockRevealAnimation\" data-hveid=\"0\" data-ved=\"0CAAQhtANahgKEwjfq7OvmfmXAxUAAAAAHQAAAAAQowM\">\n<div class=\"formatted-code-block-internal-container ng-tns-c1783459983-62\">\n<div class=\"animated-opacity ng-tns-c1783459983-62\">\n<div class=\"code-block-decoration header-formatted gds-emphasized-body-m ng-tns-c1783459983-62 ng-star-inserted\">\n<p><span class=\"ng-tns-c1783459983-62\">Bash<\/span><\/p>\n<div class=\"buttons ng-tns-c1783459983-62 ng-star-inserted\"><\/div>\n<\/div>\n<pre class=\"ng-tns-c1783459983-62\"><code class=\"code-container formatted ng-tns-c1783459983-62\" role=\"text\" data-test-id=\"code-content\">sudo systemctl start vsftpd\r\nsudo systemctl <span class=\"hljs-built_in\">enable<\/span> vsftpd\r\n<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<h2 dir=\"ltr\" data-path-to-node=\"10\">2. Ad\u0131m: FTP Sunucu Yap\u0131land\u0131rma Dosyas\u0131n\u0131 D\u00fczenleme<\/h2>\n<p dir=\"ltr\" data-path-to-node=\"11\">G\u00fcvenli ve kararl\u0131 bir FTP sunucusu i\u00e7in konfig\u00fcrasyon dosyas\u0131n\u0131 (vsftpd.conf) d\u00fczenlemeniz gerekir. Dosyay\u0131 bir metin d\u00fczenleyiciyle a\u00e7\u0131n:<\/p>\n<div class=\"code-block ng-tns-c1783459983-63 ng-animate-disabled ng-trigger ng-trigger-codeBlockRevealAnimation\" data-hveid=\"0\" data-ved=\"0CAAQhtANahgKEwjfq7OvmfmXAxUAAAAAHQAAAAAQpAM\">\n<div class=\"formatted-code-block-internal-container ng-tns-c1783459983-63\">\n<div class=\"animated-opacity ng-tns-c1783459983-63\">\n<div class=\"code-block-decoration header-formatted gds-emphasized-body-m ng-tns-c1783459983-63 ng-star-inserted\">\n<p><span class=\"ng-tns-c1783459983-63\">Bash<\/span><\/p>\n<div class=\"buttons ng-tns-c1783459983-63 ng-star-inserted\"><\/div>\n<\/div>\n<pre class=\"ng-tns-c1783459983-63\"><code class=\"code-container formatted ng-tns-c1783459983-63\" role=\"text\" data-test-id=\"code-content\">sudo nano \/etc\/vsftpd.conf\r\n<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<p dir=\"ltr\" data-path-to-node=\"13\">Dosya i\u00e7erisinde dikkat etmeniz ve d\u00fczenlemeniz gereken kritik ayarlar \u015funlard\u0131r:<\/p>\n<ul class=\"md-has-block-component\" dir=\"ltr\" data-path-to-node=\"14\">\n<li>\n<p dir=\"ltr\" data-path-to-node=\"14,0,0\"><b data-path-to-node=\"14,0,0\" data-index-in-node=\"0\">Anonim (Misafir) Giri\u015fleri Kapat\u0131n:<\/b> G\u00fcvenlik a\u00e7\u0131s\u0131ndan kimlik do\u011frulamas\u0131 yapmayan kullan\u0131c\u0131lar\u0131n sisteme eri\u015fmesini mutlaka engellemelisiniz.<\/p>\n<div class=\"code-block ng-tns-c1783459983-64 ng-animate-disabled ng-trigger ng-trigger-codeBlockRevealAnimation\" data-hveid=\"0\" data-ved=\"0CAAQhtANahgKEwjfq7OvmfmXAxUAAAAAHQAAAAAQpQM\">\n<div class=\"formatted-code-block-internal-container ng-tns-c1783459983-64\">\n<div class=\"animated-opacity ng-tns-c1783459983-64\">\n<div class=\"code-block-decoration header-formatted gds-emphasized-body-m ng-tns-c1783459983-64 ng-star-inserted\">\n<p><span class=\"ng-tns-c1783459983-64\">Plaintext<\/span><\/p>\n<div class=\"buttons ng-tns-c1783459983-64 ng-star-inserted\"><\/div>\n<\/div>\n<pre class=\"ng-tns-c1783459983-64\"><code class=\"code-container formatted ng-tns-c1783459983-64\" role=\"text\" data-test-id=\"code-content\">anonymous_enable=NO\r\n<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/li>\n<li>\n<p dir=\"ltr\" data-path-to-node=\"14,1,0\"><b data-path-to-node=\"14,1,0\" data-index-in-node=\"0\">Yerel Kullan\u0131c\u0131 Giri\u015flerine \u0130zin Verin:<\/b> Sunucunuzdaki Linux kullan\u0131c\u0131lar\u0131n\u0131n FTP \u00fczerinden ba\u011flanabilmesi i\u00e7in bu sat\u0131r aktif olmal\u0131d\u0131r:<\/p>\n<div class=\"code-block ng-tns-c1783459983-65 ng-animate-disabled ng-trigger ng-trigger-codeBlockRevealAnimation\" data-hveid=\"0\" data-ved=\"0CAAQhtANahgKEwjfq7OvmfmXAxUAAAAAHQAAAAAQpgM\">\n<div class=\"formatted-code-block-internal-container ng-tns-c1783459983-65\">\n<div class=\"animated-opacity ng-tns-c1783459983-65\">\n<div class=\"code-block-decoration header-formatted gds-emphasized-body-m ng-tns-c1783459983-65 ng-star-inserted\">\n<p><span class=\"ng-tns-c1783459983-65\">Plaintext<\/span><\/p>\n<div class=\"buttons ng-tns-c1783459983-65 ng-star-inserted\"><\/div>\n<\/div>\n<pre class=\"ng-tns-c1783459983-65\"><code class=\"code-container formatted ng-tns-c1783459983-65\" role=\"text\" data-test-id=\"code-content\">local_enable=YES\r\n<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/li>\n<li>\n<p dir=\"ltr\" data-path-to-node=\"14,2,0\"><b data-path-to-node=\"14,2,0\" data-index-in-node=\"0\">Dosya Yazma \u0130zinlerini Aktif Edin:<\/b> Kullan\u0131c\u0131lar\u0131n sunucuya dosya y\u00fckleyebilmesi veya dosya silebilmesi i\u00e7in yazma iznini a\u00e7\u0131n:<\/p>\n<div class=\"code-block ng-tns-c1783459983-66 ng-animate-disabled ng-trigger ng-trigger-codeBlockRevealAnimation\" data-hveid=\"0\" data-ved=\"0CAAQhtANahgKEwjfq7OvmfmXAxUAAAAAHQAAAAAQpwM\">\n<div class=\"formatted-code-block-internal-container ng-tns-c1783459983-66\">\n<div class=\"animated-opacity ng-tns-c1783459983-66\">\n<div class=\"code-block-decoration header-formatted gds-emphasized-body-m ng-tns-c1783459983-66 ng-star-inserted\">\n<p><span class=\"ng-tns-c1783459983-66\">Plaintext<\/span><\/p>\n<div class=\"buttons ng-tns-c1783459983-66 ng-star-inserted\"><\/div>\n<\/div>\n<pre class=\"ng-tns-c1783459983-66\"><code class=\"code-container formatted ng-tns-c1783459983-66\" role=\"text\" data-test-id=\"code-content\">write_enable=YES\r\n<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/li>\n<li>\n<p dir=\"ltr\" data-path-to-node=\"14,3,0\"><b data-path-to-node=\"14,3,0\" data-index-in-node=\"0\">Kullan\u0131c\u0131lar\u0131 Kendi Dizinlerine Hapsetme (Chroot):<\/b> Kullan\u0131c\u0131lar\u0131n sunucunun k\u00f6k dizinlerinde (root) gezinmesini engellemek ve sadece kendi ana dizinlerinde i\u015flem yapmas\u0131n\u0131 sa\u011flamak i\u00e7in \u015fu sat\u0131r\u0131n ba\u015f\u0131ndaki yorum i\u015faretini kald\u0131r\u0131n:<\/p>\n<div class=\"code-block ng-tns-c1783459983-67 ng-animate-disabled ng-trigger ng-trigger-codeBlockRevealAnimation\" data-hveid=\"0\" data-ved=\"0CAAQhtANahgKEwjfq7OvmfmXAxUAAAAAHQAAAAAQqAM\">\n<div class=\"formatted-code-block-internal-container ng-tns-c1783459983-67\">\n<div class=\"animated-opacity ng-tns-c1783459983-67\">\n<div class=\"code-block-decoration header-formatted gds-emphasized-body-m ng-tns-c1783459983-67 ng-star-inserted\">\n<p><span class=\"ng-tns-c1783459983-67\">Plaintext<\/span><\/p>\n<div class=\"buttons ng-tns-c1783459983-67 ng-star-inserted\"><\/div>\n<\/div>\n<pre class=\"ng-tns-c1783459983-67\"><code class=\"code-container formatted ng-tns-c1783459983-67\" role=\"text\" data-test-id=\"code-content\">chroot_local_user=YES\r\nallow_writeable_chroot=YES\r\n<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/li>\n<\/ul>\n<p dir=\"ltr\" data-path-to-node=\"15\">De\u011fi\u015fiklikleri kaydetmek i\u00e7in <code data-path-to-node=\"15\" data-index-in-node=\"30\">CTRL + O<\/code> ve <code data-path-to-node=\"15\" data-index-in-node=\"42\">ENTER<\/code>, \u00e7\u0131k\u0131\u015f yapmak i\u00e7in <code data-path-to-node=\"15\" data-index-in-node=\"67\">CTRL + X<\/code> tu\u015flar\u0131n\u0131 kullan\u0131n. Ard\u0131ndan servisi yeniden ba\u015flat\u0131n:<\/p>\n<div class=\"code-block ng-tns-c1783459983-68 ng-animate-disabled ng-trigger ng-trigger-codeBlockRevealAnimation\" data-hveid=\"0\" data-ved=\"0CAAQhtANahgKEwjfq7OvmfmXAxUAAAAAHQAAAAAQqQM\">\n<div class=\"formatted-code-block-internal-container ng-tns-c1783459983-68\">\n<div class=\"animated-opacity ng-tns-c1783459983-68\">\n<div class=\"code-block-decoration header-formatted gds-emphasized-body-m ng-tns-c1783459983-68 ng-star-inserted\">\n<p><span class=\"ng-tns-c1783459983-68\">Bash<\/span><\/p>\n<div class=\"buttons ng-tns-c1783459983-68 ng-star-inserted\"><\/div>\n<\/div>\n<pre class=\"ng-tns-c1783459983-68\"><code class=\"code-container formatted ng-tns-c1783459983-68\" role=\"text\" data-test-id=\"code-content\">sudo systemctl restart vsftpd\r\n<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<h2 dir=\"ltr\" data-path-to-node=\"18\">3. Ad\u0131m: G\u00fcvenlik Duvar\u0131 (Firewall) Ayarlar\u0131<\/h2>\n<p dir=\"ltr\" data-path-to-node=\"19\">FTP protokol\u00fc veri aktar\u0131m\u0131 i\u00e7in varsay\u0131lan olarak 20 ve 21 numaral\u0131 portlar\u0131 kullan\u0131r. Ayr\u0131ca pasif mod (Passive Mode) i\u00e7in ek port aral\u0131\u011f\u0131na ihtiya\u00e7 duyar. G\u00fcvenlik duvar\u0131n\u0131zda gerekli izinleri a\u00e7mal\u0131s\u0131n\u0131z:<\/p>\n<ul class=\"md-has-block-component\" dir=\"ltr\" data-path-to-node=\"20\">\n<li>\n<p dir=\"ltr\" data-path-to-node=\"20,0,0\"><b data-path-to-node=\"20,0,0\" data-index-in-node=\"0\">UFW (Ubuntu \/ Debian) \u0130\u00e7in:<\/b><\/p>\n<div class=\"code-block ng-tns-c1783459983-69 ng-animate-disabled ng-trigger ng-trigger-codeBlockRevealAnimation\" data-hveid=\"0\" data-ved=\"0CAAQhtANahgKEwjfq7OvmfmXAxUAAAAAHQAAAAAQqgM\">\n<div class=\"formatted-code-block-internal-container ng-tns-c1783459983-69\">\n<div class=\"animated-opacity ng-tns-c1783459983-69\">\n<div class=\"code-block-decoration header-formatted gds-emphasized-body-m ng-tns-c1783459983-69 ng-star-inserted\">\n<p><span class=\"ng-tns-c1783459983-69\">Bash<\/span><\/p>\n<div class=\"buttons ng-tns-c1783459983-69 ng-star-inserted\"><\/div>\n<\/div>\n<pre class=\"ng-tns-c1783459983-69\"><code class=\"code-container formatted ng-tns-c1783459983-69\" role=\"text\" data-test-id=\"code-content\">sudo ufw allow 20\/tcp\r\nsudo ufw allow 21\/tcp\r\nsudo ufw allow 40000:50000\/tcp\r\nsudo ufw reload\r\n<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/li>\n<li>\n<p dir=\"ltr\" data-path-to-node=\"20,1,0\"><b data-path-to-node=\"20,1,0\" data-index-in-node=\"0\">Firewalld (AlmaLinux \/ CentOS) \u0130\u00e7in:<\/b><\/p>\n<div class=\"code-block ng-tns-c1783459983-70 ng-animate-disabled ng-trigger ng-trigger-codeBlockRevealAnimation\" data-hveid=\"0\" data-ved=\"0CAAQhtANahgKEwjfq7OvmfmXAxUAAAAAHQAAAAAQqwM\">\n<div class=\"formatted-code-block-internal-container ng-tns-c1783459983-70\">\n<div class=\"animated-opacity ng-tns-c1783459983-70\">\n<div class=\"code-block-decoration header-formatted gds-emphasized-body-m ng-tns-c1783459983-70 ng-star-inserted\">\n<p><span class=\"ng-tns-c1783459983-70\">Bash<\/span><\/p>\n<div class=\"buttons ng-tns-c1783459983-70 ng-star-inserted\"><\/div>\n<\/div>\n<pre class=\"ng-tns-c1783459983-70\"><code class=\"code-container formatted ng-tns-c1783459983-70\" role=\"text\" data-test-id=\"code-content\">sudo firewall-cmd --permanent --add-service=ftp\r\nsudo firewall-cmd --reload\r\n<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/li>\n<\/ul>\n<h2 dir=\"ltr\" data-path-to-node=\"22\">4. Ad\u0131m: FTP Kullan\u0131c\u0131s\u0131 Olu\u015fturma ve Yetkilendirme<\/h2>\n<p dir=\"ltr\" data-path-to-node=\"23\">Sunucunuza yeni bir FTP kullan\u0131c\u0131s\u0131 tan\u0131mlamak ve sadece belirli bir web dizinine eri\u015fmesini sa\u011flamak i\u00e7in \u015fu ad\u0131mlar\u0131 izleyin:<\/p>\n<ol class=\"md-has-block-component\" dir=\"ltr\" start=\"1\" data-path-to-node=\"24\">\n<li>\n<p dir=\"ltr\" data-path-to-node=\"24,0,0\">Yeni bir kullan\u0131c\u0131 olu\u015fturun (\u00d6rne\u011fin: <code data-path-to-node=\"24,0,0\" data-index-in-node=\"39\">ftpuser<\/code>):<\/p>\n<div class=\"code-block ng-tns-c1783459983-71 ng-animate-disabled ng-trigger ng-trigger-codeBlockRevealAnimation\" data-hveid=\"0\" data-ved=\"0CAAQhtANahgKEwjfq7OvmfmXAxUAAAAAHQAAAAAQrAM\">\n<div class=\"formatted-code-block-internal-container ng-tns-c1783459983-71\">\n<div class=\"animated-opacity ng-tns-c1783459983-71\">\n<div class=\"code-block-decoration header-formatted gds-emphasized-body-m ng-tns-c1783459983-71 ng-star-inserted\">\n<p><span class=\"ng-tns-c1783459983-71\">Bash<\/span><\/p>\n<div class=\"buttons ng-tns-c1783459983-71 ng-star-inserted\"><\/div>\n<\/div>\n<pre class=\"ng-tns-c1783459983-71\"><code class=\"code-container formatted ng-tns-c1783459983-71\" role=\"text\" data-test-id=\"code-content\">sudo adduser ftpuser\r\n<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/li>\n<li>\n<p dir=\"ltr\" data-path-to-node=\"24,1,0\">Kullan\u0131c\u0131 i\u00e7in g\u00fc\u00e7l\u00fc bir \u015fifre belirleyin.<\/p>\n<\/li>\n<li>\n<p dir=\"ltr\" data-path-to-node=\"24,2,0\">Kullan\u0131c\u0131n\u0131n eri\u015fece\u011fi dizini ayarlay\u0131n ve sahiplik atay\u0131n:<\/p>\n<div class=\"code-block ng-tns-c1783459983-72 ng-animate-disabled ng-trigger ng-trigger-codeBlockRevealAnimation\" data-hveid=\"0\" data-ved=\"0CAAQhtANahgKEwjfq7OvmfmXAxUAAAAAHQAAAAAQrQM\">\n<div class=\"formatted-code-block-internal-container ng-tns-c1783459983-72\">\n<div class=\"animated-opacity ng-tns-c1783459983-72\">\n<div class=\"code-block-decoration header-formatted gds-emphasized-body-m ng-tns-c1783459983-72 ng-star-inserted\">\n<p><span class=\"ng-tns-c1783459983-72\">Bash<\/span><\/p>\n<div class=\"buttons ng-tns-c1783459983-72 ng-star-inserted\"><\/div>\n<\/div>\n<pre class=\"ng-tns-c1783459983-72\"><code class=\"code-container formatted ng-tns-c1783459983-72\" role=\"text\" data-test-id=\"code-content\">sudo chown nobody:nogroup \/home\/ftpuser\r\nsudo chmod a-w \/home\/ftpuser\r\nsudo mkdir \/home\/ftpuser\/www\r\nsudo chown ftpuser:ftpuser \/home\/ftpuser\/www\r\n<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/li>\n<\/ol>\n<figure id=\"attachment_10854\" aria-describedby=\"caption-attachment-10854\" style=\"width: 1024px\" class=\"wp-caption alignnone\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-10854\" src=\"https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/20-1-1024x513.png\" alt=\"FTP Sunucusu Kurma\" width=\"1024\" height=\"513\" srcset=\"https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/20-1-1024x513.png 1024w, https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/20-1-300x150.png 300w, https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/20-1-768x385.png 768w, https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/20-1-1536x770.png 1536w, https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/20-1-400x201.png 400w, https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/20-1-800x401.png 800w, https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/20-1-832x417.png 832w, https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/20-1-1248x626.png 1248w, https:\/\/verisunucu.net\/blog\/wp-content\/uploads\/2026\/11\/20-1.png 1600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption id=\"caption-attachment-10854\" class=\"wp-caption-text\">FTP Sunucusu Kurma<\/figcaption><\/figure>\n<h2 dir=\"ltr\" data-path-to-node=\"26\">S\u0131k\u00e7a Sorulan Sorular<\/h2>\n<p dir=\"ltr\" data-path-to-node=\"27\"><b data-path-to-node=\"27\" data-index-in-node=\"0\">FTP yerine neden SFTP tercih edilmelidir?<\/b> Klasik FTP protokol\u00fc verileri (\u015fifreler dahil) \u015fifrelemeden d\u00fcz metin olarak g\u00f6nderdi\u011fi i\u00e7in a\u011f \u00fczerinde dinlenebilir. SSH tabanl\u0131 <b data-path-to-node=\"27\" data-index-in-node=\"173\">SFTP<\/b> ise t\u00fcm trafi\u011fi \u015fifreledi\u011fi i\u00e7in \u00e7ok daha g\u00fcvenlidir ve ek bir FTP servisi kurma gereksinimi duymaz.<\/p>\n<p dir=\"ltr\" data-path-to-node=\"28\"><b data-path-to-node=\"28\" data-index-in-node=\"0\">FileZilla ile ba\u011flan\u0131rken &#8220;500 OOPS: chroot&#8221; hatas\u0131 al\u0131yorum, neden?<\/b> Modern vsftpd s\u00fcr\u00fcmlerinde kullan\u0131c\u0131lar\u0131n kendi ev dizinlerinde yazma iznine sahip olmas\u0131 g\u00fcvenlik a\u00e7\u0131s\u0131ndan k\u0131s\u0131tlanm\u0131\u015ft\u0131r. <code data-path-to-node=\"28\" data-index-in-node=\"194\">vsftpd.conf<\/code> dosyas\u0131na <code data-path-to-node=\"28\" data-index-in-node=\"216\">allow_writeable_chroot=YES<\/code> sat\u0131r\u0131n\u0131 ekleyerek bu sorunu \u00e7\u00f6zebilirsiniz.<\/p>\n<p dir=\"ltr\" data-path-to-node=\"29\"><b data-path-to-node=\"29\" data-index-in-node=\"0\">Pasif mod (Passive Mode) neden gereklidir?<\/b> \u0130stemci taraf\u0131nda aktif bir g\u00fcvenlik duvar\u0131 veya NAT bulundu\u011funda veri aktar\u0131m\u0131n\u0131n sa\u011fl\u0131kl\u0131 ger\u00e7ekle\u015febilmesi i\u00e7in pasif mod port aral\u0131\u011f\u0131n\u0131n sunucuda ve Firewall&#8217;da a\u00e7\u0131k olmas\u0131 \u015fartt\u0131r.<\/p>\n<h2 dir=\"ltr\" data-path-to-node=\"31\">Y\u00fcksek Performansl\u0131 ve G\u00fcvenli Sunucu Altyap\u0131s\u0131 \u0130\u00e7in: Verisunucu.net<\/h2>\n<p dir=\"ltr\" data-path-to-node=\"32\">Projelerinizde dosya y\u00f6netimi, yedekleme ve veri aktar\u0131m i\u015flemlerini kesintisiz ger\u00e7ekle\u015ftirebilmek i\u00e7in tam yetkili ve g\u00fc\u00e7l\u00fc bir altyap\u0131ya ihtiyac\u0131n\u0131z vard\u0131r. %100 NVMe SSD disk mimarisi, y\u00fcksek h\u0131zl\u0131 network hatlar\u0131 ve tam root eri\u015fim \u00f6zg\u00fcrl\u00fc\u011f\u00fc sunan <b class=\"\" data-path-to-node=\"32\" data-index-in-node=\"253\"><a class=\"ng-star-inserted\" href=\"https:\/\/verisunucu.net\/vds-satin-al\" target=\"_blank\" rel=\"noopener\" data-hveid=\"0\" data-ved=\"0CAAQ_4QMahgKEwjfq7OvmfmXAxUAAAAAHQAAAAAQwwM\">Vds sat\u0131n al<\/a><\/b> paketlerimizle FTP sunucunuzu dakikalar i\u00e7inde kurabilir, performans s\u0131n\u0131rlar\u0131n\u0131 ortadan kald\u0131rabilirsiniz.<\/p>\n<p dir=\"ltr\" data-path-to-node=\"33\">Daha esnek, \u00f6l\u00e7eklenebilir ve b\u00fct\u00e7e dostu alternatifler ar\u0131yorsan\u0131z, <b class=\"\" data-path-to-node=\"33\" data-index-in-node=\"69\"><a class=\"ng-star-inserted\" href=\"https:\/\/verisunucu.net\/vps-server\" target=\"_blank\" rel=\"noopener\" data-hveid=\"0\" data-ved=\"0CAAQ_4QMahgKEwjfq7OvmfmXAxUAAAAAHQAAAAAQxAM\">Vps sat\u0131n al<\/a><\/b> \u00e7\u00f6z\u00fcmlerimizi inceleyebilir; Verisunucu.net kalitesiyle kesintisiz bir sunucu deneyimi ya\u015famaya hemen ba\u015flayabilirsiniz!<\/p>\n","protected":false},"excerpt":{"rendered":"Bir web sunucusu (VPS veya VDS) y\u00f6netirken, site dosyalar\u0131n\u0131 y\u00f6netmek, yedekleri aktarmak veya \u00e7oklu kullan\u0131c\u0131lar\u0131n sunucuya g\u00fcvenli bir&hellip;","protected":false},"author":4,"featured_media":10849,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"csco_singular_sidebar":"","csco_page_header_type":"","csco_page_load_nextpost":"","footnotes":""},"categories":[16,19],"tags":[],"class_list":["post-10846","post","type-post","status-publish","format-standard","has-post-thumbnail","category-ipuclari","category-sunucu","cs-entry"],"_links":{"self":[{"href":"https:\/\/verisunucu.net\/blog\/wp-json\/wp\/v2\/posts\/10846","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/verisunucu.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/verisunucu.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/verisunucu.net\/blog\/wp-json\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"https:\/\/verisunucu.net\/blog\/wp-json\/wp\/v2\/comments?post=10846"}],"version-history":[{"count":6,"href":"https:\/\/verisunucu.net\/blog\/wp-json\/wp\/v2\/posts\/10846\/revisions"}],"predecessor-version":[{"id":10855,"href":"https:\/\/verisunucu.net\/blog\/wp-json\/wp\/v2\/posts\/10846\/revisions\/10855"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/verisunucu.net\/blog\/wp-json\/wp\/v2\/media\/10849"}],"wp:attachment":[{"href":"https:\/\/verisunucu.net\/blog\/wp-json\/wp\/v2\/media?parent=10846"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/verisunucu.net\/blog\/wp-json\/wp\/v2\/categories?post=10846"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/verisunucu.net\/blog\/wp-json\/wp\/v2\/tags?post=10846"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}