İçeriğe geç
Guides 6 dk okuma 935 görüntülenme

Linux Proxy Kurulumu

Linux'ta proxy kurulumu için kapsamlı bir rehber. Ortam yapılandırmasını, APT paket yönetimini ve Systemd entegrasyonunu inceleyin.

Linux Proxy Kurulumu

Linux'ta proxy yapılandırmak; kullanıcı oturumları için ortam değişkenlerinin ayarlanmasını, paket yönetimi için APT'nin yapılandırılmasını ve tüm sistem bileşenlerinin dış ağlara proxy üzerinden erişebilmesi için Systemd servislerine proxy ayarlarının tanımlanmasını kapsar.

Birçok Linux ortamı kurumsal güvenlik duvarlarının arkasında çalışır ya da güvenlik, kayıt tutma veya erişim denetimi amacıyla trafiğin bir proxy sunucusu üzerinden yönlendirilmesini gerektirir. Doğru proxy yapılandırması; yazılım güncellemeleri, kullanıcı uygulamalarının internet erişimi ve arka plan servislerinin iletişimi dahil olmak üzere sistemin işleyişi için kritiktir. Bu makale, yaygın Linux bileşenlerinde proxy ayarlarının nasıl yapılandırılacağını ayrıntılarıyla anlatır.

Ortam değişkenleri

Kabuk ortamları ve bunları devralan uygulamalar, proxy yapılandırması için genellikle standart ortam değişkenlerine dayanır. Bu değişkenler HTTP, HTTPS ve FTP trafiği için proxy sunucusu adresini ve doğrudan bağlantı istisnalarını tanımlar.

Standart proxy ortam değişkenleri

  • HTTP_PROXY: HTTP bağlantıları için proxy.
  • HTTPS_PROXY: HTTPS bağlantıları için proxy.
  • FTP_PROXY: FTP bağlantıları için proxy.
  • NO_PROXY: Proxy'yi atlaması gereken ana makine adları, IP adresleri veya CIDR aralıklarının virgülle ayrılmış listesi. Örnek: localhost,127.0.0.1,*.local,192.168.0.0/24.

Bu değişkenler bazı bağlamlarda büyük/küçük harfe duyarlıdır (ör. wget genellikle küçük harfli http_proxy kullanırken diğerleri büyük harfli HTTP_PROXY tercih eder). Daha geniş uyumluluk için hem büyük hem küçük harfli sürümleri tanımlamak yaygın bir uygulamadır.

Geçici kabuk oturumu yapılandırması

Proxy değişkenlerini mevcut kabuk oturumu ve buradan başlatılan tüm süreçler için ayarlamak üzere:

export HTTP_PROXY="http://proxy.example.com:8080"
export HTTPS_PROXY="http://proxy.example.com:8080"
export FTP_PROXY="http://proxy.example.com:8080"
export NO_PROXY="localhost,127.0.0.1,.example.com"

# Uyumluluk için küçük harfli sürümleri de ayarlayın
export http_proxy="http://proxy.example.com:8080"
export https_proxy="http://proxy.example.com:8080"
export ftp_proxy="http://proxy.example.com:8080"
export no_proxy="localhost,127.0.0.1,.example.com"

proxy.example.com:8080 yerine kendi proxy sunucu adresinizi ve portunuzu yazın. Kimlik doğrulama gerekiyorsa kimlik bilgilerini ekleyin: http://user:[email protected]:8080.

Kullanıcıya özel kalıcı yapılandırma

Proxy ayarlarının kullanıcı oturumları arasında kalıcı olması için export komutlarını kullanıcının kabuk profil dosyasına ekleyin.

  • Bash: ~/.bashrc veya ~/.profile
  • Zsh: ~/.zshrc

~/.bashrc için örnek:

# Proxy ayarları
export HTTP_PROXY="http://proxy.example.com:8080"
export HTTPS_PROXY="http://proxy.example.com:8080"
export FTP_PROXY="http://proxy.example.com:8080"
export NO_PROXY="localhost,127.0.0.1,.example.com"
export http_proxy="http://proxy.example.com:8080"
export https_proxy="http://proxy.example.com:8080"
export ftp_proxy="http://proxy.example.com:8080"
export no_proxy="localhost,127.0.0.1,.example.com"

Değişiklikten sonra dosyayı kaynak olarak yükleyin ya da oturumu kapatıp yeniden açın: source ~/.bashrc.

