커리큘럼 > 시스템
시스템
0.공통
1.우분투 26.04 설치
2.하드디스크 추가(sda,sdb,sdc,sdd,sde,sdf,sdg)
3.웹시스템 구축1(LAPM)
4.웹시스템 구축2(Nginx+Flask)
5.웹시스템 구축3(Apache+Tomcat)
6.백업시스템 구성
7.원격백업 구성
8.로그시스템 구성
9.Tripwire구성
10.패킷비트설치후 패킷모니터링
11.Zabbix Agent설치후 모니터링
12.
13.
14.
0. 공통
보안의 시작은 지킬것을 만드는 것!
계정 및 비밀번호 숙지후 XSHELL를 통해 접속
네트워크 변경후 반드시 스냅샵 적용하기
[업데이트]
sudo apt update
sudo apt -y upgrade
sudo apt -y full-upgrade
sudo nano test.txt
ctrl+s,ctrl+x
[네트워크 변경]
sudo nano /etc/netplan/50[tab]
network:
version: 2
ethernets:
ens160:
dhcp4: no
addresses: [192.168.0.26/24]
gateway4: 192.168.0.1
nameservers:
addresses: [168.126.63.1]
ctrl+s, ctrl+x후
sudo netplan apply
ping 168.126.63.1
[사용자 추가하기]
sudo adduser 사용자명
sudo usermod -aG sudo 사용자명
su - 사용자명
sudo deluser 사용자명
sudo deluser 사용자명 --remove-home
[기본명령어]
ip addr
ping
netstat
nslookup
ls
man ls
cd
pwd
rm
cp
touch
mv
mkdir
rmdir
cat
head
tail
more
less
file
clear
cat
adduser
passwd
usermod
userdel
chage
groups
groupadd
groupmod
groupdel
gpasswd
chmod
chown
[프로그램설치]
dpkg
apt -y install
[파일 압축과 묶기]
xz
bzip2
gzip
zip
tar
find
which
whereis
locate
[백업과 자동화]
nano /etc/crontab [커널컴파일]
1. 우분투 26.06설치
우분투 26.04 설치
2. 하드디스크추가
lsblk
sda
sdb
sdc
sdd
sde
sdf
sdg
sdb,sbc = RAID로 구성 /backup에 연결
sdd,sbe,sbf = LVM로 구성 /home에 연결
[RAID1구성하기]
lsblk
sudo apt update
sudo apt -y install mdadm
sudo fdisk /dev/sdb
n # 새 파티션
p # primary
1
엔터
엔터
t # 타입 변경
fd # Linux raid autodetect
w
RAID1생성
sudo mdadm --create --verbose /dev/md0 \
--level=1 \
--raid-devices=2 \
/dev/sdb1 /dev/sdc1
cat /proc/mdstat
sudo mdadm --detail /dev/md0
sudo mkfs.ext4 /dev/md0
sudo mkdir /raid1
df -h
sudo blkid /dev/md0
sudo nano /etc/fstab
UUID=xxxxx /raid1 ext4 defaults,nofail 0 0
sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf
sudo update-initramfs -u
RAID 장애 테스트
sudo mdadm /dev/md0 --fail /dev/sdb1
sudo mdadm /dev/md0 --remove /dev/sdb1
sudo mdadm /dev/md0 --add /dev/sdb1
sudo nano /etc/fstab
/dev/vg_data/lv_storage /date ext4 defaults 0 0
sudo mount -a
[LVM 구성하기]
fdisk /dev/sdb
fdisk /dev/sdc
fdisk /dev/sdd
fdisk /dev/sde
fdisk /dev/sdf
fdisk /dev/sdg
LVM --> type 8e
pvcreate /dev/sdb1
vgcreate vg_data /dev/sdb1
lvcreate -L 200G -n lv_backup vg_data
mkfs.ext4 /dev/vg_data/lv_backup
mount /dev/vg_data/lv_backup /backup
pvs
vgs
lvs
pvdisplay
vgdisplay
lvdisplay
lvextend -L +50G /dev/vg_data/lv_home
하나의 하드
fdisk > mkfs > mount
1G+2G+3G = 6G(LVM)
sudo apt -y install openssh-server
sudo apt -y install lvm2
sudo systemctl enable --now lvm2-monitor
sudo systemctl status lvm2-monitor
e: 1G, f: 2G, g: 3G
-------------------------------------------------
sudo pvcreate /dev/sde /dev/sdf /dev/sdg
sudo pvs PV VG Fmt Attr PSize
/dev/sde lvm2 1.00g
/dev/sdf lvm2 2.00g
/dev/sdg lvm2 3.00g
-------------------------------------------------
sudo vgcreate vg_data /dev/sde /dev/sdf /dev/sdg
sudo vgs VG #PV #LV #SN Attr VSize
vg_data 3 0 0 wz--n- 5.99g
----------------------------------------------------
sudo lvcreate -l 100%FREE -n lv_storage vg_data
sudo lvs
----------------------------------------------------
sudo mkfs.ext4 /dev/vg_data/lv_storage
lrwxrwxrwx lv_storage -> ../dm-0
cd ..
ls -al | grep dm-0
brw-rw---- 1 root disk 252, 0 May 22 11:56 dm-0
cd /
sudo mkdir /data
ls
sudo mount /dev/vg_data/lv_storage /data
df -h
-----------------------------------------------------
sudo blkid
sudo nano /etc/fstab
/dev/vg_data/lv_storage /date ext4 defaults 0 0
sudo mount -a
3.웹시스템구축
apt -y install apache2 nano /etc/apache2/conf-enabled/security.conf ufw allow http a2enmod userdir systemctl restart apache2 chmod 711 $HOME chmod 755 ~/public_html apt -y install php8.5 php8.5-mbstring php-pear apt -y install composer php8.5-curl php8.5-sqlite3 apt -y install php8.5-fpm a2enmod proxy_fcgi setenvif a2enconf php8.5-fpm systemctl restart php8.5-fpm apache2 apt -y install apache2-utils apt -y install libapache2-mod-authnz-external pwauth apt -y install libapache2-mod-security2 apt -y install mariadb-server apt -y install phpmyadmin ufw allow mysql systemctl stop mariadb rm -rf /var/lib/mariadb/* sudo -u mysql mariadb-install-db --datadir=/var/lib/mariadb systemctl start mariadb nano /etc/apache2/sites-available/hosting.conf # create new # settings for new domain VirtualHost *:80> DocumentRoot /home/master/public_html ServerName www.virtual.host ServerAdmin webmaster@virtual.host ErrorLog /home/master/public_html/logs/error.log CustomLog /home/master/public_html/logs/access.log combined /VirtualHost>
a2ensite hosting systemctl reload apache2 apt -y install certbot certbot certonly --webroot -w /var/www/html -d dns.srv.world nano /etc/apache2/sites-available/default-ssl.conf a2ensite default-ssl a2enmod ssl systemctl restart apache2 ufw allow https nano /etc/apache2/sites-available/virtual.host.conf VirtualHost *:80> DocumentRoot /var/www/virtual.host ServerName www.virtual.host ServerAdmin webmaster@virtual.host ErrorLog /var/log/apache2/virtual.host.error.log CustomLog /var/log/apache2/virtual.host.access.log combined RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L] /VirtualHost> a2enmod rewrite systemctl restart apache2
로그 시스템 구축
Zabbix 서버
Syslog 서버
ELK 서버
가상서버1
가상서버2
가상서버3
가상서버4
가상서버5
참고자료
이것이 우분투다. 1. 서버월드
노력을 이기는 재능은 없고 노력을 외면하는 결과도 없다.