톰캣 8.5 OPENSSL 인증서 설치 개발 테스트!!

회원가입을 할려고 하니NICE인증을 받아야 합니다. 

그런데 HTTP에서는 인증후 콜이 안되네요 브라우저 단에서 막아버리는것 같습니다. 

안전하지 않은 정보를 제출하려 함 허용 

제출하려는 정보가 보안되지 않음 등 엣지나 크롬에서 서버를 확인하니 호출자체가 오지 않네요. 

OPENSSL을 설치했습니다. 

http://slproweb.com/products/Win32OpenSSL.html

 

Win32/Win64 OpenSSL Installer for Windows - Shining Light Productions

Minimum system requirements: Windows XP or later 32MB RAM 200MHz CPU 30MB hard drive space Recommended system requirements: Windows XP or later 128MB RAM 500MHz CPU 300MB hard drive space September 9, 2021 - OpenSSL 3.0 is available. Users should currently

slproweb.com

커맨드에서 입력합니다. (도스창)

① 개인키 생성
# openssl genrsa -des3 -out private.pem 2048

② 인증 요청서(CSR) 파일 생성
# openssl req -new -key private.pem -out private.csr

③ rootCA 기본키 생성
# openssl genrsa -aes256 -out rootCA.pem 2048

④ rootCA CSR 생성
# openssl req -x509 -new -nodes -key rootCA.pem -days 3650 -out rootCA.csr

⑤ 인증서(CRT) 생성
# openssl x509 -req -in private.csr -CA rootCA.csr -CAkey rootCA.pem -CAcreateserial -out private.crt -days 3650

6 pkcs12 형식 변경
# openssl pkcs12 -export -in private.crt -inkey private.pem -out keystore -name tomcat

7 jks 형식 변경
# keytool -importkeystore -srckeystore keystore -srcstoretype pkcs12 -destkeystore keystore.jks -deststoretype jks

생성된 KEYSTORE.JKS파일을 톰캣 경로로 옴깁니다.

SEVER.XML을 아래주석을 풀고 수정합니다. 
  <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
               maxThreads="150" SSLEnabled="true">
        <SSLHostConfig>
            <Certificate certificateKeystoreFile="D:\apache-tomcat-8.5.81\conf\ssl\keystore.jks"
                 certificateKeystorePassword="123456" type="RSA" />
        </SSLHostConfig>
    </Connector>
/src/main/webapp/WEB-INF/web.xml
파일에 이내용을 추가합니다. 

