DevOps

    SSH 터널링(포트 포워딩)

    1. 포트 포워딩이란 1.1 Port란? 위키 백과에서 포트는 인터넷 프로토콜 스위트에서 운영 체제 통신의 종단점이라고 한다. 네트워크 서비스나 특정 프로세스를 식별하는 논리 단리라고 한다. 여기서 식별이라 함은 port를 통해 서비스를 찾아갈 수 있다. 예를 들어보자 Django로 로컬에 웹 서버를 띄울 떄 console에는 다음과 같은 창이 뜬다. Starting development server at http://127.0.0.1:8000/ IP:Port 번호인데 8000번이 아닌 8001을 입력하면 해당 서버에 접속할 수 없다. 이렇듯 Port를 통해 식별을 할 수 있다. 1.2 포트포워딩? 포트 포워딩은 특정 포트로 들어오는 것을 다른 포트로 바꿔서 다시 전송하는 것이다. 만약 외부에서 210...

    SSH 계정 및 DB 서버 계정 생성 및 DB 외부 접속 허용하기

    오늘 회사에서 SSH 계정 생성과 외부에서 접속할 수 있는 DB 서버의 계정을 만들어 달라고 했다. 사실 난 갖다 쓴 적 밖에 없어서 살짝 당황했으나, 구글을 믿었다. 믿음은 배신하지 않았다. 다만 시간이 오래 걸렸을 뿐 1. SSH 계정 SSH 계정 생성은 쉬웠다 root 계정으로 접속한 뒤 user를 추가했으면 됐으니까. 다만 권한이 문제였다. 권한은 통상적으로 일반 유저 권한이 보안적으로는 맞으나, 편의상 superuser 권한을 줄 때도 있기 때문이다. 하지만 난 정석대로 줬다. 1.1 계정 생성하기 계정 생성은 쉽다. adduser [username] 해당 명령을 치면 user 생성 절차가 진행된다. 생성하고 별다른 추가 권한을 부여하지 않으면 일반 유저 권한이다. 권한을 확인하려면 아래의 명령..

    [Nginx] 리버스 프록시란?

    리버스 프록시란? 리버스 프록시는 인터넷으로부터 요청을 받아와서 이것들을 내부망의 서버로 바로 포워드한다. 프록시에 요청을 하는 대상은 내부망을 인지하지 못할 수 있다. - 위키백과 리버스 프록시는 클라이언트가 웹 서비스에 요청하면 이 요청을 받아서 내부 서버에서 데이터를 받은 후에 요청에 대한 응답을 사용자에게 다시 전달한다. 즉 WAS나 WS의 앞 쪽에 리버스 프록시가 위치해 있는 형태이다. 하지만 의문이 든다. 어차피 WS가 앞쪽에 위치해서 처리해도 되는데 굳이 리버스 프록시를 쓰는 이유가 뭘까? 2. 리버스 프록시를 쓰는 이유 리버스 프록시를 쓰는 몇 가지 이유를 살펴보자 2.1 성능 2.1.1 로드 밸런싱 리버스 프록시를 둔다면 예를 들어 Nginx의 경우 로드밸런싱을 통해 대량의 요청 트래픽이..