2020. 5. 22.

[Linux] ssh 서버


터미널을 사용하던 환경에서 네트워크 환경으로 바뀐것이다.
ex) 리눅스를 putty 사용하듯 네트워크 환경을 사용하는것으로 바뀌었다.

*SSH – 암호를 이용한 통신 채널

ssh 있는 이유는 기존에 있던 프로토콜(ftp[20,21], telnet[23]) 보안이란 개념이 없어서이다.
세션키는 지속적으로 사용하는
ex) 전자우편 비밀키는 한번만 쓰고 버림



*SSH – 안전 세션 설정


세션키 교환

  • Server의 공개키를 이용해서 전달
  • Client가 생성(v2는 계산)
  • RSA, DSA

보안 세션 : IDEA, DES

응용계층 - 핸드쉐이크 과정
  • 교환정보를 동기화하기위해(?) 알아야한다
    • 윈도우 : 한번에 보내는 크기
    • 네트워크 퍼포먼스 : 윈도우 사이크 (ex)1~1000범위를 쓴다면) 크게 써야 빠름

blind 통신방식 : 받는 상태를 없다. 그래서 응답 패킷(ack) 보내는것

*SSH 설치와 실행

SSH 서버 설치 확인

# yum list openssh*
  • openssh-7.4p1-16.el7.x86_64
  • openssh-server-7.4p1-16.el7.x86_64
  • openssh-clients-7.4p1-16.el7.x86_64

SSH 서버 실행

# systemctl start sshd.service

관련 파일

데몬 : /usr/sbin/sshd
스크립트 : /usr/lib/systemd/system/sshd.service
환경 설정 파일 : /etc/ssh/sshd_config
공개키 저장 경로 : $HOME/.ssh/

ssh 클라이언트 sshd 데몬

*SSH - 접속

# ssh birochya@192.168.123.101
The authenticity of host '192.168.123.101 (192.168.123.101)' can't beestablished.
RSA key fingerprint is f4:48:d8:7a:0a:45:57:92:48:66:af:01:70:4f:92:f0.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.123.101' (RSA) to the list of known hosts.
birochya@192.168.123.101's password: 암호입력

sftp 접속 방법도 ssh와 동일

키 저장

  • 개인키
/etc/ssh_host_rsa_key
/etc/ssh_host_dsa_key

  • 공개키
/etc/ssh_host_rsa_key.pub
/etc/ssh_host_dsa_key.pub

*SSH – 주요 설정

/etc/ssh/sshd_config

  • #된 부분은 default 값을 의미한다. 수정을 원하는 경우 #을 삭제하고 내용을 수정한다.
항목
내용
#Port 22
Port 번호 지정
#Protocol 2, 1
SSH1, SSH 2 지원
#ListenAddress
여러 개의 IP SSH 이용할 IP
#PermitRootLogin yes
ROOT 계정 로긴 허용
#PemitEmptyPasswords no
암호 없는 계정에 대한 접속 여부

  • subsystem sftp /usr/libexec/openssh/sftp-server
    •  sftp 서버 지정
    • 주석처리되야 사용가능

  • 루트사용자의 일반 사용자 계정이 있어야함

*SSH – 접속 제한

sshd_config를 이용한 사용자 제한

  • AllowUsers [유저] [유저] … Allowgroups [그룹] [그룹] …
    • 지정된 유저나 그룹만 접속 가능
    • 거의 이거 allow 유저
  • DenyUsers [유저] [유저] … DenyGroups [그룹] [그룹] …
    • 지정한 유저나 그룹은 접속 불가

IP 제한

  • hosts.deny 를 이용 제한
    • sshd : All except 192.168.123.




댓글 없음:

댓글 쓰기