๊ธฐ์กด์๋ ํด๋ผ์ฐ๋ ์ธ์คํด์ค๋ ์ธํ ๋ ์จํ๋ ๋ฏธ์ค ์๋ฒ๋ฅผ ์ฌ์ฉํด ํธํ๊ฒ ์๋น์ค๋ฅผ ์ค์นํด์์ง๋ง, ์ด๋ฒ์๋ ์๋์ฐ๊ฐ ์ค์น๋ ์จํ๋ ๋ฏธ์ค ์๋ฒ์ Ubuntu ๋ฆฌ๋ ์ค๋ฅผ ์ง์ ์ค์นํ๊ณ ๊ณ ์ IP ์ธํ ๊น์ง ํด์ผ ํ๋ ์ํฉ์ด์์ต๋๋ค.
์ด ํฌ์คํธ๋ ๊ทธ ๊ณผ์ ์ ๋จ๊ณ๋ณ๋ก ์ ๋ฆฌํ ๊ฐ์ด๋์ ๋๋ค.
์ด์์ฒด์ ์ค์น๋ฅผ ์ํด Ubuntu ๊ณต์ ์ฌ์ดํธ์์ ISO ํ์ผ์ ๋ค์ด๋ก๋ํฉ๋๋ค.
์ดํ์๋ ์๋์ ๊ฐ์ Ubuntu ์ค์นํ๋ฉด์ด ๋จ๋ฉฐ, ์๋ด์ ๋ฐ๋ผ ์ค์น๋ฅผ ์งํํ๋ฉด ๋ฉ๋๋ค.
๋ถํ ์์๋ฅผ ๋ณ๊ฒฝํ๋ฉด ์๋์ ๊ฐ์ด ์ฐ๋ถํฌ ์ค์นํ๋ฉด์ด ๋์ค๊ณ ์ดํ์๋ ํ์ธ ๋ฒํผ์ ๊ณ์ ๋๋ฌ์ฃผ๋ฉด ๋ฉ๋๋ค.
์๋๋ ๋ฆฌ๋ ์ค ์๋ฒ๋ช ๊ณผ ์ ์ ๋ช , ๋น๋ฐ๋ฒํธ ๋ฑ์ ์ ๋ ฅํ๋ ํ๋ฉด์ ๋๋ค.
์๋์ ๊ฐ์ด ๋ญ๋ผ๋ญ๋ผ OK ์ฒ๋ฆฌ๊ฐ ๋๋ฉด์ ์์์ฒด์ ๊ฐ ์ค์น๋๊ณ ์๋ ํ๋ฉด์ ๋๋ค. ์ค์น๊ฐ ์๋ฃ๋๋ฉด ๋ง์ง๋ง์ SSH ์ ์์ ํ์ํ๋ฉด HOST KEY ๊ฐ ์์ฑ๋ฉ๋๋ค.
โ ์ค์น ์๋ฃ ํ
- ์ค์น๊ฐ ์๋ฃ๋๋ฉด SSH Host Key๊ฐ ์์ฑ๋ฉ๋๋ค.
- BIOS์ ๋ค์ ์ง์ ํด์ ๋ถํ ์์๋ฅผ ์๋๋๋ก ๋ณต์ํฉ๋๋ค.
Ubuntu 22.04๋ถํฐ๋ netplan์ ํตํด IP ์ค์ ์ ํฉ๋๋ค.
์๋ ๋ช ๋ น์ด๋ฅผ ํตํด ์ธํฐํ์ด์ค ๋ชฉ๋ก์ ์กฐํํฉ๋๋ค.
ip link
enp4s0f0
์ ๊ฐ์ด UP ์ํ์ธ ํฌํธ๋ฅผ ์ ํ์๋์ ๊ฐ์ด ์ฌ๋ฌ ์ธํฐํ์ด์ค๋ค์ด ๋ณด์ ๋๋ค.
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp3s0f0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether XX:XX:XX:XX:XX:CA brd FF:FF:FF:FF:FF:FF
3: enp3s0f1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether XX:XX:XX:XX:XX:CC brd FF:FF:FF:FF:FF:FF
4: enp4s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
link/ether XX:XX:XX:XX:XX:CE brd FF:FF:FF:FF:FF:FF
5: enp4s0f1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether XX:XX:XX:XX:XX:D0 brd FF:FF:FF:FF:FF:FF
์ค๋ต...
์ถ๋ ฅ ์์ ์ค
state UP
ํน์ธstate DOWN
์ผ๋ก ํ์๋ ํญ๋ชฉ์์, ๋ณดํตenXsY
๋eth0
์ฒ๋ผ ๋ณด์ด๋ ๋ผ์ธ์ ์ฐพ๊ธฐ
- ์ ๋ช ๋ น์ด๋ ip ์ค์ ํ ๊ฒฐ๊ณผ ๊ฐ์ผ๋ก ์ด์ ์๋ 4๋ฒ์state UP
์ผ๋ก ์๋ ๊ฒ์ดstate DOWN
์ผ๋ก ์์์
- 3๋ฒ์งธ ๋ ํฌํธ๋ฅผ ์ฌ์ฉํ์ด์enp
์์ํ๋ ๊ฒ ์ค 3๋ฒ์งธ ๊ฐ์ธenp4s0f0
๊ฐ ์ฌ์ฉ ์ค์ธ ์ธํฐํ์ด์ค๋ผ ์๊ฐํ๊ณ ์ค์ ๋ก๋ ๋ง์๋ค.
4: enp4s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> ...
โ enp4s0f0 ๊ฐ ์ฌ์ฉ ์ค์ธ ํฌํธ๋ผ๊ณ ํ๋จ
Ubuntu 22.04์์๋ netplan YAML ํ์ผ๋ค์ด /etc/netplan/ ์๋์ ์์ต๋๋ค. ๋ณดํต ์ค์น ์งํ ๊ธฐ๋ณธ ํ์ผ ์ด๋ฆ์ 00-installer-config.yaml ๋๋ 01-netcfg.yaml ๋ฑ์ ๋๋ค.
sudo nano /etc/netplan/00-installer-config.yaml
network:
version: 2
renderer: networkd
ethernets:
enp4s0f0:
dhcp4: false
addresses:
- 192.168.11.183/24
nameservers:
addresses: [8.8.8.8]
routes:
- to: default
via: 192.168.11.1
Ctrl+O
(์ ์ฅ),Enter
(ํ์ผ ์ด๋ฆ ํ์ธ),Ctrl+X
(๋๊ฐ๊ธฐ) ์์๋ก nano๋ฅผ ๋ซ์ต๋๋ค.
sudo netplan apply
ip addr show enp4s0f0
ip route
ping -c 4 8.8.8.8
ping -c 4 google.com
renderer: networkd
์ผ๋ก ์ง์ ํด๋๋ฉด OVS ๊ด๋ จ ๋ฉ์์ง๋ ๋ ์ด์ ๋จ์ง ์์ต๋๋ค.network:
version: 2
renderer: networkd # โ ์ด ์ค์ด โOVS๊ฐ ์๋๋ผ systemd-networkd๋ก ์ค์ ํ๊ฒ ๋คโ๋ ์๋ฏธ
๊ณผ์ ์ค์ ์ด ๊ผฌ์ฌ ์๋ค๋ฉด, ์์ ํ ์ด๊ธฐํํ๊ณ ์์ํฉ๋๋ค.
# UFW ์์ ์ญ์ ํ ์ฌ์ค์น (๊ธฐ์กด ๊ท์นยท๋ก๊ทธ ๋ชจ๋ ์ฌ๋ผ์ง๋๋ค)
sudo apt remove --purge -y ufw
sudo apt install -y ufw
UFW๋ โ๋ค์ด์ค๋(incoming)โ๊ณผ โ๋๊ฐ๋(outgoing)โ ์ ์ฑ ์ ๋ฏธ๋ฆฌ ์ ํด๋๊ณ , ๊ทธ ์์ ํ์ฉ ๊ท์น์ ์์๊ฐ๋ ๋ฐฉ์์ ๋๋ค.
๋๋ถ๋ถ์ ์๋์ฒ๋ผ โ์ธ๋ฐ์ด๋ ์ฐจ๋จ, ์์๋ฐ์ด๋ ํ์ฉโ ์ ์ฑ ์ ์๋๋ค:
sudo ufw default deny incoming
sudo ufw default allow outgoing
default deny incoming
: ์ธ๋ถ์์ ์ค๋ ๋ชจ๋ ์ฐ๊ฒฐ ๋ถํ(โ)default allow outgoing
: ์๋ฒ์์ ๋๊ฐ๋ ๋ชจ๋ ์ฐ๊ฒฐ ํ์ฉ(+)
# ๊ธฐ๋ณธ SSH (TCP 22) ํ์ฉ
sudo ufw allow 22/tcp
sudo ufw enable
# ํ์ฌ ๋ฐฉํ๋ฒฝ ์ํ์ ๊ท์น ๋ชฉ๋ก
sudo ufw status verbose
# ๋ก๊ทธ๋ฅผ ๋ณด๊ณ ์ถ๋ค๋ฉด (์ค์๊ฐ)
sudo tail -f /var/log/ufw.log
sudo ufw disable
์ธ๋ถ ์๋ฒ์์ ์ ๊ทผํ ์ ์๋๋ก SSH๋ฅผ ์ค์นํฉ๋๋ค.
# 1) ํจํค์ง ๋ชฉ๋ก ๊ฐฑ์
sudo apt update
# 2) OpenSSH Server ์ค์น
sudo apt install -y openssh-server
# 3) SSH ์๋น์ค ๋ฐ๋ก ์์ ๋ฐ ๋ถํ
์ ์๋ ์คํ ์ค์
sudo systemctl enable --now ssh
# 4) (๋ฐฉํ๋ฒฝ์ด ์ผ์ ธ ์๋ค๋ฉด) SSH ํฌํธ(22) ํ์ฉ
sudo ufw allow 22/tcp
$ passwd
Changing password for user wontaek.
Current password: โ ๊ธฐ์กด ๋น๋ฐ๋ฒํธ ์
๋ ฅ
New password: โ ์ ๋น๋ฐ๋ฒํธ ์
๋ ฅ
Retype new password: โ ํ์ธ ์ฐจ ๋ค์ ์
๋ ฅ
passwd: all authentication tokens updated successfully.
timedatectl status
์ถ๋ ฅ ์ค Time zone:
ํญ๋ชฉ์ ๋ณด๋ฉด ํ์ฌ ์ด๋ค TZ๊ฐ ์ค์ ๋์ด ์๋์ง ์ ์ ์์ต๋๋ค.
timedatectl list-timezones | grep Seoul
์ ์์ ์ผ๋ก ๋์ค๋ฉด ๋ค์ ๋จ๊ณ๋ก ๋์ด๊ฐ๋๋ค.
sudo timedatectl set-timezone Asia/Seoul
set-timezone
์ /etc/localtime
์ /usr/share/zoneinfo/Asia/Seoul
๋ก ์ฌ๋ณผ๋ฆญ ์ฐ๊ฒฐํด ์ค๋๋ค.timedatectl status
Local time:
์ด ํ๊ตญ ์๊ฐ์ผ๋ก ๋ฐ๋์๋์ง,Time zone:
์ด Asia/Seoul (KST, +0900)
์ผ๋ก ํ์๋๋์ง ํ์ธํ์ธ์.์๋ฒ ์๊ณ๊ฐ ์ ํํ๊ฒ ์ ์ง๋๋ ค๋ฉด NTP(Network Time Protocol) ๋๊ธฐํ๋ฅผ ์ผ ๋๋ ๊ฒ ์ข์ต๋๋ค.
sudo timedatectl set-ntp true
bash
๋ณต์ฌํธ์ง
timedatectl status
timedatectl list-timezones | grep Seoul
sudo timedatectl set-timezone Asia/Seoul
timedatectl status
sudo timedatectl set-ntp true # (๊ถ์ฅ)
์ด๋ ๊ฒ๋ง ํด ์ฃผ์๋ฉด ์๋ฒ ์๊ฐ์ด ์ฆ์ ํ๊ตญ ์๊ฐ(UTC+9)์ผ๋ก ๋ง์ถฐ์ง๋๋ค.
๋ชฉ์ | ๋ช ๋ น์ด |
---|---|
์๋ฒ IP ์๋ต ํ์ธ | ping [์๋ฒ IP] |
SSH ํฌํธ ์ด๋ ธ๋์ง ํ์ธ | telnet [์๋ฒ IP] 22 ๋๋ nc -zv [์๋ฒ IP] 22 |
SSH ์๋น์ค ์ํ ํ์ธ | systemctl status ssh |
๋คํธ์ํฌ ํ์ธ | ip a |
๋ฐฉํ๋ฒฝ ์ํ | sudo ufw status |
SSH ๋ก๊ทธ | sudo journalctl -u ssh |
์คํ ์ค์ธ ์๋น์ค | systemctl list-units --type=service --state=running |
๋ฉ๋ชจ๋ฆฌ ํ์ธ | free -h ๋๋ cat /proc/meminfo \| grep MemTotal |
CPU ์ ๋ณด | lscpu |
์ด ๊ธ์์๋ ์๋ ์์ ๋ค์ ํ๋ํ๋ ์ง์ ์งํํด๋ณด๋ฉฐ ๊ฒฝํ์ ์์์ต๋๋ค.
์์ผ๋ก ์จํ๋ ๋ฏธ์ค ์๋ฒ๋ฅผ ์ง์ ์ธํ ํด์ผ ํ ์ผ์ด ์๊ธด๋ค๋ฉด, ์ด ๊ธ์ ์ฐธ๊ณ ํด์ ์์ ์ ์ธ ํ๊ฒฝ์ ๋น ๋ฅด๊ฒ ๊ตฌ์ถํ ์ ์์ ๊ฒ์ ๋๋ค.