Ödeme Yöntemleri Abuse

3proxy'yi yükleme

05.06.2023, 23:17

3proxy, trafiği filtreleme, önbelleğe alma ve belirli web sitelerini engelleme gibi çeşitli amaçlar için kullanılan ücretsiz ve açık kaynaklı bir proxy sunucusudur. SOCKS v4/v4a/v5, HTTP, HTTPS, FTP, POP3, SMTP gibi çeşitli protokolleri destekler ve SOCKS5 kullanıcı adı/parola, NTLM, LDAP, Kerberos ve SSO gibi kimlik doğrulama yöntemlerini destekler.

Son derece özelleştirilebilir olan sunucu, bant genişliği kullanımı ve bağlantı parametrelerinin ayrıntılı yönetimini sağlar. 3proxy Windows, Linux ve macOS platformlarına kurulabilir. Küçük ve orta ölçekli ağlar için uygun, hafif ve kullanımı kolay bir proxy sunucusudur. Bir vps proxy kiralamak mümkündür.

3proxy'yi http(ler) ve socks5-proxy desteği ile yükleyin

Sunucunun izinsiz olarak kurulması istenmediğinden dikkatli olunmalıdır. Bu, sunucunun izinsiz olarak davetsiz misafirler tarafından spam ve yüksek trafik düzenlemek için kullanılmasına yol açabilir.

Başlangıç olarak, çeşitli paketlerin ve bağımlılıkların yüklenmesi gerekir.

AlmaLinux için komut:

yum -y install gcc wget tar

ve Debian için:

apt install -y build-essential wget tar

Daha sonra dosyaları 3proxy projesinin resmi sitesinden indirin, arşivi açın ve indirilen dosyaları derleyin.

Daha sonra, yapılandırma dosyaları ve günlükler için gerekli dizinleri oluşturun,3proxy çalıştırılabilir dosyasını aktarın ve yeni bir"proxyuser" kullanıcısı oluşturun ve ona dizinler için haklar atayın. Yeni bir yapılandırma dosyası oluşturmak için şu komutu çalıştırın:

touch /etc/3proxy/3proxy.cfg

chmod 600 /etc/3proxy/3proxy.cfg ile yalnızca root kullanıcısına izinler atayın.

Yeni bir yapılandırma dosyası oluşturduktan sonra, dosyayı doğru bir şekilde doldurmak gerekir. Bunu yapmak için,"proxyuser" kullanıcısının uid ve gid 'sini yazın, ardından örnek yapılandırma dosyasındaki metni kopyalayıp yapıştırmak için bir metin düzenleyici kullanın. Değişiklikleri yapılandırma dosyasına kaydedin ve http(s) ve socks5-proxy destekli kurulu bir 3proxy'ye sahip olun.

Yapılandırma dosyası

Aşağıda örnek bir yapılandırma dosyası bulunmaktadır:

Sunucuyu proxyuser olarak çalışacak şekilde yapılandırma

(daha önce öğrendiğimiz kullanıcımızın uid ve gid değerlerini girin).
setgid 991
setuid 991

Doğru ad sunucularını belirtin. Bkz. /etc/resolv.conf:
nserver 8.8.8.8.8
nserver 8.8.4.4

DNS sorguları için varsayılan zaman aşımlarını ve önbellek boyutunu kullanın:
zaman aşımları 1 5 30 60 180 180 1800 1800 15 60
nscache 65536

Başlangıç modunu daemon olarak belirtin:
daemon

Sunucunun harici arayüzünün IP adresini belirtin:
harici 111.111.111.111.111 (veya IP aynıysa satırı yok sayın).

Sunucunun dahili arayüzünün IP adresini belirtin:
internal 192.168.0.1 (veya proxy'nin tüm IP'leri dinlemesi için bu satırı yoksayabilirsiniz).

Standart bağlantı noktası 3128 üzerinde http proxy yapılandırın:
proxy -p3128 -n -a (portunuzu belirtin, önceden çalıştığından emin olun).

Standart 1080 numaralı bağlantı noktasında socks proxy yapılandırın:
socks -p1080 (portunuzu belirtin, önceden çalışıp çalışmadığını kontrol edin).

Günlüklerin yolunu, günlük biçimini ve rotasyonunu belirtin:
log /var/log/3proxy/3proxy/3proxy.log D
logformat "- +_L%t.%. N.%p %E %U %C:%c %R:%r %O %I %h %T"
30 döndür

Ardından, systemd için bir başlatma dosyası oluşturun ve doğru izinleri yapılandırın:

# touch /etc/systemd/system/3proxy.service
# chmod 664 /etc/systemd/system/3proxy.service

Aşağıdaki metin bu dosyaya eklenmelidir:

[Unit] 
Description=3proxy Proxy Server 
After=network.target 
[Service] 
Type=simple 
ExecStart=/usr/bin/3proxy /etc/3proxy/3proxy.cfg 
ExecStop=/bin/kill `/usr/bin/pgrep proxyuser` 
RemainAfterExit=yes 
Restart=on-failure 
[Install] 
WantedBy=multi-user.target

Systemd yapılandırmasını kaydedin ve güncelleyin:

# systemctl daemon-reload

3proxy'yi başlatın ve otomatik yükleyiciye ekleyin:

# systemctl start 3proxy
# systemctl enable 3proxy
Firewalld veya iptables'da http proxy portunu açmayı unutmayın.

Yapılandırma tamamlandı. Artık 3128 numaralı bağlantı noktasında http-proxy ve 1080 numaralı bağlantı noktasında socks-proxy'niz var.

Bazı sorunları giderme

