0. 현재 개발환경
- OS : Ubuntu 20.4
- Main DB : SQL Server on Linux 2019 Express
- 보조 DB : SQL Server 2008, SQL Server 2014
- Java : Apache Zeppelin 권장 버전 (OPENJDK 1.8)
1. 보다시피 버전차이가 엄청 남.
2. Zeppelin에 jdbc (9.2.1) 연결을 했을때, SQL Server 2014는 아무 문제가 없음
3. SQL Server 2008에 연결시 TLS 버전을 지원 안한다는 오류 발생함.
4. 해당 서버 버전의 TLS 1.0 프로토콜이 너무 오래되서 지원을 안함.
5. 일단.. 해당 서버의 OS인 Windows 2008 R2에 TLS 1.1 / TLS 1.2 설정을 해줌.
6. 동일 에러 발생 - SQL Server 2008 자체에서 TLS 1.0 통신만 지원하는 것으로 판단.
7. jdbc 4.2를 쓰면 된다는 개소리 믿고 삽질하다가.. 다음과 같은 글 발견..
https://blog.naver.com/PostView.nhn?blogId=hgp33&logNo=221293449287&from=search&redirect=Log&widgetTypeCall=true&directAccess=false
8. 뭐 내용은 Java jdbc 보안문제로 동일함.
9. 문득 깨닮음을 얻은 나는 Ubuntu의 JRE에 있는 security 설정을 건들면 되겠다는 생각이 듬.
10. 저 링크에는 싹 지우라고 했지만... 글 자체가 3년이 넘은지라..
내 목적인 TLS 관련 부분만 지움..
jdk.tls.disabledAlgorithms 에서 TLS 1.0, TLS 1.1을 지워주자..
11. 당근 바로 안된다.. 서버 재부팅!!!
12. 해결!
13. 끗! 뭘봐!