23 Aralık 2019
3dk Okuma Süresi
Gökhan O.
Linux işletim sisteminde reverse proxy (ters vekil sunucu) host (istemci) ile sunucu arasındaki istemci isteklerini alan, onları diğer sunuculara yollayan ve son olarak da vekil sunucunun kendisinden gelmiş gibi yanıtları istemciye ileten bir bağ olacak çalışır.
İstemci ve sunucu etkili olarak çalışmak için devamlı bilgi alışverişinde bulunur. Genellikle ters vekil sunucular web sunucuları tarafından kullanılırlar. Bir vekil sunucu veya ağ geçidi sunucuya özel ayarların gerekli olmadığı normal sıradan bir web sunucu gibi gözükür. İstemci normal istekleri yaparken ters vekil sunucuysa bilgiyi nereye verileceğine karar verir ve nihai çıktıyı istemciye baş noktaymış gibi ulaştırır.
Nginx reverse proxy oldukça yararlıdır. İnternet’teki en aktif kullanılan açık kaynaklı sunuculardan biridir. Bu makalede size Nginx reverse proxy (ters vekil sunucu) nedir ve VPS‘inizde nasıl kurabileceğinizi göstereceğiz!
Hadi bu aracın neden bu kadar popüler olduğunun sebeplerine bakalım:
Üstelik bütün bu avantajlar buz dağının sadece görünen kısmıdır. Nginx reverse proxy kullandıkça daha fazla özellik keşfedeceksiniz!
Önemli:
İlk olarak – SSH’nizi kullanarak VPS sunucunuza erişmelisiniz. Eğer bunu yapmakta sorun yaşıyorsanız PuTTY rehberimize bir göz atın!
İkinci olarak – rehberimizin ilerleyen kısımlarında da anlatacağımız gibi bu yöntemin çalışması için Apache web sunucusunun hali hazırda kurulu ve yapılandırılmış olması gerekmektedir.
Şimdiyse Apache web sunucusunda Nginx’i yapılandıracağız. Apache sunucusunu dinamik içeriği çalıştırmakta daha iyidir.
Yani dinamik içerik Apache’ye giderken bütün statik içerikse Nginx’e gidecektir. Bu, içerik dağıtmayı çalıştırabilme kriterlerine göre optimize ettiğinden performansı arttıracaktır.
Sıradaysa Nginx Proxy Server’ın IP adresini 192.x.x.1 ve Apache sunucusunuysa 192.x.x.2 tanımlamak var. Apache’yi kurduktan sonraysa bu aşamalara geçebilirsiniz:
Ubuntu 18.04’de apt komutunu kullanacağız:
sudo apt-get update
sudo apt-get install nginx
Nginx’i yükledikten sonra sanal sunucuyu devre dışı bırakmak için aşağıdaki komutu kullanın:
sudo unlink /etc/nginx/sites-enabled/default
Sanal sunucuyu devre dışı bıraktıktan sonra ters vekil sunucu bilgisini saklamak için etc/nginx/sites-available dizini içinde reverse-proxy.conf adında bir dosya oluşturmanız gerekiyor.
Bunun içinse ilk önce cd komutunu kullanarak dizine erişmelisiniz:
cd etc/nginx/sites-available/
Daha sonra ise vi editörü kullanarak dosyayı yaratabilirsiniz:
vi reverse-proxy.conf
Bu dosyada bu dizileri yapıştırmanız gerekiyor:
server { listen 80; location / { proxy_pass http://192.x.x.2; } }
Üstteki komutta dikkat etmeniz gereken nokta Nginx reverse proxy üzerinden gelen isteklere Apache uzak soketi olan 192.x.x.2:80‘e ulaştırmak için proxy pass’in izin verdiğidir. Böylece hem Nginx, hem de Apache içeriği paylaşır.
Bu işlemi tamamladıktan sonra dosyayı kaydedin ve vi editöründen çıkış yapın. Bunu wq yazarak yapabilirsiniz.
Bilgiyi diğer sunuculara aktarmak için terminalde ngx_http_proxy_module‘ü kullanabilirsiniz.
Şimdiyse emirleri /sites-enabled/‘e bağlamak için aşağıdaki komutu kullanın:
sudo ln -s /etc/nginx/sites-available/reverse-proxy.conf /etc/nginx/sites-enabled/reverse-proxy.conf
Son olarak bir Nginx yapılandırma testi yapmanız ve Nginx’in performans kontrolü için test edin. Nginx’in çalıştığını doğrulamak için Linux terminalinde aşağıdaki komutları girin:
service nginx configtest
service nginx restart
Unutmayın eğer testin başarısız olduğu sonucunu alırsanız bu Apache’nin düzgün kurulmadığını gösterir.
Linux işletme sisteminde bir Nginx reverse proxy kurmanın birçok avantajı vardır. Etkili biçimde performansı artırır ve kötü niyetli yazılımlar karşısında daha güvenli olursunuz. Linux terminalinde Nginx reverse proxy yapılandırması oldukça basit bir işlemdir. Nginx reverse proxy’i yükleyip yapılandırmanın ihtiyacınıza göre birçok yolu vardır ancak bu makalede sunduğumuz yöntem en kolay ve açık yoludur.
Bir yanıt bırakın