Kötü haber, millet! Görünüşe göre Fedora 21: 802.1x PEAP / MSCHAPv2 ile kablolu bağlantı çalışmıyor sabit bir hata var . Yani aşağıda cevap ise Mayıs diğer dağıtımlar için işin, Fedora 21 kullanıcıları şans dışında şu anda.
Bunu kendim hiç denemedim, ancak bu yazı Linux istemcisi ve Windows etki alanı arasında 802.1x kurmak için oldukça ayrıntılı bir izlenim içeriyor gibi görünüyor. Sertifika isteği bölümünü not edin: dışa aktarılamayan sertifika sorununuzu çözmelidir. Yazılım sürümleri oldukça eski ( Ubuntu 8.04 ve Beyond Trust'ın Power Broker'ı da aynı şekilde ), ancak temel fikir benim için sağlam görünüyor.
Okumayı kolaylaştırmak için yukarıda belirtilen yayını biçimlendirdim. Alıntı kod kutuları gri gri olmasını sağlar, bu yüzden bıraktım üzgünüm:
Feragatname: Bu kılavuz Linux Ubuntu 8.04 dağıtımı açısından yazılmıştır. Bunun diğer Linux veya Unix dağıtımlarıyla çalışmasını sağlamak için bazı değişikliklerin yapılması gerekebilir.
Linux makinenizin 802.1x üzerinde kimlik doğrulaması için gerekli olan iki ana şey, bir istemci sertifikası ve Windows etki alanındaki bir hesaptır. Kimlik doğrulama işlemi sırasında Linux istemcisi bilgisayar sertifikasını anahtara sunar, bu da sertifikayı doğrulayan ve sertifikanın Active Directory'de atandığı bilgisayar hesabını doğrulayan RADIUS sunucusuna sunar. Sertifika ve bilgisayar hesabı geçerliyse, RADIUS sunucusu anahtarı anahtara geri gönderen kimlik doğrulama isteğini onaylar ve bu da Linux kutusunun bağlı olduğu bağlantı noktasını doğrular.
Yapılması gereken ilk şey Linux bilgisayarınızı Windows etki alanına katmaktır. Linux yerel olarak bir Windows etki alanına katılamadığından, bunu yapmamıza izin vermek için gerekli yazılımı indirmeliyiz. Aynı şekilde, sadece bunu yapmamıza izin veren yazılımlar yapar. Bunu Ubuntu'ya yüklemek çok basit, sadece şu adımları izleyin:
- sudo uygun-güncelleme
- sudo apt-get install aynı şekilde açık
- sudo domainjoin-cli join
enter the FQDN of your domain here
enter your admin account here
, biçimi kullanabilirsiniz user@domain.com
. Ayrıca, GUI sürümünüSystem → Administration → Likewise.
- sudo update-rc.d aynı şekilde açık varsayılanlar
- sudo /etc/init.d/likewise-open başlat
Ubuntu kullanmıyorsanız, yazılımı http://www.likewisesoftware.com/products/likewise_open buradan indirebilirsiniz . Artık alan adı hesabınızı kullanarak çıkış yapıp tekrar giriş yapabilirsiniz. Ben hem biçim user@domain.com
hem de domain \ user'ın çalıştığına inanıyorum . Bunu daha sonra test edeceğim.
Linux makinesinde, bu kimlik doğrulamasının gerçekleşmesi için doğru yapılandırılması gereken üç dosya vardır. Bu üç dosya:
- /etc/wpa_supplicant.conf
- / Etc / network / interfaces
- /etc/openssl/openssl.cnf
İlk önce yazılımı, Linux makinemizin 802.1x özellikli bir ağda kimlik doğrulaması için bir istemci sertifikası kullanmasına izin verecek şekilde yapılandıracağız; wpa_supplicant
bunun için kullanılacaktır.
Wpa_supplicant.conf dosyanızı yapılandırmak için şu adımları izleyin:
- sudo gedit /etc/wpa_supplicant.conf
Aşağıdakileri dosyaya yapıştırın ve kaydedin:
# Where is the control interface located? This is the default path:
ctrl_interface=/var/run/wpa_supplicant
# Who can use the WPA frontend? Replace "0" with a group name if you
# want other users besides root to control it.
# There should be no need to chance this value for a basic configuration:
ctrl_interface_group=0
# IEEE 802.1X works with EAPOL version 2, but the version is defaults
# to 1 because of compatibility problems with a number of wireless
# access points. So we explicitly set it to version 2:
eapol_version=1
# When configuring WPA-Supplicant for use on a wired network, we don't need to
# scan for wireless access points. See the wpa-supplicant documentation if you
# are authenticating through 802.1x on a wireless network:
ap_scan=0
network={
ssid="<enter any name here, it doesn't matter>"
key_mgmt=IEEE8021X
eap=TLS
identity="<FQDN>/computers/<Linux computer name>"
client_cert="/etc/ssl/certs/<your authentication certificate name>.pem"
private_key="/etc/ssl/private/<your private key name>.pem"
}
Şimdi arayüzler dosyanızı düzenlemeliyiz. Arayüz dosyanızı yapılandırmak için şu adımları izleyin:
- sudo gedit / etc / network / arayüzleri
Aşağıdakileri eth0
arayüzün altındaki dosyaya yapıştırın ve kaydedin:
# Configure the system to authenticate with WPA-Supplicant on interface eth0
wpa-iface eth0
# In this case we have a wired network:
wpa-driver wired
# Tell the system we want to use WPA-Supplicant with our configuration file:
wpa-conf /etc/wpa_supplicant.conf
Bir sonraki adım sertifikalarınızı oluşturmak ve kurmaktır. Kendinden imzalı bir sertifika oluşturmanız, ardından oluşturduğumuz kendinden imzalı sertifikayı temel alan bir sertifika isteği oluşturmamız ve ardından sertifikaları yüklememiz gerekecek.
Not: Sertifikalarınızı oluştururken, adınızı her istediğinde, kimlik doğrulaması yapılacak bilgisayarın adını sağlamanız gerekir. Güvende olmak için, adın büyük / küçük harfe duyarlı olması da dahil olmak üzere bilgisayara atandığı şekilde eşleştirilmesini öneririm. Bilgisayarınıza nasıl atandığından emin değilseniz, bir terminal açın ve hostname yazın.
Bu adımları takip et:
sudo openssl req -x509 -nodes -days enter in days how long you want the cert valid for
-newkey rsa: 1024 -keyout enter a name for your private key/certificate here
.pem -out enter a name for your private key/certificate here
.pem
Örnek: sudo openssl req -x509 -nodes -days 365 -newkey rsa: 1024 -keyout privcert.pem -out privcert.pem
openssl req -new -newkey rsa: 1024 -nodes -keyout enter a name for your private key here
.pem - dışarı enter a name for your certificate request here
.pem
Örnek: sudo openssl req -new -newkey rsa: 1024 -nodes -keyout privkey.pem -out certreq.pem
Oluşturulan tüm sertifikalar ana dizininize ( /home/<username>
) yerleştirilir. Sonraki bölüm, önceki adımda oluşturulan sertifika isteğini kullanarak CA'nızdan bir sertifika istemektir. Bunun bir Windows makinesinde yapılması gerekecek, çünkü Linux ve Windows sertifika isterken ve indirirken çok iyi anlaşamıyorlar; Sertifika isteğini kendime e-postayla göndermeyi ve bir Windows makinesinde gerçekleştirmeyi daha kolay buldum.
Sertifika isteğini tamamlamak için şu adımları izleyin:
- Linux makinesindeki ana dizininize gidin ve sertifika istek dosyanızı bulun
- Dosyayı kendinize e-postayla gönderin veya dosyayı bir metin düzenleyicisiyle (gedit gibi) açın ve isteği kopyalayıp bir e-postaya yapıştırın ve kendinize gönderin.
- Windows istemcisinde, CA'nızın web sitesine (örneğin
http://caname/certsrv
) IE kullanarak bir web sayfası açın .
- Sertifika İste'yi seçin
- Gelişmiş Sertifika İsteği
- Şimdi e-postanızı açın ve kendinize e-posta gönderdiğiniz sertifika isteğini alın.
- Kendinize dosyayı e-postayla gönderdiyseniz, not defteri ile açın ve içeriği kopyalayıp Base-64 kodlu sertifika istek kutusuna yapıştırın. Kendinize dosyanın kendisi yerine sertifika isteği dosyasının içeriğini e-postayla gönderdiyseniz, isteği kopyalayıp Base-64 kodlu sertifika isteği kutusuna yapıştırmanız yeterlidir.
- Gönder'i tıklayın ve sertifikayı DER yerine Base-64 biçiminde indirin.
- Sertifikayı masaüstünüze kaydedin ve
your Linux machine name
.pem olarak adlandırın. Sistem otomatik olarak sonuna eklenir .cer
, bu yüzden bunu silin. Linux, sertifika uzantıları için .pem kullanır.
- Bu dosyayı alın ve kendinize e-posta ile gönderin.
- Şimdi, Linux makinenizde sertifikanızı alın ve bir yere kaydedin (tercihen işleri düzenli ve bir arada tutmak için ana klasörünüz).
- Şimdi, yeni aldığınız sertifikanızı
/etc/ssl/certs
klasörünüze kopyalamamız ve özel anahtarınızı / sertifikanızı ve daha önce /etc/ssl/private
klasörünüzde oluşturulan özel anahtarınızı kopyalamamız gerekiyor . Şimdi, yalnızca root'un bunu yapma izni vardır, bu yüzden bunu komut satırından sudo cp /home/<username>/<certificate>.pem /etc/ssl/private
veya yazarak yapabilirsiniz /etc/ssl/certs
. Bu, GUI'den gksudo komutu kullanılarak ve nautilus'a yazarak kopyalayıp yapıştırarak da yapılabilir. Nautilus, Ubuntu'nun kullandığı GUI dosya tarayıcısıdır ve bunu root olarak çalıştırabilir ve yalnızca kökün erişebildiği dizinlere kopyalayıp yapıştırabilirsiniz.
Artık sertifikalarımız yerinde olduğuna göre, openssl'e sertifikaları nasıl kullanmak istediğimizi söylememiz gerekiyor. Bunu yapmak için openssl.cnf dosyasını düzenlemeli ve Linux makinemizi kullanıcı yerine istemci olarak doğrulamasını söylemeliyiz.
Bunu yapmak için şu adımları izleyin:
- sudo gedit /etc/ssl/openssl.cnf
- Yaklaşık yarım aşağı kaydırın ve adlı bir bölüm görmelisiniz
[usr_cert]
. Bu bölümde nsCertType
, "Normal müşteri kullanımı için bu tipiktir" olarak tanımlanan yere ihtiyacımız vardır nsCertType = client, email
ve olması gerekir ve yorumlanır. Bu satırı kaldırın ve e-postayı görünmesi için silin nsCertType = client
. Şimdi dosyayı kaydedin.
Artık Windows etki alanı ortamında çalışan ve 802.1x kullanarak kimlik doğrulaması yapan bir Linux makinesine sahip olmak için gereken her şeyi doğru şekilde yapılandırmalısınız.
Artık geriye kalan şey, Linux'un wpa_supplicant.conf
şimdi eth0
arayüzünüze bağlı olan dosyayı kullanması ve kimlik doğrulaması yapması için ağ hizmetinizi yeniden başlatmaktır . Sadece koş sudo service networking restart
. Arayüzünüz geri geldikten sonra bir IP adresi almazsanız, yazarak DHCP sunucunuzdan manuel olarak bir IP isteyebilirsiniz sudo dhclient
.