Cloud/Azure

Azure 실습 3

서머스 2022. 6. 7. 17:49

Win12 가상머신 만들기

만들기 - Azure 가상 머신

 

리소스 그룹 - 'rg-test' 이름으로 새로 만든다.

가용성 옵션 - 가용성 영역 - zone1 으로 설정한다.

이미지 - [smalldisk] Win12 Gen2

인바운드 포트 선택 - HTTP, RDP

 

가상 머신에서 이용되는 디스크를 업로드 할 수 있다. - 호환성

[새 디스크 만들기 및 연결] 클릭

 

[크기 변경] - 8G로 만든다.

암호화 형식 - 데이터 암호화 <= 데이터 도청 방지할 수 있다.

 

디스크가 생성된다.

 

 

서브넷 - default로 24비트, 크게 중요하지 않다

공용 IP - IP 복사-붙여넣기 할 필요 없음, Azure에서 미리 세팅된 별칭의 이름이 붙어 있다(webserver-ip)

 

바로 [검토 + 만들기] 클릭

 

MariaDB 서버 만들기

mariadb 검색

 

[만들기] 클릭

 

리소스 그룹 - rg-test 선택

서버 이름 - 중복 검사를 하기 때문에 할튼 어렵게 지어야 한다

위치 - Korea Central(South 아님)

컴퓨팅 + 스토리지 - [서버 구성] 클릭

컴퓨팅 계층 - 기본

vCore - 1개

스토리지 크기 - 5G

 

* 용어

Scale Up - VM의 용량이 늘어남

Scale Out - VM의 개수가 늘어남. 5G의 VM이 n개

 

[만들기] 클릭한다.

 

 

원격 데스크톱 연결하기

윈도우에서 [원격 데스크톱 연결]

가상 머신 webserver의 공용 IP를 입력한다

 

접속완료된 모습

 

Computer Management 클릭

(내 컴퓨터 - 관리 와 같음)

우측 [Disk Management] 클릭 - Initialize Disk가 뜬다.

그대로 OK를 누른다.

-> 이 작업을 하지 않으면 이전에 추가한 디스크가 나타나지 않는다.

Attach는 됐지만, 내 컴퓨터에서 나타나지 않는다.

 

Unallocated 상태인 것을 확인할 수 있다.( 포멧, mount되지 않은 것)

오른쪽 마우스 - New Simple Volume 클릭

 

기본 설정대로 저장한 뒤 - Finish 한다.

 

디스크 F가 추가된 모습.

 

 

Baltimore, wordpress.zip, WebplatformInstaller를 F디스크에 복사 - 붙여넣기 한다.

wordpress.zip 은 Extract 한다.

 

IIS(Internet Information Service) 설치하기

Server Manager (작업표시줄 서류가방) 아이콘 클릭 - Manage - Add Roles and Features 클릭

 

Server Roles - Web Server(IIS)를 클릭하면 - 우측 창이 뜬다.

[Add features] 클릭한다.

 

나머지 다 기본값으로 설정 뒤 [Install] 클릭한다.

설치가 끝나면 [Close]를 눌러 창을 닫아준다.

 

WebPlatformInstaller를 설치한다.

 

Server Manager (작업표시줄 서류가방) 아이콘 클릭 - Tools - Internet Information Service(IIS) Manager 클릭

 

이미 Webserver Platform이 설치되어 있기 때문에 No를 클릭한다.

Web Platform Installer 아이콘을 클릭한다.

 

php 검색 - PHP 7.4.13 을 [Add]한 뒤 하단의 [Install] 버튼 클릭한다.

 

 

 

* LAMP

Linux / Apache / Mysql / Php

 

현재 Win12의

Windows/ IIS/ Mariadb / Php

와 상응한다.

 

Wordpress 설치하기

아까 압축 해제했던 wordpress.zip 내의 파일을 C:/inetpub/wwwroot 로 옮긴다.

기존에 있던 iis-85, iisstart는 지워준다.

BaltimoreCyterTrustRoot.crt.pem 파일을 복사 - wwwroot에 붙여넣기 한다.

wwwroot 폴더 오른쪽 마우스 클릭 - properties 클릭 

[Security] 탭에서 [Edit] 버튼을 누른다.

 