Sistem genelinde kalıcı yapılandırma

Tüm kullanıcıları ve bazı sistem süreçlerini etkileyen (ancak tüm Systemd servislerini doğrudan kapsamayan) sistem genelindeki proxy ayarları için /etc/environment dosyasını veya /etc/profile.d/ içindeki dosyaları kullanın.

/etc/environment

Bu dosya, giriş sırasında PAM (Pluggable Authentication Modules) tarafından, oturum açan kabuk tarafından başlatılan tüm servisler ve uygulamalar için okunur. Yalnızca KEY="value" sözdizimini destekler, export kullanılmaz.

HTTP_PROXY="http://proxy.example.com:8080"
HTTPS_PROXY="http://proxy.example.com:8080"
FTP_PROXY="http://proxy.example.com:8080"
NO_PROXY="localhost,127.0.0.1,.example.com"
http_proxy="http://proxy.example.com:8080"
https_proxy="http://proxy.example.com:8080"
ftp_proxy="http://proxy.example.com:8080"
no_proxy="localhost,127.0.0.1,.example.com"

/etc/environment üzerindeki değişikliklerin yeni oturumlarca algılanması için genellikle yeniden başlatma veya yeniden oturum açma gerekir.

/etc/profile.d/

/etc/profile.d/ dizinine konan betikler, oturum açan kabuklar tarafından kaynak olarak yüklenir. Bu, mantık veya export ifadeleri gerektiren ortam değişkenlerini tanımlamak için uygundur. Yeni bir dosya oluşturun, ör. /etc/profile.d/proxy.sh:

#!/bin/bash
export HTTP_PROXY="http://proxy.example.com:8080"
export HTTPS_PROXY="http://proxy.example.com:8080"
export FTP_PROXY="http://proxy.example.com:8080"
export NO_PROXY="localhost,127.0.0.1,.example.com"
export http_proxy="http://proxy.example.com:8080"
export https_proxy="http://proxy.example.com:8080"
export ftp_proxy="http://proxy.example.com:8080"
export no_proxy="localhost,127.0.0.1,.example.com"

Betiğin çalıştırılabilir olduğundan emin olun: sudo chmod +x /etc/profile.d/proxy.sh.

sudo ve proxy değişkenleri

sudo kullanılırken ortam değişkenleri güvenlik nedeniyle çoğu zaman sıfırlanır. sudo ile çalıştırılan komutlarda proxy ayarlarını korumak için:

  1. sudo -E kullanın: Bu, mevcut ortam değişkenlerini korur.
    bash sudo -E apt update
  2. sudoers dosyasını yapılandırın: sudo visudo ile /etc/sudoers dosyasını düzenleyip env_keep satırını ekleyin/değiştirin.
    Defaults env_keep += "HTTP_PROXY HTTPS_PROXY FTP_PROXY NO_PROXY http_proxy https_proxy ftp_proxy no_proxy"
    Kalıcı sistem yapılandırmalarında bu yaklaşım genellikle sudo -E'den daha güvenlidir.

APT (Advanced Package Tool)

Debian tabanlı dağıtımların (ör. Ubuntu) kullandığı paket yöneticisi APT, kabuk ortam değişkenlerinden bağımsız olarak kendi proxy yapılandırmasını gerektirir.

APT proxy yapılandırma dosyası

APT'nin proxy ayarları /etc/apt/apt.conf.d/ içindeki yapılandırma dosyalarında tanımlanır. Yeni bir dosya oluşturun, ör. /etc/apt/apt.conf.d/01proxy, içeriği şöyle olsun:

Acquire::http::Proxy "http://proxy.example.com:8080/";
Acquire::https::Proxy "http://proxy.example.com:8080/";
# Acquire::ftp::Proxy "ftp://proxy.example.com:8080/"; # Gerekirse yorumu kaldırın

proxy.example.com:8080 yerine kendi proxy sunucu adresinizi ve portunuzu yazın.

Proxy kimlik doğrulama gerektiriyorsa:

Acquire::http::Proxy "http://user:[email protected]:8080/";
Acquire::https::Proxy "http://user:[email protected]:8080/";

APT proxy'sini atlaması gereken ana makineler için Acquire::NoProxy kullanın:

Acquire::NoProxy "localhost,127.0.0.1,archive.ubuntu.com";

