Merhaba arkadaşlar, ben Cem Zengin.

Açık kaynaklı ve son derece güçlü bir firewall/router çözümü olan pfSense, kurumsal ağ yönetimlerinde ve orta ölçekli işletmelerde yaygın olarak tercih ediliyor. Dışarıdaki kullanıcıların şirket kaynaklarına (dosya sunucuları, lokal uygulamalar, yönetim arayüzleri) güvenli bir şekilde erişebilmesi için pfSense üzerinde OpenVPN servisini kurup yapılandırmak en esnek ve güvenli çözümlerden biridir.

Bu yazıda, pfSense Web Arayüzü (GUI) üzerinden sıfırdan adım adım OpenVPN Client-to-Site (Uzaktan Erişim) VPN kurulumunu ve kullanıcı sertifikalarının yönetimini ele alacağız.


1. Hazırlık: Sertifika Yetkilisi (CA) ve Sunucu Sertifikası Oluşturma

OpenVPN şifreli el sıkışmalarını gerçekleştirmek için PKI (Public Key Infrastructure) yapısına ihtiyaç duyar. pfSense üzerinde dahili sertifika yöneticisini kullanarak gerekli CA ve sunucu sertifikalarını oluşturalım:

Adım 1: Certificate Authority (CA) Oluşturma

  1. System > Cert. Manager sayfasına gidin.
  2. CA sekmesinde Add butonuna tıklayın:
    • Descriptive name: pfSense-OpenVPN-CA
    • Method: Create an internal Certificate Authority
    • Common Name: pfSense-OpenVPN-CA
    • Diğer bilgileri (Country, State, Organization) şirketinize göre doldurun ve Save deyin.

Adım 2: Sunucu Sertifikası (Server Certificate) Oluşturma

  1. Aynı sayfada Certificates sekmesine geçin ve Add/Sign butonuna tıklayın:
    • Method: Create an internal Certificate
    • Descriptive name: OpenVPN-Server-Cert
    • Signing Authority: pfSense-OpenVPN-CA (Oluşturduğumuz CA)
    • Type: Server Certificate (Kritik seçim!)
    • Common Name: Dış bacak (WAN) IP adresinizi veya alan adınızı yazın.
    • Save diyerek kaydedin.

2. OpenVPN Sunucusunun Sihirbaz (Wizard) ile Kurulması

pfSense üzerindeki kurulum sihirbazını kullanarak temel OpenVPN parametrelerini yapılandıralım:

  1. VPN > OpenVPN > Wizards sayfasına gidin.
  2. Type of Server: Local User Access seçip Next deyin.
  3. Certificate Authority: Oluşturduğumuz pfSense-OpenVPN-CA sertifikasını seçin.
  4. Server Certificate: Oluşturduğumuz OpenVPN-Server-Cert sertifikasını seçin.
  5. Tunnel Settings:
    • Interface: WAN (Kullanıcıların dışarıdan geleceği hat)
    • Protocol: UDP on IPv4 only
    • Local Port: 1194 (Varsayılan OpenVPN portu)
    • Tunnel Network: VPN kullanıcılarına dağıtılacak IP havuzu (Örn: 10.8.0.0/24)
    • Local Network: Erişilecek yerel ağ blokları (Örn: 192.168.10.0/24)
    • Redirect Gateway: Eğer tüm internet trafiğinin de pfSense üzerinden akmasını istiyorsanız aktif edin. (Hattı yormamak için genellikle kapalı bırakılır ve split-tunnel uygulanır).
    • Concurrent Connections: Aynı anda bağlanabilecek maksimum kullanıcı sayısı.
  6. Firewall Rules:
    • Firewall Rule: WAN bacağına OpenVPN portu için kural ekle kutusunu işaretleyin.
    • Traffic Rule: Tünel trafiğine izin ver kutusunu işaretleyin.
  7. Finish diyerek sihirbazı tamamlayın.

3. Kullanıcıların Oluşturulması ve Sertifika Atanması

Kullanıcıların sisteme kullanıcı adı/şifre ve kendilerine özel bir sertifika ile bağlanmasını sağlayarak çift katmanlı güvenlik (Two-Factor Benzeri) kuracağız.

  1. System > User Manager sayfasına gidin.
  2. Add butonuna tıklayarak yeni bir kullanıcı oluşturun:
    • Username: vpnkullanici
    • Password: Kullanıcının şifresi
  3. Sayfayı aşağı kaydırmadan önce Certificate bölümündeki Click to create a user certificate kutucuğunu işaretleyin:
    • Method: Create an internal Certificate
    • Descriptive name: vpnkullanici-Cert
    • Signing Authority: pfSense-OpenVPN-CA
  4. Save butonuna basarak kullanıcıyı ve sertifikasını kaydedin.

4. İstemci Dışa Aktarma Paketi (OpenVPN Client Export) Kurulumu

Kullanıcıların bilgisayarlarına yükleyecekleri hazır kurulum paketlerini (.ovpn dosyalarını) pfSense üzerinden kolayca indirebilmek için OpenVPN Client Export paketini kuralım:

  1. System > Package Manager > Available Packages sayfasına gidin.
  2. Arama kısmına openvpn-client-export yazıp aratın ve paketi yükleyin (Install).
  3. Yükleme bittikten sonra VPN > OpenVPN > Client Export menüsü aktif olacaktır.
  4. Bu sayfada en alta indiğinizde oluşturduğumuz vpnkullanici ismini göreceksiniz.
  5. Export Type kısmından Inline Configuration (Most Clients) veya Windows için hazır yükleyici olan Standard Windows Installer seçeneğini seçerek dosyayı bilgisayarınıza indirin.

5. Bağlantıyı Test Etme ve Durum İzleme

  1. Kullanıcının bilgisayarına resmi OpenVPN Connect istemcisini yükleyin.
  2. pfSense üzerinden indirdiğiniz .ovpn uzantılı konfigürasyon dosyasını uygulamaya sürükleyip bırakarak içeri aktarın.
  3. Oluşturduğunuz kullanıcı adı ve şifreyi girerek Connect butonuna basın. Tünel başarıyla kurulacaktır.

Bağlı Kullanıcıları Canlı İzleme (Status):

pfSense arayüzünde Status > OpenVPN sayfasına giderek, o anda hangi kullanıcının hangi dış IP’den bağlandığını, VPN içinde hangi IP’yi aldığını ve ne kadar trafik transfer ettiğini anlık olarak izleyebilir ve gerektiğinde kullanıcı bağlantısını manuel olarak sonlandırabilirsiniz (Kill).

Kurulum veya yönlendirme aşamasında karşılaştığınız sorunları yorumlar bölümünde benimle paylaşabilirsiniz. Bir sonraki teknik yazıda görüşmek üzere!