<security-constraint>
		<web-resource-collection>
			<web-resource-name>SSL Forward</web-resource-name>
			<url-pattern>/*</url-pattern>
		</web-resource-collection>
		<user-data-constraint>
			<transport-guarantee>CONFIDENTIAL</transport-guarantee>
		</user-data-constraint>
	</security-constraint>

그럼 HTTP로 접속시 HTTPS로 자동이동합니다. 

출처 : https://jdh5202.tistory.com/772

'JSP' 카테고리의 다른 글

intellij ssh 원격 romote 인텔리제이 원격 웹 web jsp php  (0) 2014.09.05
JSP 쿠키 제어  (0) 2014.08.27
블로그 이미지

은호아빠

여행, 맛집, 일상, 프로그래밍, 개발자, 윈도우, 웹, jsp, spring, db, mysql, oracle, c#

,

흐음 ^^ 이클립스로 플러그인으로remote 플러그인으로 원격을 하면 자동완성이 되지 않는다.. 그리고 많이 무겁다.

intellij라는 툴을 설치해보았는데요 여기서도 막강한 기능을 제공하고 있습니다.

일단 tools에 가셔서 Deployment 에 Browse Remote host 를 누룹니다.



그리고 view -> Tool Windows -> Remote Host 를 눌러 창을 활성화 합니다. 


그리고 쉬프트 + 엔터를 누르시거나 아니면 아래의 아이콘을 눌러주세요. 



...을 누르면 작은창이 뜨는데 이름을 적으시고 type는 sftp로 설정합니다.

그리고 빈칸을 채워넣으시면 됩니다. 

서버아디랑 주소 설정값들을요. 



그리고 mappings 를 누르셔서 local path 를 설정하시고요 

deployment path on server 는 서버상에서 내 작업위치 설정하세요. 


그리고 다운로드 하시면 서버에있는 데이터가 로컬로 다운되구요 그상태로 작업하신후 업로드 하시면 그위치로 착착 들어갑니다. 

그럼 수고하세요.



'JSP' 카테고리의 다른 글

톰캣 8.5 OPENSSL 인증서 설치 개발 테스트!!  (0) 2022.08.04
JSP 쿠키 제어  (0) 2014.08.27
블로그 이미지

은호아빠

여행, 맛집, 일상, 프로그래밍, 개발자, 윈도우, 웹, jsp, spring, db, mysql, oracle, c#

,

JSP 쿠키 제어

JSP 2014. 8. 27. 16:21

HTTP 프로토콜은 상태가 없고 , 이전에 무엇을 했고, 지금 무엇을 했는지에 대한 정보를 갖고 있지 않는 특성을 가지고 있다. 즉, 웹 브라우저(클라이언트)의 요청에 대한 응답을 하고 나면 해당 클라이언트와의 연결을 지속하지 않는다(connectionless). 

이런부분을 해결하기 위해서 웹서버측에 웹브라우저의 정보를 저장한후 계속 되는 웹 브라우저 요청속에 포함되어 있는 웹 브라우저의 정보와 비교해서 동일한 웹 브라우저로부터 온 요청을 판단할수 있다. 

쿠키는 상태가 없는 프로토콜을 위해 상태를 지속시키기 위한 방법중 하나이다. 쿠키는 웹브라우저의 정보를 웹브라우저에 저장하므로 이후에 서버로 전송되는 요청에는 쿠기가 가지고 있는 정보가 같이 포함돼 전송된다. 이떄 웹서버는 웹 브라우저의 요청 속에 포함되어 있을 쿠키를 읽어서 새로운 웹 브라우저인지 이전에 요청을 했던 웹 브라우저인지를 판단할수 있다. 이러한 방법으로 웹 브라우저를 통해서 특정 사이트에 접속하면 웹 브라우저에 쿠기가 저장되어 접속한 사용자의 정보가 유지된 것이다. 


웹브 -> 웹서 ->쿠키 웹브-> 웹브에 쿠키저장 ---이후 웹브서버요청시 쿠키정보도 같이 웹서보로 전송


쿠키생성

javax.servlet.http패키지 않에 Cookie클래스사용

Cookie cookie = new Cookie(String name, String value);

이렇게 생성한 쿠키는 response객체에 추가해주어야 웹브라우저 응답시 웹브라우저에 저장됨..

response.addCookie(name);

쿠키 생성후 쿠키의 값을 새로운 값으로 지정할 때는 setValue()메소드를 사용 

cookie.setValue(newValue);

 웹 브라우저의 요청과 함께 request 객체에 실려 온 쿠키를 읽어 올 때는 request 객체의 getCookies()메소드를 사용 즉, getCookies()메소드를 사용해서 웹 브라우저에 저장된 쿠키를 읽어옴. 

Cookie[] cookies = request.getCookies();

부라우저의 모든 쿠키를 읽어오기 때문에 배열타입임.. 

쿠키의 수명은 setMaxAge()로 설정...

cookie.setMaxAge(int expiry);

시간은 초단위로 넣음 1시간이라면 60분 이고 초라면 3600초임.. 즉 3600초를 넣어주면 1시간후 안됨. 


블로그 이미지

은호아빠

여행, 맛집, 일상, 프로그래밍, 개발자, 윈도우, 웹, jsp, spring, db, mysql, oracle, c#

,