itkorea 인천 아카데미 클라우드 정보보안 수업 자료 및 정리
2024-11-25~2025-05-13
정식 수업~
매주 월화수목금 9시30분-6시30분까지 과정
우분투에서 DNS MASTER세팅하기
우분투에서 master server 우리 조원 두명 slave 세팅
zone "pjh.com" IN {
type master;
file "/etc/bind/pjh.zone";
allow-transfer { 192.168.10.112; 192.168.10.111; };
allow-update { none; };
};
우분투에서 slave server 우리 조원(효정씨) master인 세팅
zone "mater도메인" IN {
type slave;
file "마스터.zone";
masters { 마스터 아이피; };
};
rm -rf /etc/bind/pjh.zone
기도하고 systemctl restart named
우분투에서 slave server 우리 조원(유진씨) master인 세팅
기도하고 systemctl restart named
우분투에서 master server 우리 조원 두명 (rocky9) slave 세팅
로키에서 slave server 우리 조원(효정씨) master인 세팅
오후 수업..ansible..대망의...덜덜
=============================
Ansible을 이용한 리눅스 서버 자동화 관리
=============================
**서버에 SSH 설치되고 관리자 로그인이 허용되어 있어야 함
**Clone 작업전에 BASIC으로 초기화할 것
**기존에 GNS3에 연동하던 서버는 그대로 놔두고 새로 Clone으로 작업할 것!!
☞ Rocky 9 3대 -----------------------------> Bridge Mode
☞ Ubuntu Desktop 3대 -----------------> Bridge Mode
☞ Ubntun Server 3대 -----------------> Bridge Mode
===================================================
Rocky 9-1 192.168.10.241 Master
Rocky 9-2 192.168.10.242 node1-bluescreen.com RAM 4GB
Rocky 9-3 192.168.10.243 node2-bluescreen.com RAM 1GB
Ubutnu d-1 192.168.10.244 node3-bluescreen.com RAM 1GB
Ubutnu d-2 192.168.10.245 node4-bluescreen.com RAM 1GB
Ubutnu d-3 192.168.10.246 node5-bluescreen.com RAM 1GB
Ubutnu s-1 192.168.10.247 node6-bluescreen.com RAM 1GB
Ubutnu s-2 192.168.10.248 node7-bluescreen.com RAM 1GB
Ubutnu s-3 192.168.10.249 node8-bluescreen.com RAM 1GB
====================================================
유진 192.168.10.31 ~ 39
효정 192.168.10.41 ~ 49
지혜 192.168.10.51 ~ 59
부성 192.168.10.61 ~ 69
한빛 192.168.10.71 ~ 79
희원 192.168.10.81 ~ 89
지용 192.168.10.91 ~ 99
종훈 192.168.10.101 ~ 109
현호 192.168.10.111 ~ 119
준영 192.168.10.121 ~ 129
동찬 192.168.10.131 ~ 139
상우 192.168.10.141 ~ 149
장원 192.168.10.151 ~ 159
상윤 192.168.10.161 ~ 169
정민 192.168.10.171 ~ 179
현우 192.168.10.181 ~ 189
사전작업
1. 아이피 설정 9번을 마스터, node 1번은은 아이피 1, node 2번은 아이피 2번
2. 호스트 네임 변경 mast, node1,node2...
3. SSH 관리자 로그인 허용까지 걸어두기
☞새터미널 열어서 확인
☞ssh localhost
☞grep Root /etc/ssh/sshd_config
☞ssh node1 ~ node8 접속확인
192.168.10.59 master
192.168.10.51 node1
192.168.10.52 node2
192.168.10.53 node3
192.168.10.54 node4
192.168.10.55 node5
192.168.10.56 node6
192.168.10.57 node7
192.168.10.58 node8
for i in $(seq 1 9);
do
ping -c 1 192.168.10.5$i;
done
웹에서 리눅스 서버 관리하는 방법
dnf update -y && dnf upgrade -y 먼저 이후
그리고 웹에서
https://192.168.10.59:9090해서 고급 클릭 후 들어가서 user0 123456들어가면
ansible 설치하기
ansible은 마스터만 설치, 클라이언트는 x
클라이언트가 망가져서, 클라이언트 들어갈일은 있어도
우리가 node1~8까지 직접 들어갈 일x
마스터에서 다 작업해요~!
(1) 레드헷 계열에서 설치하는 경우
dnf install epel-release 해서 패키지 저장소부터 설치하기
이제부터 중요한거는 앞으로는 -y빼고 설치하기
실무에서는 보안팀이 검수 및 보안팀이 직접 패키지 설치함, 업데이트 설치 마음대로 xxx
그래서 -y를 함부로 붙이면 안돼요
(2) 우분투에서 설치하는 경우
sudo apt update
sudo apt install software-properities-common
sudo add-apt-repository --yes --update ppa:ansible/ansible
sudo apt install ansible
sudo ansible --version
(3) 데비안 계열에서 설치하는 경우
ansible이 제대로 설치됐는지 점검하는거 사전점검!!
[root@master my-ansible]# ansible-inventory -i ./inventory --list
{
"_meta": {
"hostvars": {}
},
"all": {
"children": [
"ungrouped"
]
},
"ungrouped": {
"hosts": [
"192.168.10.51",
"192.168.10.52",
"192.168.10.53",
"192.168.10.54",
"192.168.10.55",
"192.168.10.56",
"192.168.10.57",
"192.168.10.58"
]
}
}
conf = configure =cfg 다 환경설정 파일들! 콤푸들~
요러면 ansible 사전 준비는 끝!
플레이북~(노드들을 제어하는 북!!)
그래서 이 북을 제어하기 위한 필수 파일들은!
1. ansible.cfg
2.inventory
[defaults]
inventory = ./inventory #인벤토리 파일 경로 지정해주는거
remote_user = user #노드에 접속할 계정명! (생략시 현재 사용중인 계정으로 접속하는거임!)
ask_pass = false #암호 물어봐! false지? 응 안물어봐~ 이파일 사용시 암호는 생략할게요!(암호는 ssh접속암호임 123456)
[privilege_escalation] #보안설정하고 감사(보안이 잘 작동하는지 확인하는거)
become = true #권한 에스컬레이션 활성화 하겠다! true!
become_method = sudo #sudo 권한도 허용해줄거임!
become_user = root #관리자 권한 허용 해줄꺼임!
become_ask_pass =false #암호 물어봐? 응 생략~
SSH 자동인증: 암호 없이 로그인 설정!! 미리 걸어둬야함
예를 들어 노드가 900개야 그럼 암호를 900번쳐야함ㅋㅋㅋㅋ엌ㅋㅋㅋ
그래서 SSH 자동로그인을 걸어둬야함,.^^
[root@master my-ansible]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 파일명 없지롱 엔터
Enter passphrase (empty for no passphrase): 비밀번호도 세팅안해 엔터
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa 여기 경로에 공개키
Your public key has been saved in /root/.ssh/id_rsa.pub 여기 경로에 개인키
The key fingerprint is:
SHA256:1bFkfb8uSVERPy8km00voK25YZJhAfgUsSlkcOX8edI root@master
The key's randomart image is:
+---[RSA 3072]----+
| ..+o=o +. oo|
| +.o.+ + o..o|
| .o= . . = +oo|
| ... = o X .+|
| S E + = +|
| . = o . + |
| o = . o |
| o o o . |
| . . |
+----[SHA256]-----+
[root@master my-ansible]# ls -a /root/.ssh/
. .. id_rsa id_rsa.pub known_hosts known_hosts.old
for i in $(seq 1 8);
> do
> ssh-copy-id root@192.168.10.5$i;
> done
자 하나씩 달려봅시다..!
이제 ansible 이용한 점검 드가자!!
'Study > Information Security' 카테고리의 다른 글
클라우드 정보 보안 수업 자료 및 정리 [30회차, jupyter python to db ] (0) | 2025.01.08 |
---|---|
클라우드 정보 보안 수업 자료 및 정리 [28회차, DNS, Master, Slave] (1) | 2025.01.06 |
클라우드 정보 보안 수업 자료 및 정리 [27회차, DHCP, DNS] (2) | 2025.01.03 |
클라우드 정보 보안 수업 자료 및 정리 [26회차, ACL remarks, 라우터 privilege, DHCP] (0) | 2025.01.02 |
클라우드 정보 보안 수업 자료 및 정리 [25회차,Oracle, ACL Named] (2) | 2024.12.31 |