본문 바로가기

교육/Server

Day 45 (SSH)

반응형

SSH는 암호화 통신이다.

키를 이용한다는 것은 비공개를 위해 사용하기도 하지만 책임을 지겠다는 의미도 가지고 있다.

(1) 클라이언트가 서버에 SSH 접속 요청

(2) 핸드셰이크(버전확인) : 접속 전 서로의 정보를 확인한다.

(3) 알고리즘 확인과 세션키 교환 : 공개키 기관에 의한 세션키 분배의 하부과정과 비슷하다. 먼저 서버에서 공개키를 받는다. 클라이언트가 세션키를 생성하고 서버의 공개키로 암호화 한 후 서버에 전송한다. 크랙 방법은 서버의 공개키를 가로채는 방법 뿐인데 서버의 공개키는 통신의 첫 시작에서만 송신하므로 그 순간을 놓치면 크랙할 수 없다. 또한 세션이 종료되면 세션키를 폐기하고 세션이 생기면 세션키를 새로 생성하기 때문에 꾸준한 사용이 가능하다. 난수T는 다른 시스템에서 로그인시 로그인 정보확인 용으로 사용이 가능하다.

(4) 보안 세션 설정

 

원래 1:1통신을 원칙으로 하기 때문에 다중 접속시마다 프로세스를 계속 생성하게되면 휴지기간인 프로세스가 발생한다. 휴지하고있는 프로세스를 줄이기 위해 멀티 쓰레드 방식을 사용한다. 멀티 쓰레드 방식은 프로세스는 하나만 생성하고 그 프로세스에 접속하는 소켓을 여러개 생성하는 것이다. 그렇다고 프로세스의 크기가 커지거나 하지는 않는다.

 

SSH서버 접속은 'ssh 계정명@ip'로 접속이 가능하다.

SSH서버 설치 확인은 yum list openssh*로 가능하다.

sftp는 보안 ftp로서 vsftp와는 다르다. sftp의 접속 방식도 ssh와 동일하다.

 

실습 : ssh를 이용한 통신을 하고 계정별로 접속 허용, 거부 상태를 주어 확인한다.

yum install -y openssh* // openssh데몬을 설치한다.
systemctl [start|stop|restart] sshd.service // sshd.service를 [실행|중지|재실행]한다.
# vi /etc/ssh/sshd_config // ssh서버 설정파일을 변경한다.
                                 // (*cf) /etc/ssh/ssh_config파일은 ssh클라이언트 설정파일이다.
#Port 22 // Port 번호 지정
#Protocol 2,1 // SSH1, SSH 2 지원
#ListenAddress // 여러 개의 IP중 SSH이용할 IP
#PermitRootLogin yes // Root 계정 로긴 허용
#PermitEmptyPasswords no // 암호 없는 계정에 대한 접속 여부
더보기

 

openssh데몬을 설치한다.
root계정의 로그인 허용이 되어있기 때문에 root 계정으로도 로그인이 가능하다.
Window에서 접속이 가능하다.
접속이 허용된 계정은 접속이 가능하고 그렇지 않은 계정은 접속 거부한다.
접속을 거부할 유저 목록에 root계정을 적게 되면 root의 접속이 허용되어 있더라도 유저별로 권한을 주는것이 우선시 되어 root계정도 접속이 불가능하다.

 

  Root계정 일반계정
Default 접속가능 접속가능
AllowUsers 접속가능 접속가능
DenyUsers 접속불가 접속불가

 

반응형

'교육 > Server' 카테고리의 다른 글

Day 54 (DNS서버 구축)  (0) 2020.02.05
Day 38 (Web Server + Oracle + Samba) (2)  (0) 2020.01.10
Day 38 (Web Server + Oracle + Samba) (1)  (0) 2020.01.10
Day 24 (NFS & Multi network)  (0) 2019.12.19
Day 23 (SAMBA & NAT & Oracle windows)  (0) 2019.12.18