Aprilsoft Ana Sayfasına Git
Proxmox VE Sanallaştırma

Proxmox üzerinde VLAN ve Network Yapılandırması Nasıl Yapılır?

Fiziksel sunucu kiralama sonrası Proxmox VE üzerinde cluster ve sanal makineler (VM) için VLAN tagging/PVID ayarları.


Proxmox VE (Virtual Environment) üzerinde ağ trafiğini izole etmek, Türkiye lokasyon sunucu barındırma hizmetlerinde hem güvenlik hem de network performans optimizasyonu için kritik bir adımdır. Open vSwitch veya Linux Bridge kullanarak VLAN yapılandırmasını kolayca tamamlayabilirsiniz.

Linux Bridge ile VLAN Aktif Etme:
  1. Proxmox web arayüzüne giriş yapın. Sol menüden düğümünüzü (node) seçip Network sekmesine gelin.
  2. Varsayılan ana köprü olan vmbr0 üzerine çift tıklayın.
  3. Açılan pencerede VLAN Aware seçeneğini işaretleyin. This işlem, köprünün VLAN etiketlerini (tag) geçirmesine izin verir.
  4. Değişiklikleri uyguladıktan sonra (Apply Configuration), oluşturduğunuz Sanal Makinenin (VM) donanım ayarlarına giderek Network Device kısmından ilgili VLAN Tag numarasını (Örn: 100) girerek trafiği izole edin.
💡 SEO & Performans Notu: IP bloklarınızın birbirine karışmaması ve broadcast trafiğinin azaltılması, sunucunuzdaki web hosting ve VDS performansını doğrudan artırır.
Proxmox VE Sanallaştırma

Proxmox Cluster Kurulumu ve High Availability (HA) Ayarları

Birden fazla Dell PowerEdge fiziksel sunucuyu tek bir Proxmox Cluster altında birleştirme rehberi.


Yüksek erişilebilirlik (HA) sağlamak ve kesintisiz VDS kiralama hizmeti sunmak için birden fazla fiziksel sunucuyu Proxmox Cluster mimarisinde birleştirebilirsiniz.

Cluster Oluşturma Adımları:

1. Ana sunucunun terminaline bağlanın and cluster yapısını başlatın:

pvecm create Aprilsoft-Cluster

2. Web arayüzünde Datacenter -> Cluster bölümüne giderek 'Join Information' butonuna tıklayın ve bilgileri kopyalayın.

3. İkinci (Node 2) sunucunun arayüzüne girip aynı menüden 'Join Cluster' diyerek kopyaladığınız bilgileri yapıştırın. Sistemler artık senkronize çalışacaktır.

Proxmox VE Sanallaştırma

Windows VDS 'Çok Fazla Oturum Açma Denemesi' Hatası ve Proxmox Konsol Çözümü

RDP portuna yapılan brute-force saldırıları sonucu kilitlenen Windows sanal makinelerin Proxmox NoVNC üzerinden kurtarılması.


Windows Server altyapılı sanal sunucularda (VDS) siber saldırganların veya otomatik botnet ağlarının RDP (Uzak Masaüstü) portuna yaptığı kaba kuvvet (Brute-Force) şifre denemeleri, işletim sisteminin savunma mekanizmasını tetikler. Bu durum sonucunda meşru kullanıcılar bile sisteme bağlanmak istediğinde 'Çok fazla oturum açma veya parola değiştirme denemesi yapıldığından güvenlik önlemi olarak kullanıcı hesabı kilitlenmiş' uyarısıyla karşılaşır.

Proxmox NoVNC Konsolu ile Sunucuya Müdahale:

RDP bağlantısı tamamen bloke olduğu için bu duruma dışarıdan müdahale edilemez. Sunucu yöneticisi veya müşteri olarak bu engeli kaldırmak için Proxmox panelini kullanmalıyız:

  1. Proxmox VE web arayüzünü açın ve sol menüden kilitlenen Windows Sanal Makinesini (VM) seçin.
  2. Üst menüdeki Console (NoVNC) butonuna tıklayarak sunucunun masaüstü ekranına doğrudan erişim sağlayın.
  3. Eğer ekran kilitliyse, Proxmox konsol panelinin sol tarafındaki gizli menüyü genişleterek Ctrl-Alt-Delete sinyalini sunucuya gönderin ve yerel şifrenizle oturum açın.
Yöntem 1: Komut Satırı (CMD) ile Hızlı Çözüm (En Pratik Yol)

Sunucu içerisinde Administrator yetkileriyle bir Komut İstemi (CMD) penceresi açın ve hesap kilitlenme eşiğini tamamen sıfırlayarak politikayı esnetmek için şu komutu çalıştırın:

net accounts /lockoutthreshold:0

Bu komut, hatalı giriş yapılsa dahi hesabın bir daha asla otomatik olarak kilitlenmemesini sağlar.

Yöntem 2: Gelişmiş Arayüz (Local Security Policy) ile Düzenleme

Eğer işlemi grafiksel arayüzle yapmak isterseniz şu adımları takip edin:

  • Windows + R tuş kombinasyonuyla Çalıştır penceresini açın, secpol.msc yazıp Enter'a basın.
  • Açılan Yerel Güvenlik Politikası ekranında sırasıyla: Security Settings (Güvenlik Ayarları) -> Account Policies (Hesap İlkeleri) -> Account Lockout Policy (Hesap Kilitleme Politikası) yolunu izleyin.
  • Sağ tarafta bulunan Account Lockout Threshold (Hesap Kilitleme Eşik Değeri) kuralına çift tıklayın ve buradaki geçersiz oturum açma sınır değerini 0 olarak güncelleyip kaydedin.
