예상 네트워크 망도

WEB03
WebShare 설치에 앞서 HAProxy의 밑작업으로 로컬페이지를 헷갈리지 않게 수정하자.





WEB03 - WebShare
해당 파일을 다운로드 받자.





이미 웹서버로 80포트로 사용 중이므로, 포트 충돌이 일어난다. 그러므로 포트를 변경해줘야한다.




위의 파일을 다운로드 해주자.

서버들에 키 전송



mv id_rsa* .ssh/

ssh-copy-id -i .ssh/id_rsa root@[WEB01 주소]

ssh-copy-id -i .ssh/id_rsa [우분투 아이디]@[WEB02 주소]

이제 전송된 키로 접속을 해볼 것이다.
그 전에, 전송된 키의 퍼미션이 너무 개방돼서 퍼미션을 수정해줘야한다.

chmod 400 .ssh/id_rsa

ssh -i .ssh/id_rsa root@[WEB01 주소]

WEB01 - CentOS7
WEB01 기본 세팅
# 호스트 네임 설정
hostnamectl set-hostname web01
# 자동완성 설치
yum install -y bash-completion
# wget 설치
yum isntall -y wget
편의성을 위해 호스트 네임 변경하고 자동완성과 wget을 설치 해주자.
# httpd 설치
yum install -y httpd
# httpd 설치 확인
ss -ant
# httpd 재기동
systemctl enable --now httpd
# httpd 설치 확인
ss -ant

WEB01에서 WEB03 웹쉐어 파일 받기
웹쉐어의 포트를 8080으로 변경했으므로, WEB03에서 8080포트를 개방해줘야한다.









다시 MobaXterm으로 돌아와 WEB01에서 wget으로 해당 링크를 다운로드 받을 것이다.
wget http://[WEB03 주소]:8080/Downloads/aws.tar

# aws.tar 파일을 /var/www/html 에 압축해제.
tar xvf aws.tar -C /var/www/html

WEB02 - Ubuntu
키 방식 접속
ssh -i .ssh/id_rsa [아이디]@[WEB02 주소]

root 계정으로 변경
sudo su - root

이런 식으로 'root'계정을 사용할 수 있다. 하지만, 당분간은 일반 사용자로 이용할 것이다
# 직전으로 돌아가기
exit
기본 세팅 및 설치
# 호스트 네임 설정
sudo hostnamectl set-hostname web02
이번엔 전과 달리 아파치가 아니라 nginx을 사용해볼 것이다.
# 패키지 설치 전에 저장소 확인
sudo apt update
# nginx 설치
sudo apt install -y nginx
# nginx 확인
sudo systemctl status nginx
# 포트 확인
ss -ant

참고로, 우분투는 방화벽이 기본적으로 있지 않다. 필요한 경우에 다운로드 받아 사용해야한다.

WEB02와 달리 WEB01은 접속이 안될 것이다. 그 이유는, WEB01은 아직 방화벽으로 막고 있기 때문이다.
그렇기 때문에 설정을 해줘야한다.
# WEB01에서 방화벽 설정
firewall-cmd --permanent --add-service=http
# 방화벽 재기동
firewall-cmd --reload
# 방화벽 확인
firewall-cmd --list-all


# WEB01의 index.html 수정
vi /var/www/html/index.html


다시 WEB02로 돌아와서,
이제 aws.tar파일을 web01에서 한 것 처럼 다운받을 것이다
wget http://[WEB03 주소]:8080/Downloads/aws.tar

# 다운로드 받은 aws.tar파일을 index.html 이 있는 폴더에 압축 해제
sudo tar xvf aws.tar -C /var/www/html

