[Blog] 티스토리 네이버 검색 노출 시키기
2022. 8. 19. 13:11
블로그
지난번에 구글 서치콘솔을 이용해 검색 노출 시키는 것을 했다. 우리나라에서 많이 쓰는 네이버도 한번 등록해보자! 티스토리 구글 검색 노출 시키기 티스토리 기술블로그를 꿈꾸며 시작하지 3주가 지났다 근데 구글에 검색을 해봐도 전혀 뜨지않는것... 바로 검색해보니 Google Search Console 에 사이트를 등록시켜야한다고.. 너무 무지했다... 바로 flowlog.tistory.com 네이버는 '네이버 서치어드바이저' 라고 불리는 사이트에서 등록하면 된다. 네이버 서치어드바이저 네이버 서치어드바이저와 함께 당신의 웹사이트를 성장시켜보세요 searchadvisor.naver.com 사이트에 들어가 네이버 아이디로 로그인을 하면 처음이라 이용 동의 페이지가 뜬다. 당연히 약관에 동의한 뒤, 상단의 [웹..
[Blog] 티스토리 구글 검색 노출 시키기
2022. 8. 19. 12:53
블로그
티스토리 기술블로그를 꿈꾸며 시작하지 3주가 지났다 근데 구글에 검색을 해봐도 전혀 뜨지않는것... 바로 검색해보니 Google Search Console 에 사이트를 등록시켜야한다고.. 너무 무지했다... 바로 실습에 옴겨보자.! google 에 googla search console 를 검색한뒤 Google Search Console 로그인 Google 검색 콘솔로 이동 accounts.google.com 위 url에 접근하면 직접 도메인을 구매해서 하는경우는 도메인을, 필자처럼 타플랫폼의 하위도메인을 사용한다면 URL접두어에 입력하고 계속을 눌러준다. 잠시 기다리면 소유권 확인 페이지가 뜨는데 소유권 확인 방법은 - 권장 : HTML 파일 업로드 - HTML 태그 - google 애널리틱스 - go..
[Jenkins] Gitlab Private Repogitory 가져오기
2022. 8. 11. 16:49
엔지니어링/CI-CD
오늘은 젠킨스에서 깃랩 프라이빗 레포지토리를 가져오는 걸 남긴다. 방법은 username/password 와 access token 2가지 모두 포스팅한다. Gitlab Access Token 생성 접근토큰 발급은 너무 간단하다. GItlab에 로그인 한 후 User Settings > Access Tokens 으로 들어가서 토큰이름, 만료일, 허용 권한을 체크한 뒤 발급하면 된다. Create personal access token 버튼을 클릭하면 위와 같이 토큰이 발급된다. 스크롤을 내리면 생성된 토큰 정보도 확인할 수 있다. Jenkins New item을 클릭하면 여러 템플릿이 존재하는데 Freestyle Project 와 Pipeline 방식을 해볼거다. Freestyle 설정(Username/..
[Azure] PaaS DB privateEndpoint 연결 방법
2022. 8. 9. 14:59
엔지니어링/Azure
애저에 보면 paas 서비스로 데이터베이스를 쓸수 있는 서비스가 있다. 이 서비스를 통해 public이 아닌 private link 를 사용하여 프라이빗하는 서비스를 사용할 수 있는데, 해당 설정을 한 뒤 db에 접속을 요청하면, Client with IP address '20.70.238.229' is not allowed to connect to this MySQL server. 이라는 에러메시지가 나온다. 이럴 경우 애저포탈 > PAAS DB > 설정 > 연결 보안에서 접근한 클라이언트의 IP를 방화벽 규칙을 추가해 주어야한다. 그럼 접근이 잘된다.
[OCP] 3scale Operator 설치
2022. 8. 9. 14:48
엔지니어링/3scale
ocp 오퍼레이터를 이용하면 rehat 에서 제공하는 솔루션을 손쉽게 올릴 수 있다. 프로젝트에서 3scale 이관을 맡았었는데 설치방법과 백업&리스토어를 기록해두려한다. Operator 설치 ocp 콘솔 > Operators > OperatorHub 메뉴에서 3scale을 검색 Redhat Integration - 3scale 을 선택하고 install 클릭 설치할 namespace(3scale) 선택, install 설치 중 설치 완료 PV 생성 3scale은 PV가 총 4개가 필요한데, 그중 1개 (system-storage)가 RWX 형식의 pv 여야만 한다. 필자는 aro 환경에서 사용중이기 때문에 스토리지클래스로 pv 동적할당을 사용한다. Azure Redhat Openshift 만약 Azur..
[ActiveDirectory] ADServer 구축
2022. 8. 8. 19:37
엔지니어링/기타
프로젝트에서 LDAP, AAD를 많이 쓰다보니 AD서버를 한번 구축해보고 싶은 마음이 들었다. 바로 시작한다. AD 서버 구축 Window Server 준비 필자는 azure 가상머신으로 진행했다. 누구나 할 수 있는 가상머신 설치!!! 네트워크 설정 고정 IP와 DNS 구글로 진행 AD Server Service 설치 Server Manager > Dashboard > Quick START > 1 > 2. Add Role and features install 버튼 클릭 AD Server 설정 아래 Promote this server to a domain controller 버튼을 눌러 승격? 시켜야한다. 도메인 : metain.com Next > Next > Install > Auto Restart H..
[OCP] AAD(Azure Active Directory) 로그인
2022. 8. 8. 19:17
엔지니어링/OCP
OCP에서 로그인 공급자들을 보면 꽤 많은 공급자들을 확인할 수 있다. 그중 AAD와 연동하는 방법을 포스팅하겠다. 먼저 OCP 콘솔에서 API Explorer 클릭, oauth 검색 인스턴스 클릭, cluster 클릭 화면을 내려 아이덴티티 공급자에서 OpenID 연결을 눌러준다. 로그인 시 보일 이름(로그인 공급자) client ID client secret Azure login URL/{tenent ID} 을 입력한다. 스크롤을 내려 위와 같은 정보를 입력하고 생성하면 이런내용으로 공급자가 추가된다. 이제 약 5분정도 시간이 지나면 적용이 된다. AAD 라는 로그인방식이 생겼고, 눌러보면 ms 로그인 페이지로 로그인된다. 로그인 완료! 추가로 AAD에서 ocp callback URI 정보를 입력해줘..
[Openshift jenkins] CI-CD Pipeline
2022. 8. 8. 18:23
엔지니어링/OCP
ocp operator 를 통해 jenkins 를 구축하면 ocp cluster 와 자동으로 세팅을 해준다. 오늘은 젠킨스 파이프라인을 통해 github에 있는 source를 CI(빌드)하고, ocp 클러스터에 CD(배포)할 것이다. 소스는 간단히 php로 진행할 것이다. php 소스 Github 예전에 만들어둔 github php. 간단히 index.php 에 변수사용. GitHub - joonhyeok95/php-new-app: php 테스트 레포지토리 php 테스트 레포지토리. Contribute to joonhyeok95/php-new-app development by creating an account on GitHub. github.com OCP 설정 DeploymentConfig 컨테이너 포..
[Springboot] Exception 처리하기
2022. 8. 4. 16:07
개발/Spring
springboot 로 RestApi 를 만들다보니 Exception 처리는 필수이다. 한번 해보자. 에러는 {“error”:”에러코드”,”error_decription”:”에러설명”} 위와 같이 내보낼 것이다. ErrorEnum 정의 @Getter public enum ErrorEnum { /* API 응답 코드 */ E00000("00000", "처리 성공", HttpStatus.OK), E40401("40401", "요청한 엔드포인트가 존재하지 않습니다.", HttpStatus.NOT_FOUND); E50002("50002", "API 요청 처리 실패.", HttpStatus.INTERNAL_SERVER_ERROR); private String code; private String msg; priv..
[Springboot] JPA 적용
2022. 8. 4. 15:50
개발
springboot 개발을 할 때 늘 mybatis를 사용하여 mapper.xml에 SQL쿼리를 작성해 database 로직을 구현했었다. 언제부턴가 JPA라는 말이 자주 들려오고 있는데, 이제야 테스트를 해본다. JPA(Java Persistence API)와 mybatis와 비교하자면 먼저 Mybatis 는 SQL자체로 xml 파일을 분리할 수 있으며, 복잡한 쿼리 작성의 장점이 있지만, 간단한 쿼리들을 많이 작성하여 코드가 길어지는 단점이 있다. JPA 는 CRUD 메소드가 이미 정의되어있어 sql을 직접 구현할 필요가 없기 때문에 소스코드의 양이 적어지는 점, 또 database 와 연결되어 table 생성을 자동으로 할 수도 있다. 하지만, 복잡한 쿼리의 사용은 JPQL 또는 Query dsl ..
[ARO] Azure Redhat Openshift 구축
2022. 8. 4. 15:19
엔지니어링/Azure
openshift 는 redhat에서 서비스하고 있는 PaaS 플랫폼이다. 특별히 XX카드사는 2018년에 계정계클라우드 전환으로 OCP에 대한 내용을 많은 이들에게 보여줬고, kubernetes를 보완한 플랫폼으로 쉽게(?) 컨테이너 환경을 운영할 수 있다. 또 클라우드 파트너사와 협업하여 AWS, AZURE 에 정말 쉽게 openshift를 올릴 수 있다. Azure 에는 ARO 라는 이름의 서비스가 존재하는데, 게시글 제목처럼 Azure Redhat Openshift 를 줄인 말이다. 해당 글은 MS Docs 를 참고하였고 public 환경 aro 구축을 리뷰하겠다.(명령어 실행환경은 bash이다) 아, 먼저 aro 아키텍처는 이렇게 azure에서 보여주고있다. 변수 정의 생성할 리전위치, 애저구독..
[Openresty] 특정 대상 경로 우회
2022. 8. 4. 14:00
엔지니어링/프록시
예전 프로젝트에서 L4 스위치가 2중화 되어있는 proxy서버(openresty)에 health 체크를 하는데 openresty에서 tcp/ip 소켓 통신인 경우 헬스체크를 소켓통신하는 곳까지 넘겨버리는 불상사가 생겼었다. L4 ---> proxy ---> server ..ㅋ 해당 서버는 인증업체였는데 이로인해 트래픽이 많아져 문제가 생길 것 같다고 하여 openresty 에서 수정하기로 했다. upstream auth1 { server x.x.x.x:xx; } upstream no_backend { server 127.0.0.1:80; } # L4 ip에서 온 것은 no_backend 로 이동 map $remote_addr:$server_port $org { L4IP:접속포트1 no_backend; L..
[Springboot] Authorization Code 방식의 인증구현 (Spring Security 2.5.2)
2022. 8. 4. 12:41
개발
작년에 XX카드 마이데이터 API 제공 프로젝트를 진행하면서 oauth 2.0 에 대한 부분을 많이 보았다. 마이데이터에서 인증방식은 Authorization Code, client credentials, password 방식을 사용하였다.(총 4개임, 마지막은 암시적 승인이라고.. ) 해당 프로젝트는 신용정보원, 인증기관, 사업자, 제공자 등 기관간의 연계를 보며 인증/인가를 통해 API를 주고받는 식이다. 또, 마이데이터 API 규격서에도 보면 좋은 내용들이 있고, 지금도 신규 사업자들이 생겨나고 있다. 모든 통신의 꽃은 결국 인증이다. 프로젝트 에서는 rhsso 를 사용하였는데(redhat에서 나온 제품, 오픈소스 keycloak base), token에 대한 설정들을 대시보드를 통해 매우 쉽게 컨..
[Springboot] swagger 3.0 설정
2022. 8. 4. 10:30
개발
젤 중요했던거.... 3 버전 대는 접근 URL 이 '/swagger-ui' 이다. pom.xml 먼저 pom.xml 에 관련 라이브러리를 추가 io.springfox springfox-boot-starter 3.0.0 io.springfox springfox-swagger-ui 3.0.0 config 설정 @Configuration @EnableSwagger2 @EnableWebMvc public class SwaggerConfig { private ApiInfo swaggerInfo() { return new ApiInfoBuilder().title("2022 토이 프로젝트") .description("나만의 OAUTH 인증 솔루션 제작기 - 임준혁").build(); } @Bean public Do..
[Springboot] CSRF Token 설정 시 Postman 테스트 방법(Spring Security)
2022. 8. 4. 10:25
개발
스프링 시큐리티는 POST, PUT, DELETE 등의 method를 요청할 때 이전 페이지에 발급된 CSRF토큰 정보를 체크하기 때문에 해당 정보를 header 로 넘겨주어야 처리가 된다. GET은 상관없음! 어쨋든 테스트 API 를 만들고 postman으로 요청을 해보았는데 자꾸 403 forbidden 에러가 떨어진다. 그래서 CSRF token 이 발급되는 설정을 하고, API를 요청할 때 'X-XSRF-TOKEN' 이라는 이름의 헤더이름으로 token을 넣어주면 된다. CSRF Token 발급 설정 @EnableWebSecurity @Configuration public class SecurityConfig extends WebSecurityConfigurerAdapter{ @Override p..