🔒 Önemli Altyapı Güvenlik Notu: Hesap kilitleme eşiğini '0' (Sınırsız) yapmak müşterinizin sunucuya erişmesini sağlar ancak sunucuyu brute-force saldırılarına karşı açık hedef haline getirir. Kalıcı güvenlik için kurumsal hosting altyapılarında Windows RDP portunu varsayılan 3389 değerinden farklı bir porta taşımak veya sunucu önüne WAF/Firewall konumlandırmak hayati önem taşır.
VMware ESXi Yönetimi

ESXi Thin Provisioning ve Thick Provisioning Farkı Nedir?

VMware ESXi üzerinde sanal disk oluştururken performans ve depolama verimliliği analizi.


VMware ESXi altyapısında sanal sunucu (VDS) oluştururken disk yapılandırma seçimi, disk yazma hızını ve veri depolama alanınızın verimli kullanılmasını belirler.

  • Thin Provisioning (Esnek Disk): Sadece sanal makinenin içerisindeki veri miktarı kadar yer kaplar. Depolama alanından tasarruf ettirir ancak yoğun yazma (I/O) işlemlerinde çok küçük bir performans kaybı yaşatabilir.
  • Thick Provisioning (Sabit Disk): Disk alanını fiziksel olarak ilk andan itibaren tamamen rezerve edin. Enterprise SSD veya NVMe altyapılarında en yüksek I/O performansını (Özellikle yoğun MariaDB/MySQL veritabanlarında) bu seçenek sunar.

Aprilsoft olarak yüksek trafikli e-ticaret siteleri ve veritabanı sunucuları için daima Thick Provision Lazy/Eager Zeroed yapısını önermekteyiz.

VMware ESXi Yönetimi

ESXi Sunucularda Yeni Datastore (Depolama Alanı) Ekleme

Fiziksel sunucuya takılan yeni Samsung Enterprise SSD diskleri ESXi sistemine tanımlama.


Sunucunuza yeni bir SSD veya NVMe disk dahil ettiğinizde, bunu VM'lere dağıtabilmek için datastore olarak eklemelisiniz.

Uygulama Adımları:
  1. ESXi Web UI paneline bağlanın, sol menüden Storage sekmenize tıklayın.
  2. New Datastore seçeneğine tıklayın. 'VMFS datastore' seçimini yaparak ilerleyin.
  3. Listeden yeni taktığınız boş diski seçin, bir isim verin (Örn: SSD-Storage-2) ve disk formatı olarak en güncel sürüm olan VMFS 6 mimarisini seçerek işlemi onaylayın.
Virtualizor Kontrol Paneli

Virtualizor KVM Bridge (viifbr0) Ağ Yapılandırma Rehberi

KVM sanallaştırma altyapısında sanal makinelerin IP alabilmesi için köprü (Bridge) ağ mimarisini kurma.


Virtualizor panelinde KVM tabanlı sanal sunucu (VDS) barındırırken, sanal makinelerin dış dünya ile köprü kurarak IP adreslerini sorunsuz kullanabilmesi için Linux işletim sistemi üzerinde bir bridge (köprü) interface yapılandırılması gerekir. Virtualizor varsayılan olarak köprü adını viifbr0 olarak kabul eder.

Netplan ile KVM Bridge Yapılandırması (Ubuntu / Debian):

Modern Ubuntu sürümlerinde ağ ayarları netplan ile yönetilir. Terminal üzerinden /etc/netplan/ altındaki YAML dosyanızı (Örn: 01-netcfg.yaml) açın ve yapıyı aşağıdaki gibi düzenleyin:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp3s0: # Fiziksel ağ kartınız
      dhcp4: no
      dhcp6: no

  bridges:
    viifbr0: # Virtualizor KVM Köprüsü
      interfaces: [enp3s0]
      dhcp4: no
      addresses:
        - 192.168.1.50/24 # Ana Sunucu IP Adresiniz
      routes:
        - to: default
          via: 192.168.1.1 # Ağ Geçidiniz (Gateway)
      nameservers:
        addresses: [8.8.8.8, 1.1.1.1]
      parameters:
        stp: no
        forward-delay: 0
Klasik Network Scripts ile Yapılandırma (AlmaLinux / Rocky Linux / CentOS):

/etc/sysconfig/network-scripts/ifcfg-viifbr0 dosyasını oluşturun:

DEVICE=viifbr0
TYPE=Bridge
BOOTPROTO=static
IPADDR=192.168.1.50
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
ONBOOT=yes
DELAY=0

Ardından fiziksel kart dosyanızı açıp içerisine BRIDGE=viifbr0 satırını ekleyerek IP satırlarını silin ve network servisini yeniden başlatın.

💡 Resmi Doküman Notu: Ağ ayarlarını uyguladıktan sonra Virtualizor Admin Panel -> Slave Settings alanından köprü adının viifbr0 olarak tanımlandığını doğrulamayı unutmayın.
Virtualizor Kontrol Paneli

Virtualizor Otomatik Backup (Yedekleme) Planı Oluşturma

Müşteri VDS sunucularını FTP veya SSH üzerinden harici bir sunucuya otomatik yedekleme adımları.


Otomasyonlu VDS satışı yapan firmaların en kritik süreci veri güvenliğidir. KVM tabanlı Virtualizor panelinizde, müşterilerinizin sunucularını haftalık veya aylık periyotlarla otomatik olarak harici bir storage sunucusuna yedekleyebilirsiniz.

