https://warpgate.null.page/docs/

 

Home - Warpgate

 

warpgate.null.page

 

warpgate는 bastion같이 사용자의 접속을 관리하기 위한 오픈소스 도구이다.

 

사용자의 ssh 접속을 통제할 수 있으며, http나 mysql, postgresql에도 적용가능하다.

 

password 접속 방식으로 구성할 것임

 


1. 설치

 

 

 

mv /home/user/warpgate-v0.15.0-arm64-linux /usr/bin/warpgate

위 명령어 사용하여 이름 변경 및 이동

 

이후 <warpgate setup> 이라는 명령어 적용하여 기본 세팅 (보통은 default값 사용)

 

 

이후  <warpgate --config /etc/warpgate.yaml run 으로 실행하거나

아래와 같이 warpgate run으로 실행

 

 

 

 

이후 warpgate가 설치된 서버의 8888 포트로 이동하면 위와 같은 화면이 나타남

 

위에서 비밀번호를 설정한 admin으로 접속

 

 

 

 

 

 

* Targets : 접속할 대상이 되는 서버 및 DB

* Users : 사용자

* Roles: 권한 이나 자격으로 이해하면 편함, target과 user 모두에게 적용해야 함

* Tickets: 별다른 인증없이 대상 서버에 접속가능하게 하는 명령어 발급 (최초 1회 보여주기 때문에 별도 저장 고려)

* SSH keys: ssh 접속에 필요한 ssh 키 정보

* Global parameters: 아래와 같이 사용자가 본인의 Credential 정보 수정가능

 

사용자가 비밀번호 및 인증 수단 추가를 하지 않게 하려면 설정을 끄는 것이 좋음

 

2. 적용

2-1. ssh

a. target 설정

 

Connection에 접속할 서버의 host or ip, 그리고 port 입력

 

Authentication에서는

대상 서버의 user와 pw 입력

 

아래의 roles에서 role을 정해줄 수 있다. 해당 role과 일치하는 사용자만 접속가능

 

test_server라고 이름 붙인 target 서버에는 orion은 접속이 가능해진다.

 

target에 여러개의 role을 허용하는 것도 가능하다.

되도록 일반 사용자들에게는 warpgate:admin role을 주지 않도록 한다.

 

설정을 마치고 Access instructions를 누르면 사용할 명령어를 보여준다.

 

 

 

 

 

접속 확인

 

2-2. ticket

 

티켓을 생성하면 다른 인증수단 없이 로그인이 가능하다. 만료일자와 사용자 수 설정도 가능.

 

한 번만 출력되니 별도 저장을 고려

 

Example command로 접속하면 비밀번호도 묻지 않고 바로 접속됨

 

 

2-3.  role

 

role 도 별도로 생성이 가능하다.

아래와 같이 user와 target에 각각 role 추가 시 role 편집화면에서 적용 중인 사용자, 대상서버 확인 가능

 

 

### 나중에 다른 인증 수단 사용해 볼것

+ Recent posts