SSH
SSH에 대한 설명
●SSH : 원격 접속을 위한 프로토콜
~> 인증(authentication)기능, 패킷 암호화(RSA)기능, 무결성 확인(integrity)기능을 제공한다.
~> 보안성이 뛰어나다.
~> verwion 1과 2가 있는데 1.x ver에서 취약점을 보안한 것이 ver 2이다.
------------------ : 서로 호환성이 없다.
● 실습
목표
: R1에서 R2로 SSH 접속이 가능하게 설정
1. SSH로 접속을 할 일반 계정과 DB 생성하기.
R1)
R1#conf t
R1(config)#username risut password cisco
----- : SSH에서 사용할 사용자 계정명
* 여기서 이렇게만 설정해주면 패스워드가 평문으로 저장된다.
패스워드를 암호화하고 싶으면
service password-encryption 을 입력하면 패스워드가 암호화되어 저장된다.
관리자 패스워드 지정
conf t
enable password cisco
= 암호화 되지 않은 상태로 저장된다.
enable secret cisco
= 암호화 된 문자열로 지정된다.
* 관리자 패스워드 설정 명령이 2개인데 실제로 설정되는 값은 보안 규칙에 의거하여
같은 설정이 들어가는 경우 보안성이 높은 명령을 우선시 한다.
라우터에 접근 방법 : vty, console, aux
외부 원격 접속 vty
vty ~> telnet ~> 보안성이 떨어진다.
ssh ~> 보안성이 높음 -> 암호화 전송 기능
ssh : 1.5 ~> 768bit
1.99 ~> 1024bit
2.0 ~> 2048bit
1.x : openssl 취약성 : downgrade attack -> 장비간 negotiation(호환성)을 이용한 공격
line 0 4
0 : 가상터미널의 시작번호
4 : 가상터미널의 마지막 번호
동시접속자 5명까지 허용
R1)
R1(config)#enable password cisco
R1(config)#line vty 0 4
R1(config-line)#login local
2. SSH에서 서버인증서를 위한 도메인명과 암호키를 지정
R1)
R1#conf t
R1(config)#ip domain-name risut.com
R1(config)#crypto key generate rsa
1) ssh 1.99버전에는 downgrage attack 취약성이 있기에 버전 2로 설정
2) authentication 명령어를 기입해서 ssh 로그인 횟수를 정해주자 ~> bruteforce 방지
R1)
R1(config)#ip ssh version 2
R1(config)#ip ssh authentication-retries 3
- : ssh 로그인을 3회 실패할 시 세션 종료
R2에서 접속하여 결과 확인