# WEB02의 index.html 수정
sudo vi /var/www/html/index.html
WEB01 - SAMBA
SAMBA 설치
전에 실습에서 배운대로 SAMBA를 설치할 것이다.
web01로 이동하자.
# SAMBA 설치
yum install -y samba
mkdir -p /var/samba/share // '-p' 경로상에 폴더 생성(없는 폴더에도 가능)
chmod 777 /var/samba/share // 모두에게 해당 디렉토리에 대한 모든 권한을 부여
adduser kosa
passwd kosa // 비밀번호. 필자는 kosa0220 으로 설정
smbpasswd -a kosa // 서버메쉬블록. 필자는kosa0220으로 설정
# 삼바 설정
vi /etc/samba/smb.conf
// 맨 아래에 이어 붙이기
[share]
comment = Share Directory
path = /var/samba/share
browserable = yes
writable = yes
valid users = kosa
create mask = 0777
directory mask = 0777
//
#[share]
# comment = Share Directory // 설명(주석)
# path = /var/samba/share // 경로
# browserable = yes // yes =모두가 읽을 수 있음, no = 허가된 사용자만
# writable = yes // yes =모두가 저장할 수 있음, no = 허가된 사용자만
# valid users = kosa // 인가된 사용자
# create mask = 0777 // 파일을 만들면 자동으로 777권한을 부여
# directory mask = 0777 // 폴더를 만들면 자동으로 777권한을 부여

# 재기동 해줘야한다.
systemctl enable --now smb
systemctl enable --now nmb
SAMBA 포트 개방
# SAMBA 서비스 개방
firewall-cmd --permanent --add-service=samba
firewall-cmd --reload

SAMBA 를 이용한 파일 공유




WEB02에서 SAMBA 클라이언트 설치
# 우분투로 SAMBA 클라이언트 설치
sudo apt install smbclient -y
WEB02에서 SAMBA 로그인
smbclient //10.11.0.100/share -U kosa

WEB02(Ubuntu) - NFS
WEB02 - NFS 설치
# 패키지 설치 전에 해주는 습관을 들이자
sudo apt update
# nfs에 필요한 패키지 설치
sudo apt install nfs-common nfs-kernel-server portmap -y
# 10.11.0.0 대역폭만 nfs폴더를 마운트 할 수 있도록 설정
sudo chmod 777 /etc/exports
sudo mkdir /share && cd $_
vi /etc/exports
//
/share 10.11.0.0/24(rw,sync)
//
sudo chmod 707 /share
sudo systemctl restart nfs-server
sudo exportfs -v


WEB01 - NFS 클라이언트
# 클라이언트
sudo yum install -y nfs-utils
# 마운트 정보 확인
showmount -e 10.11.0.101
# 망누트 폴더 만들고 설정
mkdir share
mount -t nfs 10.11.0.101:/share share
vi /etc/fstab
//
10.11.0.101:/share /root/root nfs defaults 0 0
//


WEB03(Windows) - NFS 클라이언트







설치가 끝났으니 계정 지정 없이 GUI로 NFS 서버와 연결해보자.



DNS 서버
VM 만들기
CentOS7으로 운용할 것이므로, 전에 만들었던 CentOS7가 설치된 백업파일을 가져오자.







키 인증 방식 접속
NS서버의 전원을 켜보자.
그리고 MobaXterm에서 다른 서버와 같이 키를 전송하여 키 인증 방식으로 접속해보자.
# DNS서버에 키 전송
ssh-copy-id -i .ssh/id_rsa root@[DNS 서버 아이피]

# 키 인증 접속
ssh -i .ssh/id_rsa root@[DNS 서버 아이피]

