Quickbooks Integration SSL Local Issuer issue - ssl

I have integrated Quickbooks invoice feature on my website.
But I am facing issue of SSL Local Issuer.
Here is the error details:
Fatal error: Uncaught QuickBooksOnline\API\Exception\SdkException: [0]: cURL error during making API call. cURL Error Number:[60] with error:[SSL certificate problem: unable to get local issuer certificate]...
Could someone advise me, how to fix this issue?
Many Thanks

Did u enabled SSL for your website?(Quickbooks app will communicate with a secure site) this link will help to solve your issue :
PHP cURL error code 60
QB Library file edit link
cURL error during making API call. cURL Error Number:[60] SSL certificate prob: self signed certificate in certificate chain

Searched a lot about this. Finally, I talked to QBO support for this.
They told me that Sometimes when we install SSL certificate on the server so it conflicts with the API inbuilt certificates. And that is the reason why the API throw SSL certificate not exist error on SSL certified website.
So they suggested my best comment out the API inbuilt certificate verification syntax.
And to achieve this we just need to comment out line with verifySSL() calling. And this is in the Same file mentioned above.
But Thank you for the help on this. I really appreciate it a lot.

Related

How to resolve moodle Failure Signing Data: error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt - SHA256?

I am developing a Moodle website using SSO. I have configured auth_saml2 moodle plugin and I have tested with test login. I am getting error
Exception: Failure Signing Data: error: 06065064: digital envelope routines: EVP_DecryptFinal_ex: bad decrypt - SHA256
I have tried SHA384, SHA512 algorith but still am getting same error.
Error screenshot.
The error message has been reported on Github in a couple of tickets.
https://github.com/catalyst/moodle-auth_saml2/issues/387
https://github.com/catalyst/moodle-auth_saml2/issues/380
Looks like the certificate might need to be regenerated?
Also a post on Moodle, they switched to OpenID
https://moodle.org/mod/forum/discuss.php?d=397317
The certificate needs to be regenerated, from the saml settings click the 'Regenerate certificate' button, or go here:
http://moodle.example/auth/saml2/regenerate.php
and resave the certificate. You will need to re-import the SP metadata again with your IdP.

client certificate not sent by postman

Can anyone shet some light on how I can debug the matching of certificates configured in Postman?
Problem:
I’m trying to connect to a REST service using a SSL client certificate. I configured it in the settings tab the same way as in set-and-view-ssl-certificates-with-postman
When checking the console I don’t see the certificate being sent and get failure:c:\projects\electron\vendor\node\deps\openssl\openssl\ssl\s3_pkt.c:1494:SSL alert number 40
Context:
Postman v 6.4.2 running on windows 10
(for security reasons some information below replaced by dummy info)
Using the same certificate/key/password I can setup a connection using openssl. (checked for validity of certificates, TSL v1.1 and v1.2 supported, no SNI issues)
The server certificate is signed by a trusted CA (I tested with both --SSL certificate verification-- on and off )
In the Postman console I dont see the certifciate being sent.
---- [console output] ----
GET https://somehost:443/somepath?someparameter=9076443&somedate=2017-02-17T00:00:00.000
Error: write EPROTO 101057795:error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure:c:\projects\electron\vendor\node\deps\openssl\openssl\ssl\s3_pkt.c:1494:SSL alert number 40 101057795:error:1409E0E5:SSL routines:ssl3_write_bytes:ssl handshake failure:c:\projects\electron\vendor\node\deps\openssl\openssl\ssl\s3_pkt.c:659:
Request Headers:
appid:“42”
cache-control:“no-cache”
ipaddress:“192.68.1.1”
postman-token:“some-token”
role:“Applicatie”
userid:“6x9”
---- [end console output] ----
image of certificate configuration
I matched, matched and rematched the hostname
A search on the interweb did not learn me anything I did not try yet…
Questions
Is there any debug option that will show the way the certificates are matched
is there any way I can force postman to pick a configured certificate
any other ideas on how to proceed on this problem
any help appreciated
Additional info
Monitoring with wireshark shows no certificate is sent.
(Postman console did not show a certificate being sent. I assume from examples that it will log which certificates it will/does send for a given request)
snippet wireshark output
Postman app in chrome
it does work from chrome, using the chrome keystore
Using the pk12 form of the same key (original postman request uses the .cer form) imported into the chrome keystore, the requests work.
Chrome app will not do
Obvious question is: “why not keep using the chrome app”
because its depricated and we use the newer 6.x test functions not supported in version 5.x
Question posted on Postman help forum with no answer about a week ago:
OP on postman helpforum
Additional additional info
It works on newman
I had same issue when I typed path to CRT and KEY files instead of using file dialog.
Just click Choose File button instead of pasting file path when adding certificate.
If you can download postman app then there is an option under preference/certificate and under there is an option 'Client Certificate'.
You need to provide both .cert and .key file into respective section, provide host name and key password if any. Click "save". next time you send a request matching hostname , postman app will send the certificate along with the way. You can validate in console output.

