정보 보안을 향한 항해

Kerberos 서버 구축 후 머신3에서 머신2로 ssh 로그인 본문

서버/서버 구축 실습

Kerberos 서버 구축 후 머신3에서 머신2로 ssh 로그인

금홍자 2021. 10. 7. 17:39

Kerberos 서버는 네트워크 인증 프로토콜이다. 티켓기반의 강력한 암호 인증을 호스트에 제공해서 클라이언트와 서버가 더욱 안전한 상태에서 통신하게 한다.

방화벽이 외부에서 침투하는 것을 알아낸다면 케버러스는 내부 네트워크에서의 침투를 알아낸다고 볼 수 있다.

현재 케버러스는 KRB5인데 서버에 설치해서 중앙에서 인증해주는 시스템으로써 KDC(Key Distribution Center)라고 한다.

KDC 서버에 등록된 리얼 서버는 연결하는 클라이언트 호스트들에게서 신뢰를 가지게 된다.

 

 

centos1 을 Kerberos server로 만들고

centos2 에서 centos3 로 ssh 로그인 하겠다

 

 

 

 

 

 

/etc/hosts 파일에서 FQDN 을 추가한다

192.168.100.128 centos1.kahn.edu centos1

192.168.100.131 centos2.kahn.edu centos2 
192.168.100.160 centos3.kahn.edu centos3

 

 

 

 

 

 

/var/kerberos/krb5kdc/kadm5.acl

 

 

/var/kerberos/krb5kdc/kdc.conf

 

 

/etc/krb5kdc 파일 도메인 수정

 

/etc/krb5.conf 파일을 다른 머신에 모두 복사

 

확인

 

 

 

 

/var/kerberos/krb5kdc/kadm5.acl

 

 

/etc/krb5.conf

 

krb5 data key 생성

 

 

서비스 시작

principal 생성 (일종의 룰)

principal 원리 원칙이라는 뜻

listprincs 로 나온 얘들이 현재 만들어진 principal 이다

K/M@KAHN.EDU
kadmin/admin@KAHN.EDU
kadmin/centos1.kahn.edu@KAHN.EDU
kadmin/changepw@KAHN.EDU
krbtgt/KAHN.EDU@KAHN.EDU

 

 

centos 사용자 passwd 로 rootoor 입력

centos 로 passwd 입력하지 않은 건

실습을 위해 rootoor 입력시 root 로 들어가는지 확인하는 것이다

root 사용자의 인증서 생성 방법 또한 같다

 

centos2 host 의 key 생성

 

다시 listprincs 시 더 많은 게 추가된거 확인가능

host(centos2) 인증

# ktadd host/centos2.kahn.edu

exit 으로 벗어난다

 

centos2 에서 ssh 연결에 kerberos 가 작동되게 해준다

 

 

이 문장이 kerberos 인증을 하게 해준다

# sed -n '50p' /etc/ssh/ssh_config 

GSSAPIAuthentication yes

이제 centos2 로 가서 kerberos 적용시킨다

 

 

 

 

 

 

 

 

kerberos * 인지 확인하고 Next

 

 

host 가 그냥 centos 로 나오는 경우가 있으니

centos1.kahn.edu 인지 확인한다

tab 키로 OK

 

kerberos setting (설정)을 확인했다

 

service 시작

 

 

centos3 에서

# kinit

# klist

ticket = key 를 확인할 수있다

 

 

centos3 에서 centos2 로 ssh 접속 한다

# ssh -Kv centos@centos1.kahn.edu

 

centos2 의 passwd 인 rootoor 를 입력해서 로그인 성공해야한다.

 

 

klist 입력해서  key 나오면 성공이다