Bu, genel NO_PROXY kadar sık kullanılmaz ancak APT'ye özgü olabilir.

Dosyayı oluşturduktan veya değiştirdikten sonra APT, sonraki işlemlerde (ör. apt update, apt install) bu ayarları otomatik olarak kullanır. Servis yeniden başlatmaya gerek yoktur.

Systemd servisleri

Systemd, sistem servislerini ve uygulamalarını yönetir. Systemd tarafından başlatılan servisler, kabuk profillerinde veya /etc/environment içinde tanımlanan proxy ortam değişkenlerini otomatik olarak devralmaz. Proxy erişimi gereken her Systemd birimi ayrıca yapılandırılmalıdır.

Belirli bir Systemd servisi için proxy

Tek bir Systemd servisinin proxy ayarlarını yapılandırmak için bir override dosyası oluşturun. Paket güncellemelerinde üzerine yazılabilecek özgün birim dosyalarını doğrudan değiştirmekten kaçınmak için önerilen yöntem budur.

  1. Bir override dizini oluşturun:
    bash sudo systemctl edit <service_name>
    Bu komut /etc/systemd/system/<service_name>.service.d/override.conf dosyası için bir düzenleyici açar.

  2. Proxy ortam değişkenlerini ekleyin:
    Düzenleyicide [Service] bölümünü ve Environment yönergelerini ekleyin:

    ini [Service] Environment="HTTP_PROXY=http://proxy.example.com:8080" \ "HTTPS_PROXY=http://proxy.example.com:8080" \ "NO_PROXY=localhost,127.0.0.1" Environment="http_proxy=http://proxy.example.com:8080" \ "https_proxy=http://proxy.example.com:8080" \ "no_proxy=localhost,127.0.0.1"
    Her Environment yönergesi, tırnak içinde boşlukla ayrılmış birden fazla değişken içerebilir; alternatif olarak birden fazla Environment satırı kullanabilirsiniz. \ işareti override dosyasında satır devamı içindir.

  3. Kaydedin ve çıkın: Dosyayı kaydedin. Systemd daemon'u otomatik olarak yeniden yükler ve servisi yeniden başlatmayı önerir. Yeniden başlatmayı onaylayın. Öneri gelmezse elle yeniden yükleyip başlatın:
    bash sudo systemctl daemon-reload sudo systemctl restart <service_name>

Genel Systemd proxy yapılandırması

Kendine özgü proxy ayarı olmayan servisler için ya da sistem genelinde bir varsayılan tanımlamak için proxy ayarlarını Systemd'nin genel ortamında yapılandırın. Bu, söz konusu değişkenleri açıkça geçersiz kılmayan tüm servisleri etkiler.

  1. Drop-in yapılandırmalar için bir dizin oluşturun:
    bash sudo mkdir -p /etc/systemd/system.conf.d/

  2. Bir proxy yapılandırma dosyası oluşturun:
    bash sudo nano /etc/systemd/system.conf.d/proxy.conf

  3. Proxy ortam değişkenlerini ekleyin:
    ini [Manager] DefaultEnvironment="HTTP_PROXY=http://proxy.example.com:8080" DefaultEnvironment="HTTPS_PROXY=http://proxy.example.com:8080" DefaultEnvironment="NO_PROXY=localhost,127.0.0.1" DefaultEnvironment="http_proxy=http://proxy.example.com:8080" DefaultEnvironment="https_proxy=http://proxy.example.com:8080" DefaultEnvironment="no_proxy=localhost,127.0.0.1"

  4. Systemd daemon'unu yeniden yükleyin ve servisleri yeniden başlatın:
    bash sudo systemctl daemon-reload sudo systemctl restart --all # Dikkatli kullanın, tüm kullanıcı ve sistem servislerini yeniden başlatır
    Tüm servislerin bu genel değişiklikleri almasını sağlamanın en güvenli yolu genellikle sistemi tamamen yeniden başlatmaktır.

Doğrulama

