[우분투 팁] SSH서버 구축하기(SSH 접속 설정)

이 글은 https://studyforus.tistory.com/235 의 내용을 제가 적용하면서 정리하는 겁니다.

 

SSH는… 시큐어 셸(Secure Shell)의 약자입니다. 보안기능이 전제되어 있는 프로토콜이고요,

▲ 기본적으로 (보안이 안되는) telnet을 대체할 수 있고, SSH 프로토콜로 FTP 대신 쓸 수 있는 SFTP도 구현할 수 있어서 쓸만 합니다. (보안이 안되는 프로토콜들에 비해서 느린 게 단점.)

우분투에서는 openssh 라는 프로그램(패키지)이 SSH를 구동시키는데, 우분투 데스크톱 버전에는 openssh가 없을 겁니다.

한번 확인해보죠. 터미널 창을 열고(단축키 : Ctrl+Alt+T)…

▲ dpkg -l | grep openssh
라고 쳐봤더니 클라이언트 프로그램밖에 없네요. openssh-server가 필요한데.

아래 스샷과 명령어를 참고하여 패키지 목록을 업데이트하고 openssh-server 패키지도 설치합니다.

▲ sudo apt-get update
sudo apt-get install openssh-server

 

설치가 끝났으면… 정상적으로 설치됐는지 확인해봅시다. 아래의 명령어를 입력합니다.

dpkg -l | grep openssh

▲ openssh-server 와 openssh-sftp-server 가 추가되었을 겁니다.

 

이제 SSH서버 서비스를 시작해 보죠.

▲ sudo service ssh start 라고 입력합니다.

 

서비스가 잘 실행되고 있는지 확인해봅시다.

▲ service –status-all | grep +

위 명령어는 현재 실행 중인 서비스 목록을 확인하는 출력 명령인데, 그 중 ssh가 있으면 된 겁니다.

 

SSH 서비스가 몇 번 포트를 점유하고 있는지도 확인합니다.

▲ sudo netstat -antp

22번 포트를 점유하고 있군요.

 

SSH 접속 테스트를 해봐야겠죠?

PC용 SSH 클라이언트 프로그램인 PuTTY를 이용하거나…
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
(위 페이지에서 putty.exe 단일 실행파일을 받으면 됩니다.)

안드로이드용 앱인 Mobile SSH 무료 버전을 이용하면 됩니다.
https://play.google.com/store/apps/details?id=mobileSSH.feng.gao

 

▲ PuTTY는 Host Name 란에 IP주소/DDNS 주소 넣고 Open버튼 누르면 돼요. 기본 포트는 22.
(공유기 포트포워딩/포트트리거 기능으로 포트번호 바꿨으면 포트주소도 수정해줘야 하겠고요.)

 

▲ 접속하면 아마 이런 식으로 화면이 뜰 겁니다.
(login as : 에는 우분투 계정 ID / 계정명@IP주소’s password : 에는 우분투 계정 비번을 입력하세요.)

 

▲ 저는 Mobile SSH 앱으로 시도해 봤는데 접속 잘 되네요.

 

여기까지가 기본입니다.

 

—————————————————————-

 

※ SSH에서 root계정 사용하기

저는 우분투 계정의 SSH 접속을 막고, 우분투 계정의 SFTP 접속은 허용하되 특정 디렉토리 위로는 못 올라가게 하고, 루트 계정으로는 SSH/SFTP 전부 가능하게끔 설정할 겁니다.

이번 설명은 첫번째 단계로, SSH에서 ROOT 계정을 사용하게 하는 법!

[우분투 16.04] root 계정의 암호를 변경하는 법(옵션)
▲ 먼저 조치해야 합니다.

터미널 창을 띄우고(단축키 : Ctrl+Alt+T), 슈퍼유저 권한으로 에디터를 열면서 SSH 설정파일(/etc/ssh/sshd_config)을 로드합니다.

▲ sudo gedit /etc/ssh/sshd_config
(저는 지에디트 좋아해서 이렇게 쳤습니다. vi나 vim 등의 에디터를 쓰셔도 됩니다.)

 

▲ PermitRootLogin 항목을 찾습니다. 아마 # Authentication 카테고리에 있을 거고요,

PermitRootLogin without-password
PermitRootLogin prohibit-password

등등의 형태로 되어있을텐데, 이것을…

 

▲ PermitRootLogin yes 라고 바꿔주고 저장+빠져나옵니다.

 

그리고 아래의 명령어를 입력하여 ssh 서비스를 재시작해 줍니다.

▲ sudo service ssh restart

 

처치 끝.

SSH 클라이언트 프로그램으로 root 계정 접속 테스트해 보세요.

 

▲ 저는 root 계정으로 접속 성공했네요.

 

공유기 DDNS 기능으로 주소 고정하고, 포트포워딩/포트트리거 기능으로 공유기 포트 (바꿔서) 열어주면 외부에서도 접근 가능합니다.

공유기 DDNS, 포트포워딩 기능 설정법들도 예전에 포스팅한 적이 있으니까, 찾아보고 개념 잡아보세요.

 

▲ 원맨쇼로 좋은 음악 연주하기 : 헨리퍼셀 – 론도

CC BY-NC-ND 4.0