Summary: | Can not connect with 802.1x TLS secured wired network | ||
---|---|---|---|
Product: | [Unmaintained] Network Management | Reporter: | FilipK <don333> |
Component: | Plasma Widget | Assignee: | Sebastian Kügler <sebas> |
Status: | RESOLVED UNMAINTAINED | ||
Severity: | normal | CC: | afiestas, dima, ilia-kats, johnsc301, lamarque, wstephenson |
Priority: | NOR | ||
Version: | 0.9 | ||
Target Milestone: | --- | ||
Platform: | openSUSE | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: |
Log fragment of /var/log/NetworkManager using nm-applet to connect
Log of /var/log/NetworkManager using nm-applet to connect after disabling 2 troubling scripts Log of /var/log/NetworkManager using plasmoid to connect after disabling 2 troubling scripts Log of /var/log/NetworkManager using plasmoid from git to connect Log of /var/log/NetworkManager using plasmoid from git to connect with client cert supplied .xsession-errors log .xsession-errors log .xsession-errors log .xsession-errors log with no stripping |
Description
FilipK
2011-08-12 07:45:55 UTC
The log file you attached indicates that two of your dispatch scripts ended with errors, could you please fix those errors or remove those scripts and try again? Created attachment 62889 [details]
Log of /var/log/NetworkManager using nm-applet to connect after disabling 2 troubling scripts
Created attachment 62890 [details]
Log of /var/log/NetworkManager using plasmoid to connect after disabling 2 troubling scripts
I've disabled the two scripts and tried again with both the plasmoid and nm-applet. The results are the same (logs attached - sorry I didn't send NetworkManager logs from using plasmoid before). Could you try to compile and install the current git master? I think this should be fixed there. Created attachment 63134 [details]
Log of /var/log/NetworkManager using plasmoid from git to connect
Unfortunately after trying latest Network Management plasmoid from git I still can not establish the connection. There is an improvement however as I am able to select a CA certificate file and not have plasmoid it overwrite with "Use system CA certs" after saving.
I am curious if perhaps the message "NetworkManager[5066]: <warn> invalid connection: 'NMSetting8021x' / 'client-cert' invalid: 2" isn't suggesting that the plasmoid doesn't like an empty "User certificate" field (I always use "CA certificate" together with "Private key" and leave "User certificate" empty - that way it works using Gnome nm-applet and these are the settings I use when manually configuring wpa_supplicant).
That's interesting, since the nm-applet settings in your first post have a client-cert field, but no private-key field. Could you verify that you select identical settings and post them here again, for both nm-applet and Plasma NM? OK, I've been reading libnm-util source code, and stumbled onto this interesting piece of code: /* As required by NM and wpa_supplicant, set the client-cert * property to the same PKCS#12 data. */ if (format == NM_CRYPTO_FILE_FORMAT_PKCS12) { if (priv->client_cert) g_byte_array_free (priv->client_cert, TRUE); priv->client_cert = g_byte_array_sized_new (priv->private_key->len); g_byte_array_append (priv->client_cert, priv->private_key->data, priv->private_key->len); } Apparently, if your private key is in PKCS12 format (which can contain both client certificate and private key), the client cert is set to the same file automatically, and as far as I can see from your logs, you have a PKCS12 key. Could you just select the same file for the client cert as for the private key in Plasma NM and try again? As for supplying values for input fields in the plasmoid and nm-applet I am sure I always use the same - "Identity", "CA certificate", "Private key" and "Private key password". For confirmation, here is the configuration for wpa_supplicant that I use for ifconfig (I don't have nm-applet enabled and Network plasmoid does still not work): ctrl_interface=/var/run/wpa_supplicant ctrl_interface_group=0 ap_scan=0 network={ key_mgmt=WPA-EAP proto=WPA2 pairwise=CCMP TKIP eap=TLS identity="filip@example.com" ca_cert="/home/filip/Documents/PSNC.der" private_key="/home/filip/Documents/filip@example.com.p12" private_key_passwd="SECRET" } Created attachment 63138 [details]
Log of /var/log/NetworkManager using plasmoid from git to connect with client cert supplied
I tried entering the same file as "Client certificate". The outcome is different - plasmoid does initiate connection establishment (there is visible confirmation). Shortly after that I get a popup asking me to provide credentials (even though I entered my private key secret). No matter what do I enter in the secret field, the popup reappears.
I've also tried converting the PKCS12 certificate to PEM format and use that instead. The results are the same as with PKCS12.
Can you attach your ~/.xsession-errors? Created attachment 63149 [details]
.xsession-errors log
I've cleared .xsession-errors before restarting the network service and the logs are from clicking OK in YAST Network Settings to the settings window disappearing (the 802.1x-secured connection is set to connect automatically).
The log doesn't contain anything related to Plasma NM. Can you run kdebugdialog and verify that all components of NetworkManagement are writing debug output? Created attachment 63208 [details]
.xsession-errors log
I checked all possible NetworkManager-related options in kdebugdialog. There's little difference in .xsession-errors however.
Can you add -DCMAKE_BUILD_TYPE=Debug to the cmake command line, recompile and check again? Created attachment 63238 [details]
.xsession-errors log
Stripped .xsession-errors after reboot, recompiled with DEBUG.
Better, but I don't see anything indicating that a connection was activated, much less passwords were fetched by NM. When you say you "stripped" it, are you sure you didn't strip too much? Can you try disconnecting, clearing your .xsession-errors, connecting manually and attaching the resulting .xsession-errors? Created attachment 63433 [details]
.xsession-errors log with no stripping
I've disabled every option and enabled all network-related options in kdebugdialog. Then rebooted with clear .xsession-errors.
This line in the log indicates NetworkManager is not running: kded(3896)/networkstatus NetworkStatusModule::status: status: 0 or at least networkstatus module lost contact with NetworkManager. The log still does not show any signal that a connection is in progress. Also, you used 0.9.1git20110503-8.1 to create that log, right? Do not use 0.9.svn1192577-7.2, it is too old (almost a year) and several things changed since then. This is line has something wrong: NetworkInterfaceActivatableProvider::handleAdd: Added connection is "802-11-wireless" interface type: 1 name: "eth0" driver: "r8169" the connection type should be wired, not wireless, although "interface type: 1" indicates it is indeed ethernet. (In reply to comment #19) > This line in the log indicates NetworkManager is not running: > > kded(3896)/networkstatus NetworkStatusModule::status: status: 0 > > or at least networkstatus module lost contact with NetworkManager. The log > still does not show any signal that a connection is in progress. > That is right and that's what I wrote in the original bug description - "No visible results, connection is not established." I can't make the networkmanager plasmoid connect neither by clicking on the connection name nor by setting it to autoconnect and restarting network using Yast. > Also, you used 0.9.1git20110503-8.1 to create that log, right? Do not use > 0.9.svn1192577-7.2, it is too old (almost a year) and several things > changed since then. > I'm using a version pulled from KDE git repo. The last commit I can see in that version is 939be70cb264048f0c4ca19bb4bdea901674b1ac and this is the version I used when generating the .xsession-errors log. > This is line has something wrong: > > NetworkInterfaceActivatableProvider::handleAdd: Added connection is > "802-11-wireless" interface type: 1 name: "eth0" driver: "r8169" > > the connection type should be wired, not wireless, although "interface type: 1" > indicates it is indeed ethernet. > I don't know where does "802-11-wireless" come from, the connection is certainly a wired one. (In reply to comment #20) > (In reply to comment #19) > > This line in the log indicates NetworkManager is not running: > > > > kded(3896)/networkstatus NetworkStatusModule::status: status: 0 > > > > or at least networkstatus module lost contact with NetworkManager. The log > > still does not show any signal that a connection is in progress. > > > That is right and that's what I wrote in the original bug description - "No > visible results, connection is not established." I can't make the > networkmanager plasmoid connect neither by clicking on the connection name nor > by setting it to autoconnect and restarting network using Yast. That happens when NetworkManager invalidates the connection, which is the case here. The message NetworkManager[5066]: <warn> invalid connection: 'NMSetting8021x' / 'client-cert' invalid: 2 is not a warning, it is error message indeed. When it appears NM refuses to activate the connection. (In reply to comment #21) > > NetworkManager[5066]: <warn> invalid connection: 'NMSetting8021x' / > 'client-cert' invalid: 2 > > is not a warning, it is error message indeed. When it appears NM refuses to > activate the connection. Anything I could do about that? Perhaps you could point me at the source files to look at? (In reply to comment #22) > (In reply to comment #21) > > > > NetworkManager[5066]: <warn> invalid connection: 'NMSetting8021x' / > > 'client-cert' invalid: 2 > > > > is not a warning, it is error message indeed. When it appears NM refuses to > > activate the connection. > > Anything I could do about that? Perhaps you could point me at the source files > to look at? Comment #8 explains what is happening. We need to implement that to really fix this problem. Reassign Network Management bugs to new maintainer. Have a lot of fun, Lamarque! I've just upgraded my system to OpenSUSE 12.1 that has NetworkManager 0.9.1.90 and plasmoid-networkmanagement version 0.9.1git20111027. To my great relief I can finally say that 802.1x TLS security in wired (and wireless - tried that too) connections using KDE 4.7 network plasmoid WORKS! The only inconvenience is that I have to input both "User certificate" and "Private key" fields even though the first one isn't necessary. That however might be because I have the certificate in a PKCS12 file. Other than that it's all running fine. Git commit 7fba026cd423d02e25cf5c58d60bfd5db145ea51 by Lamarque V. Souza. Committed on 23/07/2012 at 04:44. Pushed by lvsouza into branch 'master'. Add two tooltips to explain how to correctly configure TLS encryption using PKSC12 private keys. M +10 -2 libs/ui/security/eapmethodtlsbase.ui http://commits.kde.org/networkmanagement/7fba026cd423d02e25cf5c58d60bfd5db145ea51 Git commit f6b78e47d72dfeb5e7100cff285e487857ccbd4c by Lamarque V. Souza. Committed on 23/07/2012 at 04:44. Pushed by lvsouza into branch 'nm09'. Add two tooltips to explain how to correctly configure TLS encryption using PKSC12 private keys. (cherry picked from commit 7fba026cd423d02e25cf5c58d60bfd5db145ea51) M +10 -2 libs/ui/security/eapmethodtlsbase.ui http://commits.kde.org/networkmanagement/f6b78e47d72dfeb5e7100cff285e487857ccbd4c Git commit d319529a9ab95b18e0c1d4e982b6baa2af4571cf by Lamarque V. Souza. Committed on 24/07/2012 at 02:55. Pushed by lvsouza into branch 'master'. Fix misspelling introduced by commit 7fba026cd423d02e25cf5c58d60bfd5db145ea51. M +2 -2 libs/ui/security/eapmethodtlsbase.ui http://commits.kde.org/networkmanagement/d319529a9ab95b18e0c1d4e982b6baa2af4571cf Git commit b4255db35b308aa05d1d6beff9935d5278be908a by Lamarque V. Souza. Committed on 24/07/2012 at 02:55. Pushed by lvsouza into branch 'nm09'. Fix misspelling introduced by commit f6b78e47d72dfeb5e7100cff285e487857ccbd4c. (cherry picked from commit d319529a9ab95b18e0c1d4e982b6baa2af4571cf) M +2 -2 libs/ui/security/eapmethodtlsbase.ui M +1 -1 plasma_nm_version.h http://commits.kde.org/networkmanagement/b4255db35b308aa05d1d6beff9935d5278be908a Is this bug still valid? (In reply to comment #30) > Is this bug still valid? Yes, read comment #c23 I'm having this problem using kdeplasma-applets-plasma-nm 0.9.3.4-3 on Arch Linux KDE 4.14.1 I'm trying to connect to AirVPN, and they use TLS certificates When I "connect" to their Canada servers, my ip still shows my current location However, when I use nm-applet (gnome), the ip changes as it is supposed to The only work around I have is to import my OpenVPN configuration using the gnome applet. After uninstalling the gnome applet altogether, the KDE applet works fine with the connections. But they must be imported using the Gnome applet first. Note: this is wireless Hello! Sorry to be the bearer of bad news, but this project has been unmaintained for many years and I will be closing this bug. Please test again with the latest version and file a new bug in plasma-nm. Thank you! |