Our Community is getting an upgrade! To get everything ready for the relaunch, we’ll be placing the site in read-only mode starting September 21st.
We really appreciate your understanding while we get things set up behind the scenes. Catch up on all the exciting details about the move here.
Need help or have questions? Drop us a line at [email protected]
Created on 02-10-2017 09:46 PM - edited 09-16-2022 04:03 AM
I'm setting up a 4 node HDP 2.5 cluster with a requirement to encrypt all data in transit. I've been following the documentation from here: https://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.5.0/bk_security/content/ch_hdp-security-guide-w...
I am using a certificate signed by my company's Issuing CA. The following is in my server.keystore.jks (sensitive bits masked)
<server's FQDN>, Feb 10, 2017, PrivateKeyEntry, Certificate fingerprint (SHA1): B6:DA:29:57:27:10:D3:97:8D:CD:49:6C:87:82:9F:64:DD:XX:XX:XX <company> issuing ca, Feb 10, 2017, trustedCertEntry, Certificate fingerprint (SHA1): F7:20:77:9E:08:4F:20:2E:E6:8C:78:5D:EA:39:91:6F:D7:XX:XX:XX <company> root ca, Feb 10, 2017, trustedCertEntry, Certificate fingerprint (SHA1): 8D:4A:EA:A6:43:71:83:FE:44:FA:E5:04:D7:E3:5B:3A:45:XX:XX:XX
After configuring the system to use the keys and restarting the HDFS service in Ambari, I can get the DataNode to start up. When the NameNode starts up, the service comes up but then it does a check using curl. The following error shows up in the error log:
resource_management.core.exceptions.Fail: Execution of 'curl -sS -L -w '%{http_code}' -X GET -k 'https://<server's FQDN>:50470/webhdfs/v1/tmp?op=GETFILESTATUS&user.name=hdfs' 1>/tmp/tmpiWgx4l 2>/tmp/tmpHLEISr' returned 35.
curl: (35) NSS: client certificate not found (nickname not specified)
000I get the same result if I try to run the same command on the command line. In addition, if I try to access the same URL from Chrome, I'm getting ERR_BAD_SSL_CLIENT_AUTH_CERT back. I don't have a lot of experience setting up SSL/TLS and am pretty much stuck at this point. Any help would be greatly appreciated.
Thanks,
Mike
Created 02-10-2017 09:52 PM
You will have to disable the client auth at HDFS side.
set hadoop.ssl.require.client.cert=false and restart the services.
You can follow the article that I have published some time back at https://community.hortonworks.com/articles/52875/enable-https-for-hdfs.html
Created 02-10-2017 09:52 PM
You will have to disable the client auth at HDFS side.
set hadoop.ssl.require.client.cert=false and restart the services.
You can follow the article that I have published some time back at https://community.hortonworks.com/articles/52875/enable-https-for-hdfs.html
Created 02-10-2017 09:54 PM
hadoop.ssl.require.client.cert is already set to false in core-site.xml is already set to false
Created 02-10-2017 09:58 PM
In keystore files have only corresponding cert - remove truststore certs and other stuff, since we are not defining any alias name in the configurations.
Ex: Correct keystore file should look alike if i list it like,
keytool -list -keystore skeystore.jks
-------------
Keystore type: JKS Keystore provider: SUN Your keystore contains 1 entry apappu.hdp.com, Nov 16, 2016, PrivateKeyEntry, Certificate fingerprint (SHA1): 50:2B:EF:1F:58:07:C3:0A:C6:29:B8:49:7B:98:1B:DD:A0:A8:33:A9
-------------
If you observe in the outout - there is no trustedCertEntry.
Created 02-10-2017 10:18 PM
@apappu Going through your article you linked, I found the issue. dfs.client.https.need-auth was set to true in hdfs-site.xml. The error cleared after that and NameNode came up with a valid SSL certificate! You just made my Friday 🙂
Created 02-10-2017 10:26 PM
thats good to hear , feel free to add me for any SSL issues.