[Linux] SSH 설치 및 연결 설정하기
- OS/Linux
- 2019. 4. 5. 17:45
이 포스트에서는 원격 연결 및 데이터 전송에 사용되는 OpenSSH를 알아보려고 합니다. OpenSSH 서버 설정법과 우분투에서 설정을 변경하는 방법에 대해서 알아보겠습니다.
OpenSSH는 보안, 암호화된 원격 제어, 파일 전송을 쉽게 할 수 있게 해주는 서버 데몬(백그라운드에서 항상 실행됨)과 클라이언트 도구를 제공합니다.
설치
OpenSSH 서버 설치:
sudo apt install openssh-server
OpenSSH 클라이언트 설치:
sudo apt install openssh-client
설정
OpenSSH 서버 프로그램 (sshd) 의 설정은 /etc/ssh/sshd_config
에서 편집할 수 있습니다.
sshd 설정 파일에는 통신 설정, 인증 모드 등 많은 설정들이 있습니다. 아래 예는 /etc/ssh/sshd_config
파일을 편집해서 변경할 수 있는 설정들입니다.
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.original
sudo chmod a-w /etc/ssh/sshd_config.original
변경하실 수 있는 설정의 예제들입니다:
(1) TCP 22 포트 대신 다른 2222 포트를 사용하고자 할 경우:
Port 2222
(2) sshd가 공개키 기반의 로그인 인증서를 허용하도록 하려면, /etc/ssh/sshd_config 파일에 아래 라인을 추가합니다:
PubkeyAuthentication yes
(행이 이미 있을 경우, 주석처리 되지는 않았는지 확인하세요.)
(3) OpenSSH 서버에 접속할 때 배너로 /etc/issue.net
의 파일 내용을 화면에 표시되게 하려면, 다음 라인을 추가합니다:
Banner /etc/issue.net
/etc/ssh/sshd_config
파일 내용을 변경한 후에는 sshd 서버를 재시작합니다:
sudo systemctl restart sshd.service
SSH Keys
SSH 키는 두 호스트 사이에서 비밀번호 없이 인증할 수 있게 해줍니다. SSH 키 인증은 두 키를 사용합니다. 하나는 private 키이고 다른 하나는 public 키입니다.
키를 생성하려면 터미널에 다음을 입력합니다:
ssh-keygen -t rsa
위 명령은 RSA 알고리즘을 사용하여 키를 생성합니다. 위 명령을 실행하면 비밀번호를 물어보는데 그냥 엔터를 치면 됩니다.
디폴트로, public 키는 ~/.ssh/id_rsa.pub
파일 안에 저장됩니다. 그리고 private 키는 ~/.ssh/id_rsa
파일 안에 저장됩니다.
이제 원격 호스트로 id_rsa.pub 파일을 복사해야 합니다. 그리고 이 키를 원격 호스트의 ~/.ssh/authorized_keys
에 추가합니다:
ssh-copy-id username@remotehost
예)
ssh-copy-id guru1@192.168.0.3
마지막으로, authorized_keys 파일에 퍼미션을 체크합니다. 인증된 유저만 읽기와 쓰기를 가져야 합니다. 퍼미션은 다음과 같이 설정할 수 있습니다:
chmod 600 .ssh/authorized_keys
이제 비밀번호 없이 SSH를 사용할 수 있습니다.
레퍼런스: https://help.ubuntu.com/lts/serverguide/openssh-server.html.en
'OS > Linux' 카테고리의 다른 글
[Linux] 우분투 Wifi 설정하기 (0) | 2019.04.18 |
---|---|
[Linux] nvidia-docker 2 설치하기 (0) | 2019.04.11 |
[Linux] 디스크 사용량 확인 (du / df) (0) | 2019.04.02 |
[리눅스] 우분투에 wp2txt 설치하기 ! (0) | 2019.03.20 |
[리눅스 QA] 리눅스에서 bz2 파일 압축 해제하기 ! (0) | 2019.03.20 |