Runscope Error contacting host SSL

I am using Runscope only for a short time now however it seems pretty straight forward. I have had no problem with other APIs, however for this current one I am having problems.
The error I am getting is the following:
Error contacting host SSL: certificate is valid for *.hostgator.com,
hostgator.com, not NflArrest.com To turn off SSL verification for
this test, change your test's behavior settings, see
https://www.runscope.com/docs/api-testing/behaviors for more details
From the documentation I read here:
SSL Certificate Verification
By default, Runscope will only relay responses if the SSL certificate from the upstream API provider is valid and trusted. To bypass this protection (for instance if you're using a self-signed certificate) on a per-bucket basis, select Bucket Settings in the left sidebar and deselect the option to 'Verify SSL Certificates'.
I have done that so to my knowledge it should work. However I still get the same error. The API documentation I am using can be found here.
Test's don't use the bucket setting, that's just for Gateway URLs/Traffic Inspector. To disable SSL verification in your test, expand the "Environment" section at the top of the test editor, select "Behaviors" and untoggle it there.

Paypal IPN certificate Invalid

I have been facing this issue with the Paypal IPN since last couple of days
I had this similar problem before which got resolved with the help of the post Paypal IPN: certificate verify failed
cURL error: [60] SSL certificate problem, verify that the CA cert is OK. Details:error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
it worked fine till couple of days back and suddenly started breaking the flow
I tried by setting the curl_setopt($ch, CURLOPT_SSLVERSION, 1); but it didnt helped
Any ideas what could be the possible cause ?

How to use Gmail as your IMAP server for Youtrack?

I want to create a helpdesk project following this great tutorial : http://blog.jetbrains.com/youtrack/2014/02/using-youtrack-as-a-help-desk/
I want to set the parameters of my mailbox using a Gmail adress but I don't know how to obtain a SSL key from Gmail.
Without it, I have "Connection timed out" error. I know where to add the SSL key in Youtrack, but I need a file (JKS or PKCS12 format).
My settings:
Protocol:IMAPS
Host:imap.gmail.com
Port:993
Login:mylogin
Password:mypassword
Select SSL key: nothing
Connection timeout:60
Socket timeout:60
Please help :)
Here how to obtain Gmail trusted root keys (from Google PKI FAQ):
Google may decide to have its intermediate signed by another root at any point in time, so you should have an update mechanism in place for the trusted roots you ship with your product. If you are developing code intended to connect to a Google property, we recommend you include a wide set of trustworthy roots. We made an example available as a PEM file here.
PEM file provided can be manually converted to PKCS12 with, for instance, OpenSSL tool.
I suspect, however, that installing a cert won't solve the issue. "Select SSL key" likely stands for client (i.e. YouTrack) certificate, which is not required by Gmail. Please check the following:
If IMAP is enabled in your GMail account
this recipe to make sure Gmail is not blocking new client application explicitly