İlk sorun, yeni bir alan adını kaydettikten sonra, alan adı önbelleğe alma nedeniyle sizin için kullanılabilir olmama ihtimalinin olmasıdır. Bu sorunu çözmek için DNS kayıtlarının güncellenmesini beklemeli veya sunucunuzun IP adresini ve yeni alan adını hosts dosyanıza eklemelisiniz. Bu, DNS kayıtları güncellenene kadar yeni alan adına erişmenizi sağlayacaktır.

İkinci sorun - varsayılan bağlantı noktalarına sahip bir proxy sunucusu kullanıyorsanız, er ya da geç sunucu algılanabilir. Bu sorunu çözmek için portları değiştirmeniz önerilir.

Örneğin, http proxy için 7834 ve Socks için 7835 portlarını ayarlayabilirsiniz. Bununla birlikte, bu tür bağlantı noktaları da algılanabilir, bu nedenle güvenlik duvarını sunucuya yalnızca belirli adreslerden erişime izin verecek şekilde yapılandırabilirsiniz, diğerlerinin erişimi reddedilecektir. Bu çözüm oldukça güvenilirdir, ancak statik bir IP adresine erişiminiz olmayabileceğinden çok esnek değildir.

Üçüncü sorun, bir proxy sunucusu kullanıyorsanız ve tüm bağlantıların günlüklerini tutuyorsanız, zamanla oldukça büyük hale gelebilir ve diskinizdeki boş alanın çoğunu kaplayabilir. Bu sorundan kaçınmak için günlük rotasyonuna dikkat etmeli ya da günlükleri hiç tutmamalısınız.

Yalnızca son birkaç günlük dosyasını tutmanıza ve eski günlükleri otomatik olarak silmenize olanak tanıyan çeşitli günlük döndürme yöntemleri vardır. Bu nedenle, diskin taşmasını önlemek için günlük döndürme işlemini önceden ayarlamak en iyisidir. Bu, bir proxy sunucusu kullanırken tüm verilerin kaydedilmesine ve bilgi kaybının önlenmesine yardımcı olacaktır.

Port 3128 üzerinde anonim bir http(s) proxy sunucusunun basitleştirilmiş yapılandırması

users proxyuser:CL:password

daemon

log /var/log/3proxy/3proxy.log D

rotate 30

auth strong

proxy -n -a

setgid 65534

setuid 65534

Ayrıca günlükler için bir dizin oluşturmak ve izinleri ayarlamak gerekir (sunucuyu setgid/setud yönergelerini kullanarak sistemdeki hiç kimsenin minimum haklarıyla başlatıyoruz):

mkdir /var/log/3proxy ; chown nobody /var/log/3proxy

Docker'da 3proxy kurulumu

Docker'da 3proxy kurulumunu ele alalım.

Öncelikle bazı paketleri kurmamız gerekiyor (ve yeni kurulan Debian ve Ubuntu işletim sistemleri için apt paket indeksini # apt update ile güncellememiz de gerekebilir).

AlmaLinux ve CentOS için:

# yum install docker docker-compose

Ubuntu ve Debian için:

# apt install docker docker.io docker-compose

Görüntüyü indirin:

# docker pull 3proxy/3proxy

Varsayılan olarak, 3proxy /usr/local/3proxy içinde uid 65535 ve gid 65535 ile güvenli bir chroot ortamı kullanır ve 3proxy yapılandırma dosyasının /usr/local/etc/3proxy içine yerleştirilmesini bekler. Yapılandırma dosyasındaki yollar /usr/local/3proxy'ye göre belirtilmelidir, yani /usr/local/3proxy/logs yerine /logs olmalıdır. Chroot'ta nserver için izin gereklidir.

Bunu yapmak için bir dizin ve bir 3proxy yapılandırma dosyası oluşturun:

# mkdir -p /etc/dockerapp/3proxy
# touch /etc/dockerapp/3proxy/3poxy.conf

Ardından, oluşturulan 3proxy .conf yapılandırma dosyasını düzenlemek için istediğiniz herhangi bir metin düzenleyicisini kullanın. Docker'da 3proxy çalıştırmak için minimum yapılandırma yeterlidir:

nserver 8.8.8.8.8
socks -p3129

Günlük kaydı ve kullanıcı eklemek için 3proxy yapılandırma dosyasına eklemeniz gerekir:

log /logs/3proxy.log 
auth strong 
users "proxyuser:CR:87beeef3f4ee4661ac1897eca216fc26"

"87beeef3f4ee4661ac1897eca216fc26" yerine proxy kullanıcısı için şifrenin MD5 hash'ini belirtmeniz gerekir. MD5 karmasını çevrimiçi oluşturucuları kullanarak öğrenebilirsiniz.

Docker-compose kullanarak 3proxy'yi başlatalım. Bunun için .yml formatında bir yapılandırma dosyası oluşturmamız gerekecek:

# touch /etc/dockerapp/3proxy/docker-compose.yml

Bir metin düzenleyici kullanarak aşağıdaki metni buraya ekleyin:

version: "2.1" 
services: 
  3proxysvc: 
image: 3proxy/3proxy:latest 
container_name: 3proxy 
volumes: 
   - /etc/dockerapp/3proxy/conf:/usr/local/3proxy/conf 
ports: 
   - 8080:3129 
restart: unless-stopped

Kaydet. Bu dosyada 8080 harici portunu belirttik. Şimdi çalıştırabiliriz:

# docker-compose -f /etc/dockerapp/3proxy/docker-compose.yml up -d

Bunun gibi bir yanıt alacağız:

Varsayılan sürücü ile"3proxy_default" ağı oluşturuluyor
3proxy oluşturuluyor ... tamamlandı

Test edin:

# docker ps

Konteyner kimliği, imajı, durumu, kullanılan portları ve adını içeren bir yanıt alıyoruz:

48cc0cd140cd 3proxy/3proxy:latest "/bin/3proxy /etc/3p..." 5