Notlarınızda bir common name ve bir adres var, ve hepsi istemciyi kaldırıyor gibi görünen üç komut. İstediğinizi yalnızca biri yapar ve seçim, şu anda çalışan oturumu bitirmeniz, sonraki oturum açmayı reddetmeniz yoksa bağlanma hakkını tamamen almanız gerekip gerekmediğine bağlıdır. Bir şeye dokunmadan önce gerçekte sahip olduğunuz kimliği okuyun, çünkü OpenVPN havuzu aynı tünel adresini daha sonra başka bir oturuma verir.

Gerçekte hangi kimliğe sahipsiniz

Sürüm 3 durum dosyası olağan başlangıç noktasıdır. CLIENT_LIST bölümü common name'i, gerçek adresi, bayt sayaçlarını ve bağlantı süresini taşır; ROUTING TABLE bölümü sanal bir adresi son başvuru zaman damgasıyla birlikte common name'e eşler. Common name kararlı kimliktir. Sanal adres bir atamadır ve NAT arkasındaki gerçek adres, sunucuda hiçbir şey değişmeden oturumlar arasında değişebilir.

Yönetim arayüzü status komutuyla benzer bir görünüm sunar ve her oturum için bir istemci ID'si ekler. client-kill tam da bu ID'yi bekler ve bu tünel adresi değildir. Bağlantı anında hangi common name'in hangi adresi aldığını bilmeniz gerekiyorsa, client-connect betiğinin ortamında her ikisi ve güvenilen dış adres bulunur, ancak o betik OpenVPN kullanıcısı olarak çalışır ve yazılabilir bir günlük yoluna ihtiyaç duyar.

What you holdWhere it came fromWhat it can act on
Common nameCLIENT_LIST, or the auth hookkill, and credential revocation
Client IDstatus on the management socketclient-kill, that one session
Tunnel addressROUTING TABLE, client-connect environmentNothing durable, the address is recycled

Şimdi öldür, girişte reddet, kalıcı olarak iptal et

Yönetim arayüzündeki iki kaldırma komutu da oturum eylemidir. kill bir common name ya da gerçek adres ve port alır; client-kill istemci ID'sini alır ve o örneği hemen sonlandırır. Hiçbiri engel değildir: geçerli sertifikası ve parolası olan atılmış bir istemci saniyeler içinde yeniden bağlanır, bu bir test eşini geri dönüştürürken iyidir ve bir dizüstü bilgisayar çalındığında işe yaramaz.

client-deny farklı türde bir karardır. Genellikle bir kimlik doğrulama ya da client-connect kancasından verilir ve oturumu bir gerekçeyle reddeder, bu yüzden bağlantıyı kesen değil oturum açmayı reddeden bir politikaya uyar. Belgeler ayrıca TLS yeniden müzakere sırasında verilen bir reddin, yeniden müzakere edilen anahtarı geçersiz kıldığını, mevcut oturumun ise geçiş penceresi kapanana kadar sürebileceğini uyarır. Gereksinim istemcinin hemen gitmesiyse, belgelenmiş yanıt client-kill.

Kalıcı kaldırma tüm bunların altındadır. Sertifikayı iptal edin ve crl-verify'in sunucunun gerçekten yeniden yüklediği bir listeye işaret ettiğinden emin olun, ccd dizinindeki istemciye özgü yapılandırma dosyasını devre dışı bırakın ya da kimlik doğrulama kancasının sorguladığı arka uçta hesabı devre dışı bırakın. İptal de anlık değildir: varsayılan reneg-sec ayarlarıyla kurulmuş bir oturum yeniden müzakere edene kadar çalışmaya devam edebilir, bu yüzden oturum eylemi ve kimlik bilgisi eylemi birbirini tamamlar, alternatif değildir.

Yönetim soketi boş mu?

Yönetim arayüzü aynı anda tek bir istemciye hizmet eder. Bir GUI ya da izleme arka plan süreci bağlantıyı zaten tutuyorsa, betiğiniz onun yanına eklenemez ve istemciye bağlı olarak temiz biçimde başarısız olmak yerine mevcut olanı dışarı itebilirsiniz. Parolası o soket üzerinden düz metin olarak gider, bu yüzden yerel bir adrese ya da unix soketine aittir, asla genel bir arayüze değil.

Soketi alamadığınızda hâlâ seçenekleriniz var ve hepsi daha yavaştır. Kontrol ediyorsanız önce GUI oturumunu bırakın ya da kimlik bilgisi katmanı yolunu kabul edip bir sonraki yeniden müzakereyi bekleyin. Yapmamanız gereken şey, bir istemciden kurtulmak için hizmeti yeniden başlatmaktır, çünkü bu diğer tüm oturumları da bitirir ve bu oturumun durum dosyası kanıtlarını yok eder.

Canlı bir sunucuda çalıştırdığım sıra

Bağlanın, mevcut durumu okuyun, az önce okuduğunuz ID üzerinde işlem yapın, sonra yeniden okuyun. Bir belgeden kopyalanan değerler yanlış kişiyi öldürmenin en yaygın yoludur.

status                     # note the client ID and common name
client-kill 3              # end that session now
kill Test-Client           # alternative: by common name
status                     # confirm the session is gone

Yukarıdaki ad ve numara yer tutucudur ve ID'ler diğer istemciler bağlantıyı kestikten sonra yeniden kullanılır. Bir şeyi tamamlandı olarak yazmadan önce satırın olmadığını doğrulayın ve bağlı istemci sayısının birkaç değil bir arttığını kontrol edin.

Uzakta kaldığını doğrulayın

Common name'i, tünel adresini, dış adresi ve kaldırma dakikasını kaydedin. Aynı common name bir dakika sonra yeniden görünürse oturum eylemi işe yaramış, kimlik bilgisi katmanı yaramamıştır; bu, hiç yürürlüğe girmemiş bir komutun onarımından tamamen farklıdır.

Sonra istemci tarafından test edin. İptal edilmiş bir sertifika bir sonraki el sıkışmada başarısız olmalıdır; hâlâ bağlanıyorsa CRL hiç okunmuyordur ve bu, bildirmeye değer bulgudur. Eylemi neyi bitirmeniz gerektiğine göre seçin, ikinci bir status ile doğrulayın ve yanıt oturumdan daha uzun sürmesi gerektiğinde kimlik bilgisi katmanını düzeltin.

İlgili makaleler