Post

SSH Server 설정

SSH server

  • Ubuntu server가 아니면 SSH를 따로 설치해주어야 한다.
1
sudo apt-get install openssh-server
SSH root 계정 접속 제한
1
2
3
4
5
vi /etc/ssh/sshd_config
PermitRootLogin no

vi /etc/pam.d/login
Auth    required    /lib/x86_64-linux-gnu/security/pam_securetty.so

공개키를 서버에 등록한 경우에만 SSH를 사용할 수 있도록 하기

home 폴더에 공개키 등록

1
$home/.ssh/authorized_keys
1
ssh-rsa AAAAB3...UKRqwDn umbum@DESKTOP-UMBUM
  • 위 경로에 공개키를 등록하면, 이 공개키에 대응하는 개인키가 있는 경우에만 ssh로 접속할 수 있음.
  • $home아래에 있는 설정파일이므로 개별 유저마다 다른 공개키 등록 가능.
  • 파일에 등록하는 공개키 형식은 ssh-keygen 명령어를 통해 생성된 id_rsa.pub 파일의 내용을 그대로 복붙하면 됨.

이후 config file에서 단순 pw 로그인 비활성화

1
sudo vi /etc/ssh/sshd_config
1
2
3
4
5
6
PubkeyAuthentication yes 
PasswordAuthentication no

# 유저 별 설정
Match User nuser
    PasswordAuthentication no

.ssh 디렉토리와 authorized_keys 파일 권한 체크

권한 설정 제대로 안되어있으면 아래 에러 발생함.

1
2
Authentication refused: bad ownership or modes for file /home/nuser/.ssh/authorized_keys
Authentication refused: bad ownership or modes for directory /home/nuser/.ssh

[!warning] .ssh 디렉토리는 700(drwx——), authorized_keys 파일은 600(-rw——-) 권한이어야 함.

This post is licensed under CC BY 4.0 by the author.