본문 바로가기

(Dev)Ops

Docker를 이용한 Linux 설치. sshd 설정.

DevOps 관련 도구를 테스트해 보기 위해, Linux 머신이 필요했습니다. 이런 용도로 가볍게 쓰다 버릴 수 있는 구조로 만든 것이 Docker 아니겠습니까? Docker 로 Linux 를 설치해보았습니다.

 

먼저 docker 를 설치합니다. 맥의 경우, docker.com 에서 Docker Desktop for Mac 을 다운받아 설치하시는 것이 가장 좋은 방법입니다.

 

아래 커맨드를 실행하면 Docker repository 에서 ubuntu 도커 이미지를 다운로드 받아 백그라운드로 실행합니다.

 

> docker run -dit -p 1022:22 --name 'ubuntu' ubuntu

 

-p 1022:22 는 host 의 1022 번 포트를 22번(ssh) 포트에 연결한다는 의미입니다.

--name 'ubuntu'는 이 Docker Instance 의 이름을 ubuntu 로 하겠다는 것이고 바꿔도 상관없습니다.

 

아래 커맨드를 실행하면, 루트 권한으로 ubuntu shell 에 접속합니다.

 

> docker attach ubuntu

 

이제 sshd 를 설치해야 합니다. Docker 에서 받은 이미지는 최소 사이즈로 빌드된 것이기 때문에, 보통 기본적으로 설치되어 있지만, Docker 의 경우 새로 설치해야 합니다.

 

apt-get install net-tools vim openssh-server

 

오류가 나는 경우, apt-get update 를 한번 실행해주시면 잘 된다는 제보가 있었습니다.

 

root 의 비밀번호를 설정하고, /etc/ssh/sshd_config 파일 내의 PermitRootLogin 을 yes 로 수정합니다. 제가 테스트해 보고 싶은 툴에서 이게 필요했기 때문인데요, 보안때문에 실서버에서는 이렇게 설정하지 않습니다.

 

이제 sshd 를 실행합니다.

 

> service ssh start

 

접속이 잘되는지 테스트해 봅니다.

 

> ssh -l root -p 1022 localhost

 

아까 설정한 root 비밀번호로 접속하면 됩니다.