Users(webserver\Users)와 IIS_IUSRS(webserver\IIS_IUSRS)의 Permissions를 Allow로 수정한 뒤 - Apply를 누르고 - OK버튼을 누른다.

 

Moba Xterm으로 접속하기 위해 ssh Key 만들기

moba xterm에 들어간다

Settings - Configuration

Downloads 폴더 안에 새로운 폴더를 만든 뒤 home directory로 설정한다. - 강제 종료 후 자동으로 재시작하게 된다.

가운데 start local terminal를 클릭한다.

 

기본 디렉터리에 변경 사항이 없으면 그냥 엔터 누른다.

passphrase도 지정하지 않는다.

id_rsa.pub 파일이 생성된 모습

 

id_rsa파일을 id_rsa.pem 파일로 이름을 변경한다.(편의상 pub키와 구분하기 위해)

 

그 다음 home directory에 Baltimore.pem 파일을 옮겨 둔다.

 

출발지 IP

마리아DB의 IP가 보안상의 이유로 출발지 IP를 제한하고 있다.

하지만 azure에서는 [클라이언트 IP 추가] 를 통해 하나의 IP를 세팅할 수 있다.

그래서 이 아이피에 한해서는 접속이 가능하도록 하고 있다. (원래는 오로지 마리아DB의 IP로만 접속할 수 있음.)

현재 구역 내에서만 접속 가능, 컴퓨터의 인터넷 연결 장소를 옮기면 안됨- 출발지 IP가 달라졌기 때문에

 => 이를 세팅하지 않으면 우리가 만든 DB서버에 접속할 수 없다.

 

[클라이언트 IP 추가] 버튼을 추가해서 내 컴퓨터 IP에서 접속할 수 있도록 한다

꼭 좌측의 [저장] 버튼을 눌러야 적용된다.

 

Access denied -> 어쨌든간에 mysql 클라이언트가 있다는 의미

-h : host, DB호스트

DB호스트의 주소는?

아까 저장했던 DB 서버 호스트를 우측에 입력한다.

서버 이름
shchoi2022.mariadb.database.azure.com

 

 
서버 관리자 로그인 이름
azureuser@shchoi2022

 

mysql -h shchoi2022.mariadb.database.azure.com -u azureuser@shchoi2022 -p --ssl-ca=BaltimoreCyberTrustRoot.crt.pem

-u : user

-ca : certificate authentication (보안 인증서)

 

mysql에 접속한 모습

 

CREATE USER 'wpuser'@'%' IDENTIFIED BY 'wppass';
CREATE DATABASE IF NOT EXISTS wordpress;
GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'%';
quit

wordpress DB를 만든다.

 

Win12로 다시 돌아간 뒤, wwwroot 디렉터리에서 wp-config-sample.php의 복사본을 만든다.

그 다음 복사본의 이름을 wp-config.php로 변경한다.

 

wp-config.php파일을 open - Notepad로 연다

 

* Azure의 DB 서버는 @뒤에 서브도메인의 이름이 온다.

 

database_name_here => wordpress

username_here => wpuser@shchoi2022 

password_here => wppass

localhost => shchoi2022.mariadb.database.azure.com

로 replace 한다.

(띄어쓰기가 추가되지 않도록 주의한다)

 

바로 아랫줄에

 

//** Connect with SSL** //
define('MYSQL_CLIENT_FLAGS', MYSQLI_CLIENT_SSL);
//** SSL CERT **//
define('MYSQL_SSL_CERT','BaltimoreCyberTrustRoot.crt.pem');

를 추가한다.

- SSL과 연결한다.

- 현재 경로에 pem파일(key)가 있다.

다시 Win12의 IIS Manager로 가서

우측의 [Manage Website] - [Restart]를 클릭한다.

 

후 webserver의 Public IP로 접속하면

오류가 난다.

 

이는 현재 로컬의 IP만 클라이언트 IP로 추가했기 때문이다.

webserver의 IP도 클라이언트 IP로 추가하여, webserver에서도 DB에 접근할 수 있도록 한다.

저장 후 다시 public IP로 접속해본다.

 

'Cloud > Azure' 카테고리의 다른 글

Azure 실습 2  (0) 2022.06.03
Azure 시작하기  (0) 2022.06.02