Proxy ayarlarını yapılandırdıktan sonra çalıştıklarını doğrulayın:

  • Ortam değişkenleri:
    bash env | grep -i proxy
  • APT:
    bash apt config dump | grep -i proxy
    Bir güncelleme deneyin: sudo apt update.
  • Genel ağ erişimi:
    bash curl -v http://ifconfig.me
    Trafik proxy üzerinden geçiyorsa çıktı proxy sunucusunun IP adresini, NO_PROXY etkiliyse kendi dış IP'nizi göstermelidir.
  • Systemd servisi: Bağlantı sorunları için servis durumunu ve günlüklerini kontrol edin.
    bash sudo systemctl status <service_name> sudo journalctl -u <service_name>
    Çalışan bir servis sürecinin ortamını da inceleyebilirsiniz. Servisin PID'sini bulun, ardından:
    bash sudo cat /proc/<PID>/environ | tr '\0' '\n' | grep -i proxy

Proxy yapılandırma yöntemlerinin karşılaştırması

Yöntem Kapsam Kalıcılık Etkilenen bileşenler Yapılandırma örneği
Kabuk ortamı (geçici) Mevcut kabuk oturumu Hayır Mevcut kabuktan başlatılan komutlar export HTTP_PROXY="..."
Kullanıcı profili (~/.bashrc) Kullanıcının oturumları Evet Kullanıcı uygulamaları, kabuk komutları ~/.bashrc dosyasına export satırları ekleyin
Sistem geneli (/etc/environment) Tüm oturumlar, bazı sistem süreçleri Evet Oturum kabukları, bazı uygulamalar (Systemd dışı) /etc/environment içinde HTTP_PROXY="..."
Sistem geneli (/etc/profile.d/) Tüm oturum kabukları Evet Oturum kabukları, bunlardan başlatılan uygulamalar /etc/profile.d/ içinde export satırlarını içeren betik
APT (/etc/apt/apt.conf.d/) Yalnızca APT paket yöneticisi Evet apt, apt-get, aptitude 01proxy içinde Acquire::http::Proxy "...";
Systemd servis override'ı (override.conf) Belirli bir Systemd birimi Evet Tek bir Systemd servisi /etc/systemd/system/<service>.service.d/override.conf içinde Environment="..."
Genel Systemd (system.conf.d/) Tüm Systemd servisleri (varsayılan) Evet Geçersiz kılınmadıkça tüm Systemd servisleri /etc/systemd/system.conf.d/proxy.conf içinde DefaultEnvironment="..."
Güncellendi: 03.03.2026
Kategoriye dön

Bunları da okuyun

Guides 2 dk

Nike SNKRS için Proxy: Sınırlı Sürümler ve Çoklu Katılım

Nike SNKRS'ta birden fazla hesapla çekilişlere katılmak, IP limitlerini aşmak ve ban yemeden sınırlı sürümleri kapmak için residential veya mobil proxy kullanın. Hangi türü seçmeli ve nasıl kurmalı.

Guides 2 dk

iPhone'da Proxy Nasıl Kurulur (Wi-Fi ve SOCKS5)

iPhone'da proxy'yi yerleşik Wi-Fi ayarlarından (HTTP/HTTPS) veya SOCKS5 ile hücresel kapsama için Shadowrocket gibi bir uygulamayla kurun. Adım adım iOS kurulumu ve bilinmesi gereken kısıtlar.

Guides 3 dk

Tinder için proxy: çoklu hesap ve ban'lerden kaçınma

Birden fazla profil işletmek ve IP shadowban'lerinden kaçınmak için Tinder'da mobil veya residential proxy kullanın. Mobilin neden kazandığı, kurulumu ve proxy'nin şehri neden değiştirmediği.

Guides 2 dk

StockX için proxy: fiyat takibi ve hesap yönetimi

StockX'te fiyatları izlemek, birden fazla hesap çalıştırmak ve drop'ları yasaklanmadan kapmak için residential, ISP veya mobil proxy kullanın. Hangi türü seçeceğinizi ve nasıl kuracağınızı anlatıyoruz.

Guides 3 dk

OpenAI API için Proxy: Erişim, Hız Limitleri ve Kurulum

OpenAI API'yi residential veya ISP proxy üzerinden yönlendirerek desteklenen bölgelere erişin, 429 hız limitlerinden kaçının ve hesapları izole edin. Hangi proxy'yi seçmeli ve Python kurulum örnekleri.

Guides 1 dk

E2E testleri için Cypress'te proxy kurulumu

Cypress'te proxy kurulumu: HTTP_PROXY değişkenleri, cy-proxy-middleware ve coğrafi konuma bağlı içeriğin test edilmesi.

Proxy'lerimizi deneyin

100+ ülkede 20,000+ proxy

support_agent
GProxy Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.