Captive Portal

Selamlar,

Bu yazıda sizlere Captive Portal tekniğinden bahsedip ardından Captive Portal yazılımlarından biri olan PfSense yapılandırması hakkında bilgi vermeye çalışacağım.

Captive Portal tekniği http istemcisini İnterneti normal olarak kullanmadan önce ağ üzerinde özel bir Web sayfasını görmeye zorlar. Captive Portal web tarayıcısını kimlik denetleme cihazına çevirir. Bu işlem, kullanıcı bir tarayıcı açıp internete erişmeye çalışana kadar porttan veya adresten bağımsız olarak bütün paketleri engelleyerek gerçekleştirilir. Bu sırada browser kimlik denetleme ve/veya ödeme, ya da basitçe uygun kullanım poliçesini görüntüleyip kullanıcının onaylamasını sağlayacak web sayfasına yönlendirilir. Captive Portal uygulamaları en çok Wi-Fi erişim noktalarında kullanılır. Ayrıca kablolu kullanımı kontrol etmek için de kullanılabilir. (Otel odaları, iş merkezleri, vs.)

Oturum açma sayfasının client’a sunulması gerektiği için bu sayfa ya yerel ağ geçidinde tutulmalı, ya da o sayfayı tutan web serverına “Walled Garden” tarafından kimlik denetleme işlemini atlaması için izin verilmeli. Varsayılan ağ geçidinin özelliklerine bağlı olarak birden çok web serverına izin verilebilir. web serverlarının URL’lerine izin verilmesine ek olarak bazı varsayılan ağ geçitleri TCP portlarına da izin verebilir. Eklenmiş istemcilerin MAC adresleri de kimlik denetleme aşamasını atlamak üzere ayarlanabilir.

Captive Portal’ı uygulamanın birden çok yönü vardır.

HTTP’den yönlendirme
Eğer onaylanmamış bir kullanıcı web sayfasını talep ederse, DNS, tarayıcı tarafından sorgulanır ve uygun IP adresi olağan şekilde çözümlenir. Ardından browser, hedef IP adresine HTTP talebinde bulunur. Ancak istek firewall tarafından yakalanır ve routing serverına iletilir. Bu routing serverı istemciyi Captive Portal”a yönlendirmek için fazladan Status code 302 içeren sıradan HTTP cevabı döner. Bu işlem istemciye görünmez. İstemci web sayfasının aslında başlangıç isteğine cevap verdiğini ve yönlendirme yaptığını zanneder.

IP yönlendirme
İstemci trafiği 3. katmanda IP routing kullanılarak da aktarılabilir. Fakat bu yöntemin dezavantajı istemciye sunulan içeriğin URL ile uyuşmamasıdır.

DNS’ten yönlendirme
İstemci bir web sayfası talep ettiğinde DNS browser tarafından sorgulanır. Firewall, onaylanmamış istemcinin sadece DHCP tarafından öngörülen DNS sunucusunu/sunucularını kullanılabileceğinden emin olur. Bu DNS sunucusu varsayılan olarak bütün DNS sorgularına Captive Portal sayfasının IP adresini döner.
Bazı amatör uygulamalarda istemciden çıkan DNS sorguları engellenmez, bu tür uygulamaları atlatmak çok kolaydır; kullanıcıların basitçe bilgisayarlarını başka bir, public DNS serverını kullanmak üzere best online casino yapılandırması gerekir. Bu yüzden firewall’u ya da Access list’i içerideki istemcilerden hiçbirinin dışarıdaki DNS serverlardan birini kullanamayacağı şeklinde ayarlamak çok önemlidir.

Yapılandırma
PfSense kurulu olan makinenin LAN arayüzüne atanmış olan IP adresi browser’a yazılarak PfSense yönetim sayfasına bağlanılır. “Ana sayfadan Services -> Captive portal” yoluyla PfSense Captive Portal yönetim sayfası açılmış olur.

Interface: Bu kısımda Kısıtlama Portalı’nın çalışacağı arayüz seçilir. (LAN vs.)
Maximum concurrent connections: Bu seçenek aynı anda kaç kişinin portal sayfasını açabileceğini belirler.
Idle timeout: Belirtilen süre kadar eylemsizlik sonunda istemcilerin bağlantısı kesilir. Gerekirse anında tekrar bağlanabilirler.
Hard timeout: Belirtilen süre sonunda faaliyetten bağımsız olarak istemcilerin bağlantısı kesilir. Gerekirse anında tekrar bağlanabilirler. (idle timeout belirlenmemişse kullanımı tavsiye edilmez.)
Logout popup window: Etkinleştirildiğinde ve kullanıcılara Captive portal üzerinden izin verildiğinde açılır pencere gözükür.
Redirection URL: Eğer bu kutucuğa bir URL girilirse, istemciler doğrulandıktan sonra ulaşmaya çalıştıkları yerine buna yönlenirler.
Concurrent user logins: Koyu yazılmış yazının yanındaki kutucuk işaretlenirse bir kullanıcının birden fazla bilgisayardan giriş yapması engellenmiş olur. Girilen son bilgisayar dışındaki bilgisayarlar sistemden atılır.
MAC filtering: Bu seçenek seçilirse kullanıcının MAC adresiinin sabit kaldığını kontrol etmek için bir girişimde bulunulmaz. Bu seçenek istemcinin MAC adresinin saptanamadığı durumlarda gereklidir. Etkinleştirildiğinde “RADIUS MAC authentication” seçeneği kullanılamaz.
Per-user bandwith restriction: Bu kısımdaki download ve upload kutucuklarına istenilen değerler girilerek belirtilen kısıtlama sağlanmış olur.

HTTPS login: Enable HTTPS login (HTTPS girişini etkinleştir) kutucuğu işaretlenirse kullanıcı adı ve şifre takipçilerden korumak için HTTPS bağlantısı üzerinden aktarılır.
HTTPS server name: Buraya yazılan sunucu adı sertifikadaki Common Name (Ortak İsim) ile uyuşmalıdır.
HTTPS certificate: Bu alana X.509 PEM biçimindeki onaylı sertifika yapıştırılır.
HTTPS private key: Bu alana RSA özel anahtarı PEM biçimince yapıştırılır.
Portal page contents: Bu alana portal sayfası için HTML dosyası yüklenir (Mevcut olanı korumak için boş bırakılır). Gönder tuşu ve name=”redirurl” ve value=”$PORTAL_REDIRURL$” içeren gizli kısım bulunan form içerdiğinden emin olunmalıdır.
Authentication error page contents: Kimlik doğrulama hatası alındığında bu alana yüklenen HTML dosyasının içeriği görüntülenir.

İstenilen kısımlar doldurulduktan sonra sayfa sonunda yer alan Save tuşuna basılarak yapılandırma tamamlanmış olur 🙂

Bir sonraki yazıda görüşmek üzere.

Atakanı

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir