ssh-copy-id 로 key 전송했음
DNS_DB에 키 전송함
NAT_GW_DHCP_HAproxy에 키 전송함
완전 관리형 서비스
네트워크 파일 시스템(Network File System, NFS)은 1984년에 썬 마이크로시스템즈가 개발한 프로토콜입니다.
클라이언트 컴퓨터의 사용자가 네트워크 상의 파일을 직접 연결된 스토리지에 접근하는 방식과
비슷한 방식으로 접근하도록 도와 줍니다. 다른 수많은 프로토콜과 마찬가지로 ONC RPC 시스템을 기반으로 합니다.
네트워크 파일 시스템은 RFC에 정의된 오픈 표준이므로 누구나 구현할 수 있습니다.(윈도우10 접속 가능)
서버
# yum install -y nfs-utils
# mkdir /share && cd $_
# echo "Hello" > test.txt
# vi /etc/exports
마운트 설정을 위해
/share 192.168.56.0/24(rw,sync)
/share: 공유할 디렉토리
192.168.56.0/24: 허가할 호스트 대역
rw : 읽기, 쓰기 가능
sync : 파일 시스템이 변경되면 즉시 동기화
# chmod 707 /share
# systemctl status nfs-server //서비스가 동작중인지 확인
# systemctl enable --now nfs-server
# exportfs -v //NFS 설정이 정상적으로 되었는지 확인
# firewall-cmd --list-all
사용 가능한 모든 서비스/포트 목록을 출력
# firewall-cmd --permanent --add-service=nfs
# firewall-cmd --permanent --add-service=rpc-bind
# firewall-cmd --permanent --add-service=mountd
# firewall-cmd --reload
클라이언트
# rpm -qa | grep nfs-utils
# yum install -y nfs-utils
# showmount -e 10.0.0.130 //nfs의 IP, 마운트를 할수 잇는지확인
# mkdir share
# mount -t nfs 10.0.0.130:/share share //nfs에 설정되어있는 폴더와 내 ns에 있는 폴더
# df -h
이 둘이 연결됨
# vi /etc/fstab
마운트 정보를 가지고 있으며, 리눅스 부팅할 때 자동으로 마운트가 적용되는 역할.
10.0.0.130:/share /root/share nfs defaults 0 0 //껏다켜도 실행되도록 mount 정보 입력
서버
repo = repository
# vi /etc/yum.repos.d/MariaDB.repo //예전에 크롬설치할때도 repo정의하고 해줫음 특정한 버전의 MariaDB 설치하려면 yum 말고 이런식으로 repo정의하고 ㄱㄱ
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.4/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1 //이게 정상적인 사이트라는것을 검증함
# yum install -y MariaDB //위에서 정의한 name을 잘써줘야함
# rpm -qa | grep MariaDB //설치됐는지 확인
# mariadb --version //설치됐는지 확인
# systemctl enable --now mariadb
# mysql_secure_installation //root passwd 정하는거 enter, y, y, y, y, y...
# 중간에 remote(원격설정)잇는데 n 잇음!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
# systemctl restart mariadb //서비스 재시작
# mysql -u root -p //비번쳐서 접속
CREATE USER 'kosa'@'%' IDENTIFIED BY 'kosa0401'; // '%' : 모든 호스트의미 , localhost 뿐만아니라 다른 remote에서도 kosa, 'kosa0401': 비밀번호
CREATE DATABASE IF NOT EXISTS wordpress;
GRANT ALL PRIVILEGES ON wordpress.* TO 'kosa'@'%'; //
quit
# firewall-cmd --permanent --add-service=mysql
# firewall-cmd --reload
이제 web02와서
# yum install -y bash-completion
# yum install mysql -y
# mysql -h 10.0.0.131 -u kosa -p //비번 위에서 정의한 kosa0401
# show databases;
4개 다 poweroff
NAT GW 랜카드가 두개엿다 private, public용 (diagrams 참고)
Bridged로 바꿔준다 (public)
add 누르고 네트워크 어댑터
LAN segment (잘안쓰는 거라 사람들이 관심가질듯;)
LAN segment -> vSwitch 설정후 OK
여기도 LAN segment -> vSwitch
위와 똑같이 LAN segment -> vSwitch
위와 동일
가장먼저 키고
가장 늦게 꺼야함
NAT-GW power on
IP가 안뜬다면 systemctl restart network 를 해보자
안된다.. IP를 늘려야 할것같다..
상단탭 edit => virtual network editor
아래 change settings -> 예
브리지로 공유기로부터 내 컴퓨터에 IP를 받아올때
수동으로 지정 Realtek
공유기 설정
내가 사용하는 네트워크가 부족해서
우리가 원래 /24 였는데 -> /21로 바꿈,
호스트가 IP 8비트 쓸수 있었는데 11비트만큼 표현할수 있게 늘어남
호스트가 이용할수 있는 자리가 늘어남
/24 -> /25
IP 생긴거 확인가능 192.168.0.45
Mobaxterm 에서 session -> ssh -> 192.168.0.45으로 접속
# vi /etc/sysconfig/network-scripts/ifcfg-ens32
TYPE=Ethernet
BOOTPROTO=none
// 이거 처음에는 DHCP로 되어있어서 none으로 바꾸고 IPADDR로 IP를 고정시켜준다
NAME=ens32
DEVICE=ens32
ONBOOT=yes
IPADDR=192.168.0.45
NETMASK=255.255.248.0
GATEWAY=192.168.0.1
DNS1=8.8.8.8
DNS2=8.8.4.4
# vi /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
BOOTPROTO=none
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=10.31.0.1
NETMASK=255.255.255.0
# systemctl status firewalld
# firewall-cmd --get-active-zone
현재 public에 두개 다들어가잇음
이를 나누어줘야함
firewalld라는 곳에는 public은 잇지만 private은 없다.
외부와 내부로 나누어야 하는데
# nmcli c mod ens32 connection.zone external
# nmcli c mod ens33 connection.zone internal
# firewall-cmd --get-active-zone
다시해보면
나눠져있다.
# vi /etc/sysctl.conf
net.ipv4.ip_forward=1
맨밑에 넣어줌
시스템 재부팅 시 변경 사항을 적용합니다.
reboot 하고
# cat /proc/sys/net/ipv4/ip_forward
하면 1이 나옴 껏다 켜도 안풀림
# yum install dhcp -y
# vi /etc/dhcp/dhcpd.conf
ddns-update-style interim;
subnet 10.31.0.0 netmask 255.255.255.0 {
# = 10.31.0.0/24
option routers 10.31.0.1;
option subnet-mask 255.255.255.0;
range dynamic-bootp 10.31.0.100 10.31.0.110;
option domain-name-servers 8.8.8.8, 8.8.4.4;
default-lease-time 7200;
max-lease-time 86400;
}
# systemctl enable --now dhcpd
# systemctl status dhcpd // 확인해보기
WEB01_SAMBA 10.31.0.100
IP 부여받고 다음거 키기
WEB02_NFS 10.31.0.101
DNS_DATABASE 10.31.0.102
탭 3개만들고
키가 없어서 안된다
상단위에 업로드 버튼
업로드를함
이제 id_rsa잇음 근데 너무 권한이 열려잇다고 경고함 644
이걸 바꿔주자
다음탭에서 web02 열어줌
다음탭에서 ns열어줌
ISP(Internet Service Provider: KT, SKB, LGU+, Dreamline ...)
DNS
# yum -y install bind bind-chroot bind-utils
ggdG
# cp /etc/named.conf /etc/named.conf.bak
# vi /etc/named.conf
options {
listen-on port 53 { 127.0.0.1; 192.168.0/21 10.31.0/24; };
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; 192.168.0/21; 10.31.0/24; };
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/bonghyeon2.shop.zones"; # 호스팅 영역 생성
};
# vi /var/named/bonghyeon2.shop.zones
zone "bonghyeon2.shop" IN {
type master;
file "bonghyeon2.shop.db";
allow-update { none; };
};
zone "0.31.10.in-addr.arpa" IN {
type master;
file "0.31.10.in-addr.arpa.db";
allow-update { none; };
};
# vi /var/named/bonghyeon2.shop.db
Route 53 세팅하는거랑 비슷함
$TTL 86400
@ IN SOA bonghyeon2.shop. root.bonghyeon2.shop.(
2022041401 ; Serial
3h ; Refresh
1h ; Retry
1w ; Expire
1h ) ; Minimum
IN NS ns.bonghyeon2.shop.
IN MX 10 ns.bonghyeon2.shop.
ns IN A 10.31.0.102
web01 IN A 10.31.0.100
web02 IN A 10.31.0.101
* IP LIST (이건 그냥 설명)
WEB01_SAMBA 10.31.0.100
WEB02_NFS 10.31.0.101
DNS_DATABASE 10.31.0.102
# vi /var/named/0.31.10.in-addr.arpa.db
$TTL 86400
@ IN SOA bonghyeon2.shop. root.bonghyeon2.shop.(
2022041401 ; Serial
3h ; Refresh
1h ; Retry
1w ; Expire
1h ) ; Minimum
IN NS ns.bonghyeon2.shop.
102 IN PTR ns.bonghyeon2.shop.
100 IN PTR web01.bonghyeon2.shop.
101 IN PTR web02.bonghyeon2.shop.
# systemctl start named && systemctl enable named
# systemctl enable --now named
# firewall-cmd --permanent --add-service=dns
# firewall-cmd --reload
vi /etc/dhcp/dhcpd.conf
option domain-name-servers 에 추가 앞에다가추가
# systemctl status dhcpd
쳐서 문제잇나 확인
# cat /etc/resolv.conf
치면 현재 도메인네임 정보 보여줌
# systemctl restart NetworkManager
# systemctl restart NetworkManager
# cat /etc/resolv.conf
이거 치면 102떠야함
# systemctl restart NetworkManager
# cat /etc/resolv.conf
이거치면 102떠야함
nat는 수동으로 해야함
# vi /etc/sysconfig/network-scripts/ifcfg-ens32
DNS1 에 추가해줌
# systemctl restart NetworkManager
# cat /etc/resolv.conf
# firewall-cmd --permanent --add-service=dns
# firewall-cmd --reload
# systemctl restart NetworkManager
# yum install -y haproxy
# vi /etc/haproxy/haproxy.cfg
ggdG
global
daemon
defaults
mode http
frontend http-in
bind *:80
acl firefox hdr_sub(User-Agent) Firefox
acl chrome hdr_sub(User-Agent) Chrome
default_backend backend_servers
use_backend bk_firefox if firefox
use_backend bk_chrome if chrome
backend backend_servers
balance roundrobin
# cookie SVID insert indirect nocache maxlife 10s
server web01 10.31.0.100:80 cookie w1 check
server web02 10.31.0.101:80 cookie w2 check
# server web03 10.31.0.103:80 cookie w3 check
backend bk_firefox
server web01 10.31.0.100:80
backend bk_chrome
server web02 10.31.0.101:80
# systemctl enable --now haproxy
# firewall-cmd --list-all --zone=external
service에 http가 없는것을 확인
# firewall-cmd --permanent --add-service=http --zone=external (zone을 external로 해줘야함)
#