J2SSH supported ciphers/Macs - java

I am running a java application which uses J2ssh library to establish the connection to the server.
Last week we migrated to a new IBM server
Here the problem is we are unable to establish FTP/SFTP connection to the new server from my java application. But the connectivity is working fine from other tools.
My doubt is whether the J2SSH library will support the below ciphers/macs ? because these are the ciphers configured in the new IBM server.
Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128
MACs hmac-sha1,umac-64#openssh.com,hmac-ripemd160

It sounds like your using a very outdated version of J2SSH.
You should upgrade to the more recent open source version J2SSH Maverick that supports counter mode ciphers.

Related

What is the difference between client-side connection and server-side connection

I am fairly new to the web development, I have been going over the release notes of the Java on different platforms like linux (oracle hotspot), AIX and hp-ux. I am actually investigating around the TLS support of each version of java on those platforms. I am coming across information(Java 8, AIX) showing the support for client-side connections and server-side connections. What I do not understand is what is the difference between them.
Does it simply mean that the client trying to connect to a server and the other is server trying to connect to a client? If that is the case why is the TLS support different for both of those connections. I would like to understand the general difference between both of them and what it has to do with the TLS support.

Netbeans cannot connect to MSSQL

I don't know if this is the right place to ask, but I have search everywhere for the solution to this problem.
I used to have Netbeans 8.0 32-bit, Java 7 32-bit and MSSQL 2012. I already set up several connection in Server/Database in Netbeans and it was working perfectly. When I install Android Studio it required 64-bit version of Java so I uninstall my old version and install Java 8 64-bit. But Netbeans cannot detect the new version so I uninstall it and install Netbeans 8.1 64-bit. But when I try to connect using my old connection or even create new one, it always say: "Unable to connect. Connection refuse: connect. Verify the connection properties." My access to MSSQL stay the same, using the same username and password, already check the TCP/IP of MSSQL to be 1433, and turn off windows firewall. The only thing I don't know how to check is the host, which used to be 127.0.0.1.
Any way to solve this problem? Should I reverse my Java and Netbeans to 32-bit? Appreciate any help
Connecting to MSSQL using NetBeans
Follow the steps given in this link
More resources which are available on SO are here
One thing to note here is that the JDBC-ODBC Bridge has been removed from Java 8.

Oracle client with SSL on Windows 10

We have applications both native (C++) and Java using Oracle client to connect to database. Our Native applications use OCI and our Java applications use JDBC thin client.
When using SSL to connect to a remote database server from a Windows 10 machine, the connection takes alot of time to establish. This is true for both OCI and JDBC and it is the case only when the client is running on a Windows 10 computer. When the clients run on Windows XP, Windows 7, Windows 8 or Windows 8.1, connections are quick.
Does anyone have faced a similar problem or have an idea when the problem might be ?

What is TLS SSL compatibility with jersey library in java 1.6?

I developed a client to communicate with a distant server using a jersey jackson library in java 1.6 (I am obligated to use this version). -- All is fine so far!
I was informed that the distant server is going to start using e a more recent TLS version to communicate. (now it is TLS V1.0 and the version that will be used is TLS V1.2).
What is the impact that this will have on my application (Taking into account that the operating system can handle a TLS V1.2)?
Remark: I use a simple WebResource to retrieve the answer.
The answer to your question is platform dependent. It depends on the JSSE your client JVM comes packaged with.
The JSSE is the Java Secure Sockets extension. It is a pluggable component of the the JVM that provides the SSL/TLS support for your application. I know the JSSE that comes with the Sun 1.6 JVM for Windows does not support TLS v1.2. IBM's JSSE for their 1.6 JVM does support v1.2.
WRT to how this affects your application: that also depends. If the only protocol your server supports is 1.2 then you must also have that support in your client's JVM/JSSE. If the server will negotiate down to 1.1 then your 1.6 JVM/JSSE will most likely support that.
BTW it really doesn't have anything to do with the versions of Jersey/Jackson your app uses. It really depends on the JVM the application is running on.
If your client app will run on a 1.7 or 1.8 JVM you will get TLS v1.2 support for free from the JVM without any code changes. Also the newer VMs by default deactivate some insecure cipher suites that are enabled by default in most of the 1.6 JVMs out there

SSH protocol version

Currently my application is working with J2SSH and now clients wants to migrate the existing server to IBM. This new server will support only SSH protocol version 2.
I have a query whether J2SSH will support SSH protocol version 2 ?.
Is there a way to find SSH protocol version in my application, currently my application is coded in Java environment with J2SSH for SSH/SFTP channels.
The original open source version of J2SSH only supports the SSH2 protocol. If you attempt to connect to an SSH1 server it will simply fail with a connection exception.
For security reasons you should probably consider migrating your code to the open source version of J2SSH Maverick. This is a similar API from the same author (that's me btw); the difference being that the new API is maintained and current whereas J2SSH has not been maintained for some time as its last release was in 2007.

Categories