- Published on
ssh 로 서버 접속하기
- Authors
- Name
- hongreat
- ✉️hongreat95@gmail.com
SSH를 통해 서버에 접속하거나, 파일을 전송하거나, 원격 명령어를 실행할 수 있습니다. AWS EC2와 같은 원격 서버에 접속하기 위해 PEM 파일을 사용하고, SSH 명령어를 통해 연결한 과정을 기록합니다.
1. 필요한 정보 확인
먼저 IP 와 DNS 정보가 어떤 것인지 확인해야합니다. 각 데이터는 다음과 같습니다.
예시
- Public DNS: :
ec2-123-000-456-99.compute-1.amazonaws.com
- Public IP: :
123.000.456.99
- 키 페어 파일: 인스턴스 생성 시 다운로드한
.pem
파일 입니다.
대표적으로 많이 사용되는 OS는 Linux, Ubuntu, CentOS가 있습니다.
- 사용자 이름: 사용자(UserName)는 서버가 어떤 OS를 사용하는지에 따라 다릅니다.
- Amazon Linux:
ec2-user
- Ubuntu:
ubuntu
- CentOS:
centos
- Amazon Linux:
2. SSH 명령어
SSH: 원격 접속을 위한 암호화 프로토콜 입니다. PEM: SSH에서 사용되는 개인 키 파일로, 서버 인증을 위한 열쇠 입니다.
SSH로 연결하기 위해 다음 명령어를 사용합니다
Amazon Linux의 경우 다음 명령어로 서버에 접속할 수 있습니다.
ssh -i key_file_name.pem ec2-user@Public-DNS
- key_file_name:
.pem
파일이 위치한 경로부터 입력해야 합니다. - ec2-user: 사용자 이름 (Ubuntu의 경우
ubuntu
이므로 잘 확인해야 해야합니다.) - Public-DNS: Public DNS 또는 Public IP 주소
3. 에러 발생 시
퍼미션 에러 발생 시, .pem
파일 권한을 변경해야 합니다. .pem
파일 권한이 제한되어야 합니다. (파일의 권한은 이 파일이 어떤 기능을 할지에 따라 달라집니다.)
.pem 파일이 위치한 경로에서 ls -al
명령어를 입력하면, 파일의 권한을 확인할 수 있습니다.
파일 권한에 대한 명령어는 chomod 명령어를 사용합니다.
chmod 400 key_file_name.pem
4. SSH Config 설정팁
EC2에 자주 접속해야 한다면 SSH 설정 파일을 사용해 간편하게 연결할 수 있습니다. 반복되는 같은 정보를 반복해서 입력하지 않아도 되어 편리합니다.
vi ~/.ssh/config (or nano ~/.ssh/config)
.ssh 디렉토리에 config 파일을 생성합니다. 이는 SSH 설정 파일로, SSH 연결에 필요한 정보를 저장합니다. 편한 편집기 명령어를 사용하면 됩니다.
Host {ec2-server}
HostName Public-DNS
User ec2-user
IdentityFile key_file_name.pem
이렇게 config 파일을 작성하면, 다음과 같이 간단하게 SSH로 연결할 수 있습니다.
ssh ec2-myserver