DNS 서버 기본 설정 및 패키지 설치
hostnamectl set-hostname ns
yum install -y bash-completion
# bind 설치
yum -y install bind bind-chroot bind-utils
# DNS 설정
vi /etc/named.conf
// 다 지우고 붙여넣기
options {
listen-on port 53 { 127.0.0.1; [퍼블릭 대역폭]; [프라이빗 대역폭]; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
recursing-file "/var/named/data/named.recursing";
secroots-file "/var/named/data/named.secroots";
allow-query { localhost; [퍼블릭 대역폭]; [프라이빗 대역폭]; };
forwarders { 8.8.8.8; 8.8.4.4; };
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
pid-file "/run/named/named.pid";
session-keyfile "/run/named/session.key";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
view "internal" {
zone "." IN {
type hint;
file "named.ca";
};
include "/etc/named.rfc1912.zones";
include "/var/named/[원하는 도메인명].shop.zones";
};
//

vi /var/named/[위에서 설정한 도메인명].shop.zones
// 붙여넣기
zone "[설정한 도메인명]" IN {
type master;
file "[설정한 도메인명].shop.db";
allow-update { none; };
};
zone "[프라이빗 대역폭 역주소].in-addr.arpa" IN {
type master;
file "[프라이빗 대역폭 역주소].in-addr.arpa.db";
allow-update { none; };
};
//

vi /var/named/[설정한 도메인명].shop.db
//
$TTL 86400
@ IN SOA [설정한 도메인].shop. root.[설정한 도메인].shop.(
2022041401 ; Serial
3h ; Refresh
1h ; Retry
1w ; Expire
1h ) ; Minimum
IN NS ns.[설정한 도메인].shop.
IN MX 10 ns.[설정한 도메인].shop.
ns IN A [DNS 서버 주소]
web01 IN A [WEB01 서버 주소]
web02 IN A [WEB02 서버 주소]
web03 IN A [WEB03 서버 주소]
//

vi /var/named/[프라이빗 역주소].in-addr.arpa.db
//
$TTL 86400
@ IN SOA [설정 도메인].shop. root.[설정 도메인].shop.(
2022041401 ; Serial
3h ; Refresh
1h ; Retry
1w ; Expire
1h ) ; Minimum
IN NS ns.[설정 도메인].shop.
[끝주소] IN PTR ns.[설정 도메인].shop.
[끝주소] IN PTR web01.[설정 도메인].shop.
[끝주소] IN PTR web02.[설정 도메인].shop.
[끝주소] IN PTR web03.[설정 도메인].shop.
//

# named 재기동
systemctl enable --now named
# 방화벽 설정
firewall-cmd --permanent --add-service=dns
firewall-cmd --reload

NAT에서 DNS 설정
# dhcpd에서 DNS서버 주소 추가
vi /etc/dhcp/dhcpd.conf
//
option domain-name-servers [DNS서버 주소], 8.8.8.8, 8.8.4.4;
//
# 재기동
systemctl restart dhcpd

# DNS서버 주소 추가
vi /etc/sysconfig/network-scripts/ifcfg-ens192
// 중간에 DNS1 바꾸고 나머지 뒤로
IPADDR=192.168.1.18
NETMASK=255.255.248.0
GATEWAY=192.168.0.1
DNS1=10.11.0.103
DNS2=8.8.8.8
DNS3=8.8.4.4
//


DNS 서버에서 테스트
# 네트워크 매니저 재기동
systemctl restart NetworkManager

WEB02 (Ubuntu)에서 DNS 테스트
# 재기동
sudo systemctl restart networking
# DNS 확인
cat /etc/resolv.conf

WEB03 (Windows 10) 에서 DNS 테스트
Powershell을 실행한다.
# 아이피 다시 받아오기
ipconfig /renew


여담으로, 원격 데스크톱은 MobaXterm에서도 가능하다.


'메가존 클라우드 2기 교육 > 실무 심화' 카테고리의 다른 글
오픈 스택 - 설명 및 Virtual Box에 설치 (0) | 2023.04.05 |
---|---|
ESXi - MariaDB, HAProxy 설치 (0) | 2023.04.04 |
ESXi - 설정, 서버 구축 (Nat-Gateway, Ubuntu, Windows) (0) | 2023.03.31 |
가상화 - ESXi 설치 및 실습 환경 준비 (0) | 2023.03.30 |
가상화 (하이퍼바이저/오픈스택) (0) | 2023.03.30 |