Yedekleme Planı Hazırlama:
  1. Virtualizor Admin Panel -> Plans -> Add Backup Plan menüsüne gidin.
  2. Yedekleme türünü (SSH, FTP veya Local) seçin. Güvenlik için uzak bir sunucuyu SSH (SFTP) ile bağlamanız önerilir.
  3. Cron ayarlarını belirleyin (Örn: Her Pazar saat 03:00'te başlayacak şekilde).
  4. Yedeğe dahil edilecek VPS gruplarını seçerek planı kaydedin. Sistem arka planda sunucuları durdurmadan (Live Backup) yedekleyecektir.
Cloudflare Yönetimi

Cloudflare Domain Yönlendirme ve Web Sitesini Proxy Arkasına Alma

Web sitenizi Cloudflare CDN ve siber güvenlik duvarı (WAF) arkasına alarak IP adresinizi gizleme adımları.


Web projelerinizi siber saldırılardan korumak, kaynak sunucunun (orijin IP) açığa çıkmasını engellemek ve dünya genelinde hızlı açılmasını sağlamak için domain altyapınızı Cloudflare arkasına alabilirsiniz.

Adım 1: Alan Adını Cloudflare'e Ekleme
  1. Cloudflare Dashboard hesabınıza giriş yapın ve Add a Site butonuna tıklayın.
  2. Alan adınızı yazarak ilerleyin. Ücretsiz (Free) planı seçerek devam edin.
  3. Cloudflare, mevcut DNS kayıtlarınızı otomatik olarak tarayacaktır. Bu aşamada kaynak sunucunuzun IP adresine işaret eden A kayıtlarının yanındaki **bulut (Proxy)** simgesinin turuncu (Proxied) olduğundan emin olun.
Adım 2: Nameserver (NS) Değişikliği

Tarama tamamlandığında Cloudflare size iki adet özel Nameserver adresi verecektir. Domaini satın aldığınız firmanın panelindeki mevcut NS adreslerini silip yerine Cloudflare'in verdiği bu yeni adresleri kaydedin.

⚠️ Önemli Güvenlik Uyarısı: Domain yönlendirmesi tamamlandıktan sonra, sitenizin gerçek sunucu IP adresinin sızmaması için mail (MX) veya FTP gibi kayıtları mümkünse Cloudflare üzerinde 'DNS Only' (Gri Bulut) modunda tutun.
Cloudflare Yönetimi

Cloudflare Flexible, Full ve Full (Strict) SSL Modları Nedir, Hangisi Seçilmeli?

Cloudflare kullanan sitelerde yaşanan 'Too Many Redirects' (Çok Sayıda Yönlendirme) hatasının çözümü ve ideal SSL modları.


Cloudflare paneline geçiş yaptıktan sonra SSL tabanlı bağlantı hataları veya sonsuz yönlendirme döngüleri (ERR_TOO_MANY_REDIRECTS) yaşıyorsanız, SSL/TLS şifreleme modunuz hatalı yapılandırılmış demektir.

SSL Şifreleme Modlarının Farkları:
  • Flexible: Ziyaretçi ile Cloudflare arasındaki trafik şifrelidir ancak Cloudflare ile kaynak sunucunuz arasındaki trafik şifresizdir (HTTP).
  • Full: Hem ziyaretçi hem de sunucu arasındaki trafik şifrelidir. Sunucunuzda self-signed bile olsa bir SSL sertifikası bulunmalıdır.
  • Full (Strict): En güvenli moddır. Kaynak sunucunuzda mutlaka Let's Encrypt veya geçerli bir SSL sertifikası bulunmalıdır.

Çözüm: Eğer sunucunuzda halihazırda SSL kuruluysa Cloudflare panelinden SSL/TLS -> Overview menüsüne giderek modu Full (Strict) yapın.

DirectAdmin Yönetimi

DirectAdmin Üzerinde Ücretsiz Let's Encrypt SSL Sertifikası Nasıl Kurulur?

DirectAdmin kontrol panelinde alan adları ve alt alan adları (subdomain) için otomatik SSL aktifleştirme adımları.


DirectAdmin üzerinde barındırdığınız web sitelerine güvenli bağlantı (HTTPS) sağlamak amacıyla ücretsiz Let's Encrypt SSL sertifikasını birkaç adımda aktif hale getirebilirsiniz.

Kurulum Adımları:
  1. DirectAdmin Kullanıcı Paneline (User Level) giriş yapın.
  2. Account Manager -> SSL Certificates menüsüne tıklayın.
  3. Üst sekmelerden Let's Encrypt seçeneğini işaretleyin.
  4. SSL kurulmasını istediğiniz alan adını ve alt alan adlarını seçip Save butonuna tıklayın.
DirectAdmin Yönetimi

DirectAdmin Çoklu PHP Sürümü (PHP Selector) Ayarı

Farklı PHP sürümleri gerektiren scriptler için DirectAdmin panelinde domain bazlı PHP versiyonu değiştirme.


Gelişmiş web hosting altyapılarında her web sitesinin PHP sürüm ihtiyacı farklı olabilir. DirectAdmin, CustomBuild altyapısı sayesinde kullanıcılara domain bazlı PHP seçme özgürlüğü sunar.

Domain Bazlı PHP Sürümü Nasıl Değiştirilir?
  1. DirectAdmin paneline giriş yaptıktan sonra düzenlemek istediğiniz alan adını seçin.
  2. Account Manager -> Domain Setup seçeneğine gidin.
  3. Açılan listede ilgili domain adına tıklayıp PHP Version Selector butonuna basın. Sürümü seçip kaydedin.
Plesk Panel Yönetimi

Plesk Panel ModSecurity (WAF) Yapılandırması ve Kural Esnetme

WordPress veya özel yazılımlarda Plesk ModSecurity kaynaklı 403 Forbidden hatalarının çözümü.


Plesk Panel ile entegre çalışan ModSecurity (Web Application Firewall), uygulama katmanında gelen zararlı istekleri filtreler. Ancak bazen temiz sorguları da engelleyerek sitenizde 403 Forbidden hatalarına yol açabilir.

ModSecurity Hatalarını Tespit Etme ve Kural Kapatma:
  1. Plesk paneline giriş yapın ve ilgili domainin yönetim alanına gelin.
  2. Websites & Domains -> Web Application Firewall (ModSecurity) ikonuna tıklayın.
  3. Spesifik bir kuralı esnetmek için sol menüdeki Logs (Günlükler) sekmesine gidin. Engellenen isteği bulun ve yanındaki Switch off rule ID linkine tıklayarak kuralı devre dışı bırakın.
Plesk Panel Yönetimi

Plesk Panel Üzerinde Zamanlanmış Görevler (Cron Job) Nasıl Eklenir?

E-ticaret veya otomasyon siteleri için Plesk arayüzünden PHP tabanlı cron görevlerini zamanlama kılavuzu.


Sistemlerin arka planda düzenli e-posta gönderimi, veritabanı senkronizasyonu veya yedekleme yapabilmesi için zamanlanmış görevlere (Cron Jobs) ihtiyaç duyulur.

Plesk Üzerinde Cron Görevi Tanımlama:
  1. Plesk arayüzünde sağ taraftaki genel araçlar menüsünden Scheduled Tasks (Zamanlanmış Görevler) seçeneğine tıklayın.
  2. Add Task (Görev Ekle) butonuna basın ve Görev Tipi olarak Run a PHP script seçeneğini seçin.
  3. Scriptin dizin yolunu ve PHP sürümünü belirleyerek kaydedin.
WAF & Siber Güvenlik

SafeLine WAF Kurulumu ve Ters Proxy (Reverse Proxy) Yapılandırması

Sunucu önünde durarak gelen istekleri süzen SafeLine Web Application Firewall kurulum adımları.


Web uygulamalarınıza gelen SQL Enjeksiyonu, XSS ve DDoS tabanlı katman 7 siber saldırılarını engellemek amacıyla SafeLine WAF mimarisini sunucularınızın önüne konumlandırabilirsiniz.

Docker Üzerinden SafeLine WAF Kurulumu:
bash -c "$(curl -fsSL https://waf-ce.chaitin.cn/release/latest/setup.sh)"

Kurulum tamamlandıktan sonra web arayüzüne https://sunucu-ip-adresiniz:9443 portu üzerinden erişebilirsiniz.

WAF & Siber Güvenlik

WAF ile Rate Limiting (İstek Sınırlama) ve Brute Force Koruması

DDoS saldırılarını ve wp-login / admin paneli denemelerini engellemek için istek limitleri atama.


Siber saldırganların veya bot ağlarının sunucu kaynaklarını tüketmesini engellemenin en etkili yolu Rate Limiting uygulamaktır. WAF katmanında yapılan istek sınırlaması, doğrudan web sunucusuna yük binmesini engeller.

WAF & Siber Güvenlik

HTTP Flood ve CC (Challenge Collapsar) Saldırıları Nasıl Engellenir?

Sunucunun işlemci ve RAM kaynaklarını kilitleyen yoğun HTTP GET/POST isteklerine karşı WAF defans stratejileri.


CC saldırıları, botnetler vasıtasıyla sitenin veritabanını yoran arama veya ağır sorgu sayfalarına binlerce sahte istek gönderilerek yapılır. WAF arayüzünden tarayıcı doğrulamasını (JavaScript Challenge) açarak botları bloke edebilirsiniz.

WAF & Siber Güvenlik

WAF Günlükleri (Log) Üzerinden Siber Tehdit ve Anomali Analizi

Engellenen SQL Injection, XSS ve tarama faaliyetlerinin log kayıtlarını okuma ve proaktif önlemler.


WAF panellerindeki Saldırı Günlükleri (Attack Logs) alanı, sisteminizdeki olası yazılımsal açıkları keşfetmenizi sağlar. Düzenli olarak SQLi ve XSS belirteçleri incelenmelidir.

Linux & Sunucu Yönetimi

Linux Çekirdek (Kernel) Güncellemesi ve cPanel Zafiyetlerine Karşı Sunucu Sıkılaştırma

Local Privilege Escalation (Yerel Yetki Yükseltme) açıklarından korunmak için Linux kernel güncelleme adımları.


Siber güvenlik dünyasında otomasyon panellerinde (cPanel, DirectAdmin vb.) zaman zaman kritik zero-day açıkları meydana gelebilmektedir. Saldırganların bu panellerdeki bir açıktan faydalanarak sunucuya sızması durumunda, sunucunun tamamen ele geçirilmesini (root yetkisine ulaşılmasını) engellemek adına Linux Kernel (Çekirdek) sürümünün daima güncel ve yamalanmış olması gerekir.

1. Mevcut Çekirdek Sürümünü Kontrol Etme:

Terminal üzerinden sunucunuzda aktif olan aktif çekirdek versiyonunu görmek için aşağıdaki komutu çalıştırın:

uname -r
2. Ubuntu / Debian Sistemlerde Kernel Güncelleme:

Standart paket depoları üzerinden kararlı en son çekirdek sürümüne yükseltmek ve sistemi yeniden başlatmak için:

sudo apt update && sudo apt dist-upgrade -y
# Güncelleme sonrası sunucuyu reboot edin
sudo reboot
3. AlmaLinux / Rocky Linux / RHEL Sistemlerde Kernel Güncelleme:

Enterprise Linux dağıtımlarında en güncel kernel mimarisine geçiş yapmak için ELRepo profesyonel deposunu kullanabilirsiniz:

# ELRepo Deposunu Ekleme
sudo dnf install https://www.elrepo.org/elrepo-release-9.el9.elrepo.noarch.rpm -y
# En son kararlı ana hat (Kernel-ML) sürümünü yükleme
sudo dnf --enablerepo=elrepo-kernel install kernel-ml -y
# Sistemi reboot ederek yeni kernel ile başlamasını sağlayın
sudo reboot
⚠️ Kritik Güvenlik Notu: Panel üreticileri güvenlik yaması yayınlasa bile, işletim sistemi çekirdeğiniz eski ise sunucunuz paylaşımlı (reseller/hosting) ortamlarda 'Symlink' ve 'Local Root' saldırılarına karşı açık hedef kalmaya devam eder. Kernel güncellemelerini rutin bir operasyon haline getirin.
Linux & Sunucu Yönetimi

Linux Sunucularda Yüksek CPU Kullanımı Nasıl Tespit Edilir?

Aniden yükselen CPU kullanımı ve yüksek load average değerlerini terminal araçlarıyla analiz etme.


Linux işletim sistemlerinde aniden yükselen CPU kullanımı, web sitelerinin yavaşlamasının ve performans düşüşünün en yaygın nedenlerinden biridir.

Anlık İzleme: top ve htop Komutları
htop
Linux & Sunucu Yönetimi

Linux Sunucularda SSH Portu Nasıl Değiştirilir?

Altyapınızda güvenliği artırmak için varsayılan SSH portunu değiştirin.


Linux işletim sistemlerinde varsayılan olarak SSH bağlantı portu 22 olarak tanımlanmıştır. Güvenliği üst seviyeye çıkarmak için bu portu değiştirmek kritik öneme sahiptir.

nano /etc/ssh/sshd_config
Linux & Sunucu Yönetimi

LVM Disk Genişletme Nasıl Yapılır?

Yüksek kapasiteli VDS ve fiziksel sunucularda veri kaybı yaşamadan LVM ile disk büyütme.


Satın aldığınız VDS veya bulut sunucu paketinizde disk artırımı yaptıktan sonra, bu alanı işletim sistemine tanımlamanız gerekir.

pvresize /dev/sda3
lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv
resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
Linux & Sunucu Yönetimi

Sunucu İşletim Sistemi ve Paket Güncelleştirmeleri Nasıl Yapılır?

Linux (Ubuntu, Debian, AlmaLinux) ve Windows Server sistemlerinde en son güvenlik yamalarını uygulama rehberi.


Kurumsal projelerin barındığı altyapılarda sistem güncellemelerini tamamlamak, zero-day açıklarını kapatır ve donanım performansını optimize eder.

Windows Server Yönetimi

Windows Server Sunucularda IP Adresi Nasıl Değiştirilir?

Windows Server 2016, 2019 ve 2022 işletim sistemlerinde statik IPv4 adresi tanımlama adımları.


Ağ bağlantıları penceresinden statik IP tanımlaması gerçekleştirebilirsiniz.

Windows Server Yönetimi

Windows Server Uzak Masaüstü (RDP) Portu Değiştirme

Windows Server 2019/2022 işletim sistemlerinde varsayılan 3389 RDP portunu değiştirerek güvenliği sağlama.


Kayıt Defteri (Regedit) üzerinden RDP portunu özelleştirebilirsiniz.

Kurumsal E-Posta Yönetimi

Outlook ve Mobil Cihazlar İçin Kurumsal E-Posta Kurulumu

Mail sunucuları üzerinden oluşturulan hesapların IMAP, POP3 ve SMTP konfigürasyon kılavuzu.


Şirket uzantılı e-posta adreslerinizin Outlook veya mobil cihazlarda sorunsuz çalışabilmesi için SSL destekli bağlantı portları kullanılmalıdır.

Standart E-Posta Kurulum Değerleri:
  • Gelen Gönderilen Sunucu: mail.alanadiniz.com
  • IMAP Portu (SSL): 993
  • POP3 Portu (SSL): 995
  • SMTP Portu (SSL/TLS): 465 (veya Tls için 587)
💡 Not: Kurulum esnasında 'Giden sunucum (SMTP) için kimlik doğrulaması gerekiyor' seçeneğinin işaretlenmesi zorunludur.
Kurumsal E-Posta Yönetimi

Kurumsal E-Postaların Spam Klasörüne Düşmesini Engelleme Rehberi

Gönderilen maillerin Gmail, Outlook ve Hotmail gibi servislerde spam/önemsiz klasörüne düşme nedenleri ve çözümleri.


Gönderdiğiniz kurumsal e-postaların alıcının gelen kutusu (Inbox) yerine spam klasörüne düşmesi, ticari itibarınızı ve iletişiminizi olumsuz etkiler. E-posta teslim edilebilirliğini (deliverability) artırmak için sunucu ve IP katmanında optimize edilmesi gereken kurallar mevcuttur.

Spam Engelleme ve İtibar Yönetimi Adımları:
  1. Dedicated (Özel) IP Kullanımı: Paylaşımlı (Shared) hosting sunucularında, aynı IP'yi kullanan başka bir sitenin spam yapması sizin maillerinizi de etkiler. Kurumsal e-posta altyapılarında daima firmaya özel Dedicated IP tanımlanmalıdır.
  2. Global Kara Liste (Blacklist) Kontrolü: Sunucu IP adresinin Spamhaus, Barracuda, SORBS veya SpamCop gibi listelere girip girmediği mxtoolbox gibi araçlarla rutin olarak kontrol edilmelidir.
  3. İçerik ve İmza Optimizasyonu: E-posta başlıklarında tamamen BÜYÜK HARF kullanmaktan, 'KAMPANYA, FIRSAT, BEDAVA' gibi agresif kelimelerden kaçının. E-posta imzanızda kırık link veya aşırı büyük boyutlu görseller bulundurmamaya özen gösterin.
⚠️ Önemli Hatırlatma: Yeni satın alınan veya yeni taşınan IP adreslerinde aniden binlerce mail gönderilmesi alıcı sunucularda şüphe uyandırır. IP itibarını ısıtmak (IP Warming) için gönderim hacmini kademeli olarak artırın.
Kurumsal E-Posta Yönetimi

E-Posta Doğrulama Kayıtları Nedir? (SPF, DKIM, DMARC Yapılandırması)

Alan adınız adına sahte e-posta gönderilmesini (spoofing) engelleyen ve sunucu kimliğini doğrulayan DNS kayıtları.


Kurumsal e-posta güvenliğinin ve teslimat başarısının temel direği, alan adınıza (Domain) tanımlayacağınız kriptografik ve beyan esaslı DNS kayıtlarıdır. Bu kayıtlar eksik olduğunda Gmail ve Outlook gibi büyük sağlayıcılar maillerinizi doğrudan reddedebilir.

Güvenlik Protokollerinin Kurulumu:
  • SPF (Sender Policy Framework): Alan adınız adına hangi IP adreslerinin e-posta göndermeye yetkili olduğunu gösteren TXT kaydıdır.
    Örnek TXT: v=spf1 ip4:192.168.1.50 include:_spf.google.com ~all
  • DKIM (DomainKeys Identified Mail): E-postanın yoldayken değiştirilmediğini ve gerçekten sizin sunucunuzdan çıktığını dijital olarak imzalayan kriptografik bir anahtar yapısıdır. Sunucu panelinden (cPanel/Plesk/DirectAdmin) üretilen TXT kaydı DNS'e eklenir.
  • DMARC (Domain-based Message Authentication): SPF ve DKIM testlerinden geçemeyen (yani sahte olabilecek) e-postalar karşısında alıcı sunucunun ne yapması gerektiğini belirten politikadır.
    Örnek TXT (_dmarc.domain.com): v=DMARC1; p=quarantine; pct=100; (Hatalı mailleri karantinaya al).
Kurumsal E-Posta Yönetimi

PTR (Reverse DNS - Ters DNS) Kaydı Nedir ve Nasıl Oluşturulur?

IP adresini alan adına eşleyen ve kurumsal mail sunucuları için zorunlu olan ters yönlü DNS altyapı ayarı.


Standart DNS sistemi bir alan adını (domain.com) IP adresine yönlendirirken, PTR (Reverse DNS) kaydı bunun tam tersini yapar; yani IP adresini bir alan adına eşler. Başta Microsoft (Exchange) ve kurumsal posta sunucuları olmak üzere, alıcı sistemlerin %99'u spam koruması amacıyla gelen IP'nin PTR kaydını sorgular.

PTR Kaydı Kuralları ve Doğrulama:

PTR kaydı, alan adını tescil ettiğiniz firmadan değiştirilemez. Bu kayıt, IP bloğunun fiziksel sahibi olan veri merkezi (Data Center) veya IP sağlayıcı altyapısı üzerinden tanımlanmalıdır.

⚠️ Birebir Eşleşme Zorunluluğu (FCrDNS): Sunucu ana makine adınızın (Hostname: mail.aprilsoft.net) işaret ettiği A kaydı (IP adresi) ile, o IP adresine tanımlanan PTR kaydı birebir aynı domaine (mail.aprilsoft.net) çıkmalıdır. Aksi takdirde sunucular arası güven ilişkisi kurulamaz.
Kurumsal E-Posta Yönetimi

Outlook ve Mobil Cihazlar İçin Otomatik Kurulum (Autodiscover / Autoconfig) Ayarları

Müşterilerin port numarası girmeden, sadece e-posta ve şifre yazarak mail hesaplarını kurabilmelerini sağlayan sistem.


Kurumsal web hosting müşterilerinin en çok zorlandığı süreç port, protokol (IMAP/POP3) ve gelen/giden sunucu adreslerini manuel yazmaktır. Sunucu tarafında yapacağınız ufak bir DNS ve XML konfigürasyonu ile bu süreci tamamen otomatikleştirebilirsiniz.

Otomatik Keşif Mekanizmasının Çalışma Mantığı:
  1. Autodiscover (Microsoft Outlook & iOS): Alan adı DNS yönetim alanına bir CNAME veya SRV kaydı eklenerek istekler sunucuya yönlendirilir. Sunucu, e-posta istemcisine uygun yapılandırma XML'ini otomatik fırlatır.
    Örnek CNAME: autodiscover.alanadiniz.com -> mail.aprilsoft.net
  2. Autoconfig (Mozilla Thunderbird & Android): Thunderbird gibi istemciler için autoconfig.alanadiniz.com alt yapısı üzerinden istemciye doğrudan IMAP/SMTP portları dikte edilir.

Bu altyapı entegre edildiğinde, kullanıcı Outlook programına sadece adını, e-postasını ve şifresini yazarak 'İleri' butonuna tıkladığında kurulum 5 saniyede tamamlanır.

Web Hosting & cPanel

Alan Adı (Domain) DNS Yönlendirmesi Nasıl Yapılır?

Satın aldığınız alan adını cPanel hosting paketine bağlama ve NS yönlendirme adımları.


Sitenizin sunucuyla eşleşmesi için firmanıza özel iletilen Nameserver (NS) adreslerini domain panelinize kaydedin.

Web Hosting & cPanel

cPanel Üzerinden Kurumsal E-Posta Hesabı Nasıl Açılır?

Şirket uzantılı (isim@alanadiniz.com) e-posta hesabı oluşturma ve kota sınırı belirleme adımları.


cPanel üzerinde web sitenize ait özel uzantılı e-posta adresleri oluşturabilir ve bunları yönetebilirsiniz.

Adım Adım E-Posta Oluşturma:
  1. cPanel'e giriş yapın ve Email Accounts (E-Posta Hesapları) bölümüne tıklayın.
  2. Sağ tarafta bulunan + Create (+ Oluştur) butonuna basın.
  3. Açılan ekranda e-posta adresini (kullanıcı adını) ve güçlü bir şifre belirleyin.
  4. Optional Settings alanından e-posta kutusu için bir kota (Örn: 1024 MB) sınırı tanımlayın veya sınırsız yapın.
  5. En alttaki Create butonuna basarak işlemi tamamlayın.
💡 İpucu: Oluşturduğunuz maillere tarayıcı üzerinden direkt erişmek için tarayıcınızın adres çubuğuna www.alanadiniz.com/webmail yazarak giriş yapabilirsiniz.
Web Hosting & cPanel

cPanel Let's Encrypt Ücretsiz SSL Sertifikası Nasıl Kurulur?

Sitenizin HTTPS protokolü ile güvenli çalışmasını sağlayan ücretsiz SSL sertifikası aktivasyon rehberi.


Web sitenizin adres çubuğunda 'Güvenli Değil' uyarısı çıkmaması ve Google sıralamasında geriye düşmemesi için SSL sertifikası zorunludur.

Otomatik SSL Aktivasyonu (Lets Encrypt / AutoSSL):

Hosting paketlerimizde SSL sertifikası otomatik olarak tanımlanmaktadır. Ancak manuel tetiklemek veya kontrol etmek isterseniz:

  1. cPanel'de Güvenlik sekmesi altındaki SSL/TLS Status alanına girin.
  2. Açılan listeden SSL kurmak istediğiniz alan adlarının başındaki kutucukları işaretleyin.
  3. Üst menüde bulunan Run AutoSSL butonuna tıklayın.
⏳ Not: Sistem arka planda doğrulama yaptıktan sonra 5-10 dakika içinde yeşil kilit simgesi aktif olacaktır. İşlem öncesinde alan adınızın DNS (NS) yönlendirmelerinin tamamlanmış olması şarttır.
Web Hosting & cPanel

cPanel PHP Sürümü Yükseltme ve Limitleri (Memory Limit) Artırma

WordPress veya özel scriptlerin ihtiyaç duyduğu PHP versiyonunu değiştirme ve kaynak limitlerini düzenleme.


Güncel olmayan PHP sürümleri web sitenizde kritik güvenlik açıklarına ve uyumsuzluk hatalarına (Örn: 500 Internal Server Error) yol açar.

PHP Sürümü Nasıl Değiştirilir?
  1. cPanel ana sayfasındaki Yazılım (Software) kategorisinden Select PHP Version seçeneğine tıklayın.
  2. Current PHP Version alanından sitenizin uyumlu olduğu sürümü (Örn: 8.1 veya 8.2) seçip Set as current deyin.
Eklenti ve Dosya Yükleme Limitlerini Artırma:

Aynı ekranda üst tarafta bulunan Options (Seçenekler) sekmesine geçerek WordPress tabanlı sitelerde sıkça yetersiz kalan limitleri şu şekilde yükseltebilirsiniz:

  • memory_limit: 512M
  • upload_max_filesize: 256M
  • post_max_size: 256M
  • max_execution_time: 300
Veritabanı Yönetimi

Güvenlik Odaklı MySQL (3306) Portunu Dış Dünyaya Kapatma

Siber saldırıları önlemek amacıyla Linux sunucularda 3306 portunu yerel ağa (localhost) izole etme.


MySQL konfigürasyon dosyasını açarak bind-address = 127.0.0.1 şeklinde güncelleyip dış dünyaya kapatabilirsiniz.

Veritabanı Yönetimi

Büyük Veritabanları İçin MariaDB / MySQL InnoDB ve 'Too Many Connections' Optimizasyonu

Yüksek kaynaklı kurumsal sunucularda (256GB+ RAM) MariaDB my.cnf yapılandırma, bellek optimizasyonu ve bağlantı limiti yönetimi.


Yoğun SQL sorguları çalıştıran e-ticaret sitelerinde ve ERP yazılımlarında veritabanı motorunun RAM kaynaklarını doğru kullanması hayati önem taşır. Varsayılan MySQL ayarları yüksek donanımlı sunuculardan tam verim almanızı engeller ve anlık trafik dalgalanmalarında çökmelere yol açar.

1. 'Too Many Connections' Hatası ve Çözümü:

Bu hata, eş zamanlı aktif istemci bağlantı sayısının veritabanında tanımlanmış üst sınırı aştığını belirtir. Yazılım tarafında bağlantıların açıldıktan sonra kapatılmaması (uygun Connection Pool ayarlarının yapılmaması) ya da sorguların kilitlenmesi buna yol açar. Çözüm için veritabanı yapılandırmasında eş zamanlı limitleri artırırken, uyku modundaki (Sleep) atıl bağlantıların otomatik temizlenmesini sağlamalıyız.

2. my.cnf / my.cnf.d/server.cnf Optimizasyon Ayarları:

Sunucu terminalinizden konfigürasyon dosyasını açın ve donanımınıza uygun şekilde parametreleri düzenleyin:

[mysqld]
# Eş zamanlı maksimum istemci bağlantı limiti (Default genellikle 151'dir)
max_connections = 1500

# Bağlantı kuyruğu sınırı (Anlık burst trafikleri göğüslemek için yükseltilmeli)
back_log = 500

# Sleep durumunda kalan boşta bağlantıların sonlandırılma süresi (Saniye cinsinden, Varsayılan: 28800)
# Çok uzun süre açık kalan atıl bağlantıları 60 saniyede bir temizleyerek slot açariz.
wait_timeout = 60
interactive_timeout = 60

# Toplam RAM miktarının yaklaşık %50-70 aralığı InnoDB buffer pool'a ayrılmalıdır
innodb_buffer_pool_size = 128G 

# I/O yükünü dağıtmak için pool instance sayısı artırılmalıdır (Her 1-2GB için 1 instance)
innodb_buffer_pool_instances = 64

# Log dosyası boyutu (Yazma performansını doğrudan etkiler)
innodb_log_file_size = 8G
innodb_log_buffer_size = 512M

# Disk yazma stratejisi (1: En güvenli, 2: En performanslı - Elektrik kesintisinde son 1 sn risk altındadır)
innodb_flush_log_at_trx_commit = 2
innodb_flush_method = O_DIRECT
3. Anlık Bağlantı Durumunu Terminalden İzleme:

Hata anında hangi sorguların veya IP adreslerinin sunucuyu kilitlediğini görmek için MySQL CLI üzerinden şu komutla aktif kuyruğu analiz edin:

SHOW FULL PROCESSLIST;
💡 Sunucu Notu: Ayarları uyguladıktan sonra systemctl restart mariadb or systemctl restart mysqld komutuyla servisi yeniden başlatın. Bellek ve anlık bağlantı havuzunu izleyin.
Veritabanı Yönetimi

Yavaş Sorgu Günlüğü (Slow Query Log) ve İndeksleme (Indexing) Performans Rehberi

İşlemciyi (CPU) kilitleyen hantal SQL sorgularını tespit etme, İndeks (Index) mimarisi ve EXPLAIN analizi.


Web sitenizde veya uygulamanızda anlık CPU yükselmeleri yaşanıyorsa bunun temel sebebi genellikle optimize edilmemiş, ilişkisel kolonları indekslenmemiş veritabanı sorgularıdır. İndeksler, veritabanının veriyi bulmak için tüm tabloyu satır satır taraması (Full Table Scan) yerine, tıpkı bir kitabın 'fihrist' mantığı gibi nokta atışı arama yapmasını sağlar.

1. Slow Query Log Yapılandırması:

Belirli bir saniyenin üzerinde süren hantal sorguları yakalamak için veritabanı ayar dosyanıza şu satırları ekleyin:

slow_query_log = 1
slow_query_log_file = /var/log/mysql/mysql-slow.log
long_query_time = 2 # 2 saniyeden uzun süren tüm sorguları kaydeder
log_queries_not_using_indexes = 1 # İndeks kullanmayan sorguları doğrudan loglar

Logları okumak ve analiz etmek için terminalde mysqldumpslow aracını kullanabilirsiniz.

2. Sorgu Performans Analizi: EXPLAIN Komutu

Yavaş çalışan bir sorgunun tabloyu nasıl taradığını anlamak için sorgunun başına EXPLAIN ifadesini ekleyin:

EXPLAIN SELECT * FROM urunler WHERE kategori_id = 12;

Eğer dönen sonuçta type alanı ALL olarak görünüyorsa, bu sorgunun her seferinde tüm tabloyu baştan sona taradığı (Full Table Scan) anlamına gelir ve büyük tablolarda sistemi tamamen kilitler.

3. Doğru İndeks Oluşturma ve Hassas Dengeler:

Sıkça arama yapılan (WHERE, JOIN, ORDER BY vb.) alanlara indeks ekleyerek SELECT sorgularınızı binlerce kat hızlandırabilirsiniz:

CREATE INDEX idx_kategori ON urunler(kategori_id);
⚠️ Kritik Performans Dengesi: İndeksler okuma işlemlerini muazzam derecede hızlandırırken; gereksiz oluşturulan her indeks INSERT, UPDATE ve DELETE operasyonlarını yavaşlatır. Çünkü tablodaki veri her değiştiğinde, veritabanı arka planda fihristi (indeks haritasını) de yeniden hesaplamak ve güncellemek zorunda kalır. Sadece sık sorgulanan kolonları indeksleyin.
Veritabanı Yönetimi

SSH Üzerinden Güvenli Veritabanı Yedekleme (Backup) ve Geri Yükleme (Restore)

Büyük boyutlu .sql dosyalarını hata almadan ve SSH bağlantı kopmalarına karşı korumalı (tmux/screen) şekilde yedekleme / içeri aktarma.


phpMyAdmin gibi web tabanlı arayüzler, gigabaytlarca büyüklükteki kurumsal veritabanlarında php execution limitleri nedeniyle timeout (zaman aşımı) hatası verir ve yarıda kalır. Bu gibi büyük projelerde en stabil, profesyonel ve kayıpsız yöntem SSH terminali üzerinden mysqldump aracı ile işlem yapmaktır.

1. Bağlantı Kopmalarına Karşı Önlem (tmux / screen):

Büyük bir veritabanı yedeği indirirken veya yüklerken SSH bağlantınızın kopması durumunda işlemin yarıda kalıp veritabanının bozulmasını engellemek için işlemleri daima bağımsız bir sanal oturumda başlatın:

# screen veya tmux oturumu başlatın
screen -S veritabani_operasyonu

Bağlantınız kopsa bile sunucu arka planda işlemi tamamlayacaktır. Tekrar bağlanıp oturuma dönmek için screen -r veritabani_operasyonu komutunu kullanabilirsiniz.

2. Sıkıştırılmış Veritabanı Yedekleme (Export / Dump):

Yedek alırken diski yormamak ve dosya boyutunu küçültmek için çıktıyı doğrudan gzip ile sıkıştırarak almak en ideal yaklaşımdır:

mysqldump -u veritabanı_kullanıcısı -p --single-transaction --quick veritabanı_adı | gzip > /backup/yedek_dosyasi.sql.gz

💡 --single-transaction parametresi, InnoDB tabloları yedeklerken tabloları kilitlemeden canlı sistemin akmasını sağlar. --quick ise belleği şişirmeden satır satır diske yazar.

3. Sıkıştırılmış Yedeği Geri Yükleme / İçeri Aktarma (Import / Restore):

Alınan sıkıştırılmış yedek dosyasını doğrudan açıp veritabanına enjekte etmek için:

gunzip < /backup/yedek_dosyasi.sql.gz | mysql -u veritabanı_kullanıcısı -p veritabanı_adı