Search

Ubuntu Server 정리

✅ 목차

🛠️설정

🔑 공개키 기반 SSH 연결 설정

기본적으로 SSH 접속 시 패스워드를 입력하여 접속하는 경우가 많다. 하지만 개인적으로 외부에 노출되는 서버에 SSH 접속이 필요할 경우에는 패스워드 기반의 접속보다 공개키 기반의 SSH 연결이 안전하다.

🗝️ 키 쌍 생성

먼저 이전과 같이 패스워드를 입력하여 서버에 접속하여, ssh-keygen 명령어를 사용하여 키 쌍(공개키, 개인키)을 만들어준다.
-t 옵션 : 생성할 키 타입
-b 옵션 : 생성할 키의 비트 수
-C 옵션 : 코멘트
ssh-keygen -t rsa -C "TEST"
Bash
위 명령어 입력 시 키 생성을 위해 아래와 같이 여러 정보의 입력을 요구한다.
Enter file in which to save the key : 개인키가 저장되는 위치 (기본 값 - ~/.ssh/)
Enter passphrase (empty for no passphrase) : 패스워드 (미 입력 시 패스워드 설정 안함)
Enter same passphrase again : 패스워드 확인
생성이 완료되었다면 경로로 이동하여 공개키와 사설키를 확인할 수 있다.
이후 공개키 정보를 ~/.ssh/authorized_keys 파일에 아래 명령어로 저장한다. 이 파일은 공개키 기반 SSH 접속 시 사용된다.
💡
~/.ssh/authorized_keys 해당 파일이 없을수도 있지만 아래 명령어로 만들어도 된다.
# cat [공개키 경로] >> [공캐키 목록 파일] cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
Bash

🔎 생성한 사설키 얻어오기

생성한 키 쌍에서 사설키를 가져오는 방법은 2가지가 있다. 본인은 2번 방법으로 해보았지만, 1번으로 파일을 직접받는게 편하긴 하다.
1.
scp 명령어를 사용하여 로컬로 전송
2.
cat 명령어를 사용하여 드래그 후 복사
아래 명령어를 사용하여 사설키를 확인한다. 본인은 기본 경로에 저장되도록 키 쌍을 만들었기 때문에 ~/.ssh/ 경로에 존재하였다.
# cat [사설키 경로] cat ~/.ssh/id_rsa
Bash
위 결과를 드래그해서 별도의 파일로 만들어주었다. 하지만 이렇게 파일로 받는 방식이 아닌 드래그로 긁어 사설키를 만들때는 주의할 점이 있다.
바로 오른쪽 사진 처럼 맨 마지막줄을 반드시 공백으로 해야한다는 것이다. 만약 왼쪽 사진처럼 사설키를 만들면 사설키가 동작하지 않는다.

🛠️ SSH 서버 설정파일 변경

서버에 키 쌍을 만들고 키 쌍에 맞는 사설키를 로컬에 저장하였다면 이제 서버의 설정을 변경해주어야 한다.
기존 패스워드 방식의 로그인을 막고 공개키 로그인 방식을 사용하도록 만들어주어야 한다.
/etc/ssh/sshd_config 명령어를 관리자 권한으로 오픈하여 아래처럼 설정파일을 변경해준다.
PubkeyAuthentication 옵션의 # 을 제거하여 공개키 로그인 옵션 활성화
AuthorizedKeysFile 옵션의 # 을 제거 후 공개키 정보가 작성된 파일 위치 설정
PasswordAuthentication 옵션의 값을 yes 에서 no 로 변경하여 패스워드 로그인 옵션 비활성화
변경 전
#PubkeyAuthentication yes ... #AuthorizedKeysFile .ssh/authorized_keys ... PasswordAuthentication yes
Plain Text
변경 후
PubkeyAuthentication yes ... AuthorizedKeysFile .ssh/authorized_keys ... PasswordAuthentication no
Plain Text

👨🏻‍💻 SSH 재 시작후 확인

모든 설정이 완료되었다면 ssh 서버를 재시작 후 공개키 기반 인증을 사용하여 접속을 시도한다.
# SSH 서버 재시작 service sshd restart
Bash
ssh 명령어에서 -i 옵션을 사용하여 접속 시 사용할 사설키를 설정할 수 있다.
# 공개키 기반 인증 SSH 접속 ssh -i "개인키 경로" USER@IP
Bash

🌐 WEB SERVER

apache 서버 설치 후 사용

sudo apt-get update sudo apt-get install apache2 sudo apt-get install php libapache2-mod-php7.0 # /etc/apache2/mods-enabled/mime.conf 파일에 내용 추가 # AddType application/x-httpd-php .php .php3 .html .htm # AddType application/x-httpd-php-source .phps sudo systemctl start apache2.service
Bash
TOP