#1 교육 리뷰
오늘은 DNS server 에서의 Domain 과 Hostname 의 개념을 배웠으며,
두 번째로는 bind에 대해서 전반적으로 개념 공부 및 실습을 했습니다.
마지막으로는 tomcat 연동과 워드프레스를 linux를 통해 웹에 실행 하기를 했습니다.
bind를 하면서 apache2 가 제대로 작동되는 것이 관건이였습니다.
#2 DNS server
-domain : 네트워크의 외부 이름, 인터넷 상에서 컴퓨터나 네트워크를 식별하는 이름으로, 도메인 이름을 이용하여 IP 주소로 연결되는 구조를 가지고 있습니다.
ex) naver.co.kr
-hostname : 네트워크 내부의 컴퓨터를 구분하기 위한 이름, 네트워크 상에서 컴퓨터를 식별하는 이름입니다. 호스트네임은 일반적으로 도메인 이름의 일부이지만, 로컬 네트워크에서는 IP 주소를 호스트네임으로 사용하기도 합니다.
ex) www.naver.com
오늘 교육의 전반적인 내용을 조금 더 이해하기 쉽게 아래 그림을 참고해주세요.
- domain 필요 이유 : domain ==> ip 로 변환 해줍니다. 반대의 기능도합니다. 네트워크에 참여하는 컴퓨터가 많지 않을 때는 /etc/hosts 파일만으로 통신할 수 있었지만 네트워크에 참여하는 컴퓨터가 늘어나면서 모든 정보를 기억하는 것이 불가능해졌기 때문입니다.
nslookup)
입력하는 주소에 대한 ip 정보를 가져옵니다. ip를 입력할 경우 컴퓨터의 hostname을 볼 수 있습니다.
nslookup
naver.com
google.com
네임서버의 구조)
네임서버의 작동은 높은 곳에서 부터 시작됩니다.
만약 naver.com 을 사용자가 입력하면 개인 네임서버 -> root 네임서버 -> com 네임서버 -> NAVER
name server의 동작 원리와 zone의 개념
bind)
먼저 bind를 설치해줍니다.
apt -y install bind9 bind9utils bind9-doc dnsutils
systemctl start bind9 # bind 시작
systemctl restart bind9 # bind 수정 후 적용
systemctl status bind9 # bind 상태 학인, 현재 active (running) 으로 되어 있으면 정상적으로 실행 중입니다.
ufw status # 그리고 작업에 앞서 방화벽을 해제해줍니다.
cd /etc/bind/ # 경로를 /etc/bind 로 이동해줍니다.
ll # bind 안에 list를 확인해주면 아래와 같이 named.conf // named.conf.default-zones // named.conf.local // named.conf.options 를 확인할 수 있습니다.
위의 파일들을 수정을 해줄건데요, 아래 순서와 같이 수정하겠습니다.
vi named.conf.options # 먼저, named.conf.options를 vi로 들어갑니다.
여기서 아래 내용을 수정 및 추가 해줍니다.
dnssec-validation no #원래 auto로 되어 있는데 no로 수정해줍니다.
recursion yes; # 추가
allow-query { any; }; # 추가
vi named.conf.default-zones # named.conf.default-zones 를 vi로 들어가줍니다.
그리고 아래 코드를 추가로 입력해줍니다.
zone "it.kr" {
type master;
file "/etc/bind/it.zone";
};
zone "20.50.100.in-addr.arpa" {
type master;
file "/etc/bind/it.rev";
};
cp db.local it.zone # db.local 을 it.zone 에 복사하기
vi it.zone # it.zone 에 들어가서 아래 내용을 입력하고 저장!
@ IN SOA ns.it.kr. master.it.kr. ( # 5번라인
@ IN NS ns.it.kr.
IN A 100.50.20.10
ns IN A 100.50.20.10
www IN A 100.50.20.20
ftp IN A 100.50.20.30
mail IN A 100.50.20.40
sun IN CNAME www
cp it.zone it.rev # 이번에는 it.zone 을 it.rev에 복사해줍니다.
vi it.rev
@ IN NS ns.it.kr.
IN A 100.50.20.10
IN PTR it.kr.
10 IN PTR ns.it.kr.
20 IN PTR www.it.kr.
20 IN PTR sun.it.kr.
30 IN PTR ftp.it.kr.
40 IN PTR mail.it.kr.
그리고 아래와 같이 named 를 restart를 해주면 아무 에러가 안뜨면 정상입니다.
systemctl restart named
nslookup
> server 127.0.0.1 # 본인 아이피로 들어가서 주소 또는 ip 를 입력해서 확인해줍니다
#3 tomcat 연동
apt -y install tomcat9 tomcat9-examples tomcat9-admin tomcat9-docs # tomcat9 을설치해줍니다.
systemctl start tomcat9 # tomcat9 을 시작해줍니다.
systemctl status tomcat9 # tomcat9 이 잘 작동하고 있는지 확인해줍니다.
cd /etc/apache2/mods-enabled/
ln -s ../mods-available/userdir.conf
ln -s ../mods-available/userdir.load
systemctl restart apache2
후에 홈페이지를 열어서 127.0.0.1:8080 으로 들어가주시면 tomcat 연동을 확인 할 수 있습니다.
#4 일반 사용자 홈페이지 만들기
adduser tott # tott 이라는 user를 생성해줍니다.
passwd tott
New password: j
Retype new password: j
duplicate sesstion 을 열어 tott 으로 login 해줍니다.
mkdir public_html && cd public_html
vi index.html # vi 안에 아래 명령어를 입력해줍니다.
<meta charset='utf-8'>
<body bgcolor=green text=white> <br><br> <h1><center>
<hr> <br>
안녕하세요. 톳 입니다. <br><br>
<hr><br><br>
ls
chmod 755 ~
systemctl restart apache2
이렇게 되면 웹에 가서 127.0.0.1/~tott 이라고 입력하면 아래와 같이 사용자로도 홈페이지를 연동 할 수 있습니다.
#5 워드프레스
apt -y install php php-curl php-gd php-intl php-mbstring php-soap php-xml php-xmlrpc php-zip php-mysql # 먼저 php 관련 파일을 설치 해줍니다.
워드프레스 링크를 가져오기 위해 '워드프레스 다운로드' 를 검색해줍니다.
다운로드하고 설치 클릭!
여기서 Download.tar.gz 를 우클릭 하여 링크 복사를 해줍니다.
wget https://ko.wordpress.org/latest-ko_KR.tar.gz # 리눅스에 압축파일을 불러옵니다.
ls # 아래와 같이 latest-ko_KR.tar.gz 이 불러와진걸 확인합니다.
tar xf latest-ko_KR.tar.gz # 압축 해제
ls # 아래와 같이 wordpress 압축 파일이 해제 되었습니다.
mv wordpress/ wp
cd wp/
ls
cp wp-config-sample.php wp-config.php
vi wp-config.php # 아래 내용으로 수정해줍니다.
# 'tottDB'
# 'mytott'
# 'j'
systemctl stop tomcat9 # timcat9 은 stop 해두고
systemctl restart apache2 # 변경된 내용을 실행하기 위해 restart apache2 를 해줍니다.
웹에서 127.0.0.1/wp 를 검색하면 아래와 같이 워드프레스와 연결 완료! 축하드립니다~^^~
'[Naver Cloud Camp 7] 교육 정리' 카테고리의 다른 글
네이버 클라우드 캠프 9일차 230504 (1) | 2023.05.04 |
---|---|
네이버 클라우드 캠프 8일차 230503 (1) | 2023.05.03 |
네이버 클라우드 캠프 6일차 230501 (1) | 2023.05.01 |
네이버 클라우드 캠프 5일차 230428 (1) | 2023.04.28 |
네이버 클라우드 캠프 4일차 230427 (0) | 2023.04.27 |