일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 스프링
- 비동기
- 권한
- 스프링 부트
- Producer
- 클린코드
- 페이징
- Spring
- load balancing
- 페이스북
- RabbitMQ
- tomcat
- JWT
- jvm
- OAuth
- 리팩토링
- assertj
- Security
- apache
- 시큐리티
- 스프링부트
- Refactoring
- GC
- java
- JPA
- spring boot
- oauth2
- clean code
- gdg
- g1
- Today
- Total
목록server (12)
허원철의 개발 블로그
이번 글은 fail2ban에 대한 내용입니다. Linux 서버를 누구나 접근이 가능한 네트워크망(IP대역을 제한할 수 없는 경우)에서 사용하게 되면, 무작위로 ssh 로그인을 시도하여 접근하는 것이 가능합니다. 이를 보완하기 위해서 첫째로는 ssh 로그인 시, 직접적으로 root로 접근하는 것을 막습니다. 두번째로 fail2ban을 이용하여 이를 보완할 수 있습니다. fail2ban 란? - 지정된 시간(findtime) 내에 지정된 횟수(maxretry) 이상으로 접근 실패시에 해당 IP를 지정된 시간(bantime)동안 차단하는 것을 말합니다. fail2ban 설치하기(Centos 7 기준으로 합니다.) 1. epel 패키지 설치- 공식 Centos 패키지 저장소에는 fail2ban이 없기 때문에 e..
이번 글은 빌드된 jar 파일을 원격지에 배포해보는 과정을 적은 글입니다. 'CI - 젠킨스 빌드하기'에서 작성된 배포(?) 스크립트는 젠킨스 PATH에서 실행한 것이기 때문에 올바른 방법이 아닙니다. 그래서 원격지에 배포하는 방법을 간단하게 보면 3가지 정도인 것 같습니다. (이런 저런 과정이 추가된다면 많이 달리질 수 있습니다.) 1) SSH2) FTP3) Tomcat Manager ※ AWS를 위한 별도의 플러그인도 있습니다. spring boot를 jar 파일로 배포하기 위해 ssh를 이용해보도록 하겠습니다. 1 . Publish Over SSH 설치 - 젠킨스에서 원격지에 ssh로 접근하기 위한 플러그인을 설치 해줍니다. [Jenkins 관리] - [플러그인 관리] - [설치 가능] 탭에서 'P..
젠킨스를 활용하면서 플러그인이 아닌 젠킨스 버전 업그레이드를 해야할 때가 있습니다. 앞서 블로깅 했던 내용으로 진행 하셨다면(Centos 라면), 다음과 같은 경로에 jenkins.war를 확인할 수 있습니다. 1/usr/lib/jenkins/jenkins.warcs 그게 아니라면, 1find / -name 'jenkins.war'cs 등 명령어를 통해 위치를 확인하시기 바랍니다. ※ 아래 내용은 이전 블로깅 내용을 기준으로 작성합니다. 새로운 jenkins.war 다운로드 - http://mirrors.jenkins-ci.org 에서 jenkins를 다운 받으실 수 있습니다. 가장 최신 버전을 받고자 하신다면, http://mirrors.jenkins-ci.org/war/latest/jenkins.wa..
이번 글은 Github Repository에 올려놓은 프로젝트를 이용하여 젠킨스를 이용해보는 예제 글입니다. 새로운 Item 생성하기 - item 이름을 정해주고, Freestyle project 선택합니다. 소스 코드 관리 - Git을 선택하고, 해당 Repository URL을 기입합니다. - Credentials → Add : 로그인 계정을 기입합니다. - Branches to Build : master로는 다른 작업을 위해 다른 Branch를 이용하도록 하겠습니다. Build - 설치한 Gradle을 이용한다면 Invoke Gradle을 이용합니다.- 이번 포스팅은 Spring Boot + Gradle Wrapper를 이용합니다.① [ Make gradlew executable ] 체크② Wrap..
단순히 서버에 FTP로 war나 jar 파일을 올리는 수동적인 배포만 해보다가 잠깐의 휴식기간(?) 동안 빌드, 테스트, 배포를 손쉽게 할 수 있는 젠킨스에 대한 글입니다. CI란 무엇인가? CI라는 용어를 먼저 살펴보자면, Continuous Integration의 줄임말로 지속적 통합이라고 불립니다. 대표적으로 젠킨스가 있는데 Agile 창시자 중 한 명인 마틴 파울러님이 주창한 지속적 통합을 구현하기 위한 자바 오픈소스 소프트웨어로 웹 어플리케이션 형태를 하고 있습니다. 원래는 허드슨이라는 명칭을 가지고 있었으나, 오라클과의 상표권 문제로 젠킨스로 이름이 바뀌게 되었습니다. 왜 써야하나요? 소스를 직접 배포하지 않고, 형상관리 시스템인 Git이나 SVN에서 파일을 읽어들여 빌드, 테스트, 배포를 할..