❤️ AZDIGI chính thức cập nhật hệ thống blog mới hoàn chỉnh. Tuy nhiên có thể một số bài viết bị sai lệch hình ảnh, hãy ấn nút Báo cáo bài viết ở cuối bài để AZDIGI cập nhật trong thời gian nhanh nhất. Chân thành cám ơn.
VPS thực chất là một máy tính nối mạng. Gần như mọi thứ bạn làm trên VPS đều liên quan đến mạng: SSH vào server là qua mạng, truy cập website là qua mạng, cập nhật phần mềm cũng qua mạng. Nên nếu chưa nắm được networking cơ bản, trước sau gì bạn cũng gặp rắc rối.

Bài này mình sẽ đi qua những thứ thiết yếu: xem thông tin mạng, tra DNS, kiểm tra kết nối, dùng curl và wget, kiểm tra ports, và cách xử lý khi mạng có vấn đề.
Hầu hết lệnh diagnostic (ping, curl, dig, ss…) chạy giống nhau trên mọi distro. Phần khác biệt chủ yếu là cách cấu hình network, mình sẽ ghi rõ Ubuntu hay AlmaLinux ở những chỗ đó.
Ba thứ cần hiểu: IP, DNS, Port
Trước khi vào lệnh, mình nói nhanh về 3 khái niệm nền tảng mà bạn sẽ gặp xuyên suốt bài:
- IP address: Địa chỉ của máy trên mạng. VPS của bạn có ít nhất một IP public (để người ngoài truy cập) và một IP private/loopback (127.0.0.1). Tương tự như số nhà vậy.
- DNS: Hệ thống phân giải tên miền thành IP. Khi bạn gõ
google.com, DNS sẽ dịch nó thành IP như142.250.199.46để máy tính biết đường kết nối. Giống như danh bạ điện thoại. - Port: Mỗi dịch vụ trên server lắng nghe ở một port. SSH dùng port 22, HTTP dùng port 80, HTTPS dùng port 443. Nếu IP là số nhà, thì port là số phòng trong ngôi nhà đó.
Ba thứ này liên quan chặt chẽ với nhau. Khi ai đó truy cập website của bạn, luồng đi sẽ là: trình duyệt tra DNS để lấy IP, kết nối tới IP đó trên port 443 (HTTPS), rồi server trả về nội dung. Nắm được luồng này thì khi mạng có vấn đề, bạn biết chỗ nào cần kiểm tra.
Xem thông tin mạng
Việc đầu tiên khi làm việc với networking trên VPS là xem server đang có những IP nào, gateway là gì. Đây là những lệnh bạn sẽ dùng thường xuyên.
ip addr, xem IP addresses
Lệnh ip addr (hoặc viết tắt ip a) hiển thị tất cả network interfaces và IP gắn với chúng:
ip addr
Output sẽ trông kiểu này:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536
inet 127.0.0.1/8 scope host lo
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500
inet 103.57.220.15/24 brd 103.57.220.255 scope global eth0
Giải thích nhanh:
lolà loopback interface, luôn có IP127.0.0.1. Đây là interface “nói chuyện với chính mình”, không liên quan đến mạng bên ngoài.eth0(hoặcens3,ens18… tùy provider) là card mạng chính. IP103.57.220.15/24là IP public của VPS bạn. Phần/24là subnet mask, nghĩa là 256 IP trong cùng dải mạng.
Nếu bạn thấy hướng dẫn cũ dùng ifconfig, lệnh đó đã bị thay thế bởi ip từ lâu rồi. Một số distro mới không cài sẵn ifconfig nữa. Cứ dùng ip addr cho chắc.
ip route, xem routing table
Routing table cho biết traffic đi đâu. Quan trọng nhất là default gateway, cái cổng mà mọi traffic ra ngoài đều đi qua:
ip route
Output:
default via 103.57.220.1 dev eth0
103.57.220.0/24 dev eth0 proto kernel scope link src 103.57.220.15
Dòng default via 103.57.220.1 nói rằng: mọi traffic không biết đi đâu sẽ gửi qua gateway 103.57.220.1. Nếu dòng này thiếu hoặc sai, VPS sẽ không ra được internet.
hostname -I, xem IP nhanh
Khi chỉ cần biết IP mà không muốn đọc output dài của ip addr:
hostname -I
Lệnh này in ra tất cả IP (không bao gồm loopback), ngắn gọn trên một dòng. Tiện khi cần copy IP nhanh.
DNS, tra cứu tên miền
DNS là một trong những thứ hay gây rắc rối nhất trên server. Website không load, email không gửi được, SSL không cấp được… rất nhiều vấn đề có nguồn gốc từ DNS. Nên biết cách tra DNS là kỹ năng cần thiết.
/etc/resolv.conf, DNS server của VPS
File này cho biết VPS đang dùng DNS server nào để phân giải tên miền:
cat /etc/resolv.conf
Output thường trông như thế này:
nameserver 8.8.8.8
nameserver 8.8.4.4
Đây là DNS của Google. Bạn cũng có thể thấy 1.1.1.1 (Cloudflare) hoặc DNS riêng của nhà cung cấp VPS. Nếu DNS server bị chết hoặc không phản hồi, VPS sẽ không phân giải được tên miền, dù mạng vẫn hoạt động bình thường.
Trên nhiều VPS, file /etc/resolv.conf được quản lý tự động bởi systemd-resolved hoặc DHCP client. Nếu bạn sửa trực tiếp, nó có thể bị ghi đè khi restart. Cách cấu hình đúng mình sẽ nói ở phần Network config bên dưới.
dig, tra DNS chi tiết
dig là công cụ mạnh nhất để tra DNS. Nó cho bạn đầy đủ thông tin về record, TTL, DNS server nào trả lời:
dig azdigi.com
Output của dig khá dài, nhưng phần quan trọng nhất là ANSWER SECTION:
;; ANSWER SECTION:
azdigi.com. 300 IN A 103.57.220.15
Dòng này nói: domain azdigi.com trỏ về IP 103.57.220.15, record type A, TTL 300 giây (5 phút).
Một số cách dùng hữu ích:
# Tra record MX (mail)
dig azdigi.com MX
# Tra record NS (nameserver)
dig azdigi.com NS
# Tra qua DNS server cụ thể (ví dụ Cloudflare)
dig @1.1.1.1 azdigi.com
# Chỉ lấy kết quả ngắn gọn
dig +short azdigi.com
dig không cài sẵn trên mọi VPS. Nếu chạy mà báo command not found:
# Ubuntu/Debian
sudo apt install dnsutils
# AlmaLinux/Rocky
sudo dnf install bind-utils
nslookup, tra DNS đơn giản
nslookup cho kết quả đơn giản hơn dig, dễ đọc hơn khi chỉ cần biết domain trỏ về đâu:
nslookup azdigi.com
Output:
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
Name: azdigi.com
Address: 103.57.220.15
Ngắn gọn, dễ hiểu. Server: 8.8.8.8 là DNS server đã trả lời, Non-authoritative answer nghĩa là kết quả lấy từ cache chứ không phải từ nameserver gốc.
host, tra DNS ngắn nhất
Nếu chỉ cần biết IP mà không muốn đọc output dài:
host azdigi.com
Output:
azdigi.com has address 103.57.220.15
azdigi.com mail is handled by 10 mail.azdigi.com.
Một dòng, đủ thông tin. Tiện khi cần check nhanh domain đã trỏ đúng chưa.
Kiểm tra kết nối mạng
Khi mạng có vấn đề, bạn cần kiểm tra từng lớp: server có ra internet không, đường đi có bị nghẽn không, public IP là gì. Đây là bộ công cụ cho việc đó.
ping, test kết nối cơ bản
ping gửi gói tin ICMP tới đích và đo thời gian phản hồi. Đây là lệnh đầu tiên bạn nên chạy khi nghi mạng có vấn đề:
ping google.com
Output:
PING google.com (142.250.199.46) 56(84) bytes of data.
64 bytes from 142.250.199.46: icmp_seq=1 ttl=118 time=1.23 ms
64 bytes from 142.250.199.46: icmp_seq=2 ttl=118 time=1.18 ms
^C
--- google.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
Chú ý mấy con số:
time=1.23 ms: thời gian phản hồi. Dưới 10ms là rất tốt, 50-100ms là bình thường, trên 200ms là đáng lo.0% packet loss: không mất gói tin nào. Nếu thấy packet loss > 0%, mạng đang có vấn đề.ttl=118: Time To Live, số hop tối đa gói tin đi qua. Không cần quan tâm lắm trong thực tế.
Trên Linux, ping chạy liên tục cho đến khi bạn nhấn Ctrl+C. Nếu muốn ping chỉ 5 lần rồi dừng:
ping -c 5 google.com
Nếu ping google.com không được nhưng ping 8.8.8.8 được, vấn đề nằm ở DNS chứ không phải mạng. Server ra được internet nhưng không phân giải được tên miền.
traceroute, xem đường đi của gói tin
traceroute cho biết gói tin đi qua những router nào trước khi đến đích. Hữu ích khi muốn biết mạng chậm ở đoạn nào:
traceroute google.com
Output:
traceroute to google.com (142.250.199.46), 30 hops max
1 103.57.220.1 0.5 ms 0.4 ms 0.3 ms
2 10.0.0.1 1.2 ms 1.1 ms 1.0 ms
3 203.162.4.1 2.5 ms 2.3 ms 2.4 ms
...
8 142.250.199.46 1.5 ms 1.4 ms 1.3 ms
Mỗi dòng là một hop (router trung gian). Nếu thấy dòng nào có * * *, nghĩa là router đó không phản hồi (có thể do firewall chặn ICMP, không nhất thiết là lỗi). Nếu latency tăng đột biến từ hop nào đó, vấn đề nằm ở đoạn đường đó.
Cài đặt nếu chưa có:
# Ubuntu/Debian
sudo apt install traceroute
# AlmaLinux/Rocky
sudo dnf install traceroute
mtr, ping + traceroute kết hợp
mtr là sự kết hợp giữa ping và traceroute. Nó liên tục gửi gói tin và hiển thị realtime packet loss cùng latency ở từng hop:
mtr google.com
Nó sẽ mở giao diện realtime, cập nhật liên tục. Rất tiện khi cần monitor mạng trong một khoảng thời gian. Nhấn q để thoát.
Nếu muốn xuất kết quả dạng text (ví dụ để gửi cho support):
mtr --report -c 10 google.com
Lệnh này chạy 10 vòng rồi in báo cáo. Gửi output này khi liên hệ nhà cung cấp VPS về vấn đề mạng, họ sẽ biết ngay vấn đề ở đâu.
curl ifconfig.me, xem public IP
ip addr cho bạn IP gắn trên interface, nhưng nếu VPS nằm sau NAT, IP đó có thể là IP private. Để xem IP public (IP mà thế giới bên ngoài thấy):
curl ifconfig.me
Lệnh này gọi một dịch vụ bên ngoài, dịch vụ đó sẽ trả về IP mà nó nhận request từ đó. Ngoài ifconfig.me, bạn cũng có thể dùng:
curl icanhazip.com
curl ipinfo.io/ip
curl api.ipify.org
curl, con dao đa năng
curl (viết tắt của “Client URL”) là một trong những công cụ mình dùng nhiều nhất trên server. Nó gửi HTTP request, kiểu như trình duyệt nhưng trên terminal. Debug API, test website, download file… đều dùng curl được hết.
GET request cơ bản
Gọi một URL và xem nội dung trả về:
curl https://example.com
Lệnh này tương đương việc mở URL trong trình duyệt, nhưng thay vì render trang web thì nó in ra HTML source code. Hữu ích khi muốn kiểm tra website có phản hồi không mà không cần mở trình duyệt.
Chỉ xem headers
Nhiều khi bạn không cần nội dung trang, chỉ cần biết server trả về status code gì, dùng web server nào, có redirect không:
curl -I https://azdigi.com
Output:
HTTP/2 200
server: nginx
content-type: text/html; charset=UTF-8
cache-control: max-age=3600
...
Từ đây bạn biết: server trả 200 OK, dùng nginx, content type là HTML. Nếu thấy 301 hoặc 302, website đang redirect.
Download file
Dùng -o (chữ o nhỏ) để lưu output vào file:
# Lưu với tên tự chọn
curl -o wordpress.zip https://wordpress.org/latest.zip
# Lưu với tên gốc từ URL
curl -O https://wordpress.org/latest.zip
-o (chữ nhỏ) cho phép đặt tên file, -O (chữ hoa) tự lấy tên từ URL. Thêm -L nếu URL có redirect:
curl -L -O https://example.com/download
POST request
Gửi dữ liệu đến server, thường dùng khi test API:
# POST form data
curl -X POST -d "user=admin&pass=123456" https://example.com/login
# POST JSON data
curl -X POST -H "Content-Type: application/json" \
-d '{"user":"admin","pass":"123456"}' \
https://example.com/api/login
-X POST chỉ định method, -d là data gửi đi, -H thêm header. Đây là những thứ bạn sẽ dùng nhiều khi debug API hoặc webhook.
Xem status code
Khi cần biết website trả về mã gì mà không muốn xem hết nội dung:
curl -s -o /dev/null -w "%{http_code}" https://azdigi.com
Output chỉ là một con số: 200, 301, 404, 500… Giải thích:
-s: silent mode, không hiện progress bar-o /dev/null: bỏ nội dung response (không in ra màn hình)-w "%{http_code}": in ra status code
Cái này rất tiện khi viết script monitor website. Ví dụ check xem site có trả 200 không:
STATUS=$(curl -s -o /dev/null -w "%{http_code}" https://azdigi.com)
if [ "$STATUS" != "200" ]; then
echo "Website down! Status: $STATUS"
fi
wget, download chuyên dụng
wget chuyên về download. Nếu curl là con dao đa năng thì wget là cái kìm chuyên dụng cho việc tải file. Điểm mạnh của wget là hỗ trợ resume download và download recursive (tải cả thư mục).
Download file
wget https://wordpress.org/latest.zip
wget tự động lưu file với tên gốc từ URL và hiển thị progress bar. Không cần thêm option gì, cứ paste URL vào là xong.
Resume download
Đang tải file lớn mà bị đứt mạng? Dùng -c để tiếp tục từ chỗ đã tải:
wget -c https://example.com/large-file.tar.gz
wget sẽ kiểm tra file đã tải được bao nhiêu và tiếp tục từ đó. Cực kỳ tiện khi tải file vài GB trên server có mạng không ổn định.
Download recursive
Tải toàn bộ nội dung từ một URL, bao gồm cả các link con:
wget -r -np -l 1 https://example.com/files/
Giải thích:
-r: recursive, tải theo các link-np: no parent, không tải ngược lên thư mục cha-l 1: giới hạn depth 1 level (tránh tải cả internet)
Cẩn thận với wget -r mà không giới hạn depth. Nếu không có -l, wget sẽ đi theo tất cả link nó tìm thấy. Trên một trang web lớn, bạn có thể tải cả triệu trang mà không hay biết.
curl vs wget, dùng cái nào?
Nói ngắn gọn:
- curl: khi cần tương tác HTTP (test API, xem headers, POST data, debug).
curlhỗ trợ nhiều protocol hơn và linh hoạt hơn. - wget: khi cần download file đơn thuần, nhất là file lớn cần resume hoặc tải cả thư mục.
Trong thực tế, mình dùng curl nhiều hơn hẳn. Nhưng khi cần tải file nặng trên server, wget -c vẫn là lựa chọn số một.
Ports và kết nối
Mỗi dịch vụ trên server lắng nghe trên một port. Biết cách xem port nào đang mở, dịch vụ nào đang listen là kỹ năng quan trọng khi quản lý VPS.
ss -tlnp, xem port đang listen
ss là công cụ thay thế netstat (cũ, chậm). Để xem tất cả port đang listen:
ss -tlnp
Giải thích các flag:
-t: chỉ TCP-l: chỉ LISTEN (đang chờ kết nối)-n: hiện số port thay vì tên dịch vụ-p: hiện process đang dùng port đó
Output:
State Recv-Q Send-Q Local Address:Port Peer Address:Port Process
LISTEN 0 128 0.0.0.0:22 0.0.0.0:* users:(("sshd",pid=1234))
LISTEN 0 511 0.0.0.0:80 0.0.0.0:* users:(("nginx",pid=5678))
LISTEN 0 511 0.0.0.0:443 0.0.0.0:* users:(("nginx",pid=5678))
LISTEN 0 70 127.0.0.1:3306 0.0.0.0:* users:(("mysqld",pid=9012))
Từ output này bạn đọc được:
- SSH (
sshd) đang listen trên port 22, chấp nhận kết nối từ mọi IP (0.0.0.0) - Nginx listen trên port 80 và 443 (HTTP và HTTPS)
- MySQL listen trên port 3306, nhưng chỉ từ
127.0.0.1(localhost). Nghĩa là chỉ các ứng dụng trên cùng server mới kết nối được MySQL, bên ngoài không vào được. Đây là cấu hình bảo mật đúng.
ss -tunap, tất cả connections
Nếu muốn xem tất cả kết nối đang hoạt động (không chỉ LISTEN):
ss -tunap
Thêm -u để bao gồm cả UDP, bỏ -l để xem mọi trạng thái. Output sẽ dài hơn, bạn sẽ thấy các trạng thái:
LISTEN: đang chờ kết nối mớiESTABLISHED: kết nối đang hoạt động (ví dụ ai đó đang SSH vào, hoặc trình duyệt đang tải trang)TIME-WAIT: kết nối vừa đóng, đang chờ timeout. Bình thường, không cần lo.CLOSE-WAIT: phía remote đã đóng kết nối nhưng ứng dụng local chưa xử lý. Nếu thấy nhiều CLOSE-WAIT, có thể ứng dụng bị bug.
Ports quan trọng cần nhớ
Đây là những port bạn sẽ gặp thường xuyên khi quản lý VPS:
- 22: SSH. Port này mà không listen thì bạn không SSH vào được.
- 80: HTTP. Web server (nginx, Apache) listen ở đây.
- 443: HTTPS. Web server với SSL/TLS.
- 3306: MySQL/MariaDB.
- 5432: PostgreSQL.
- 6379: Redis.
- 25/587: SMTP (gửi email).
Khi gặp lỗi “Connection refused” trên port nào đó, chạy ss -tlnp để xem port đó có đang listen không. Nếu không listen thì dịch vụ chưa chạy hoặc đang listen trên port khác.
Cấu hình network
Phần này là chỗ Ubuntu và AlmaLinux khác nhau rõ nhất. Ubuntu dùng Netplan, AlmaLinux dùng NetworkManager. Mỗi cái có cách cấu hình riêng.
Ubuntu, Netplan
Ubuntu từ 18.04 trở đi dùng Netplan để quản lý network. Config nằm trong thư mục /etc/netplan/, thường là file YAML có tên kiểu 01-netcfg.yaml hoặc 50-cloud-init.yaml.
Xem config hiện tại:
cat /etc/netplan/*.yaml
Ví dụ config với static IP:
network:
version: 2
ethernets:
eth0:
addresses:
- 103.57.220.15/24
routes:
- to: default
via: 103.57.220.1
nameservers:
addresses:
- 8.8.8.8
- 8.8.4.4
Ví dụ config với DHCP (tự động nhận IP):
network:
version: 2
ethernets:
eth0:
dhcp4: true
Sau khi sửa file, áp dụng bằng:
sudo netplan apply
Cẩn thận khi sửa network config qua SSH. Nếu cấu hình sai IP hoặc gateway, bạn sẽ mất kết nối ngay lập tức và không SSH lại được. Trước khi sửa, nên dùng sudo netplan try. Lệnh này áp dụng config mới và tự động rollback sau 120 giây nếu bạn không xác nhận. An toàn hơn nhiều.
AlmaLinux, NetworkManager (nmcli / nmtui)
AlmaLinux (và Rocky, CentOS) dùng NetworkManager. Có hai cách cấu hình: nmcli (command line) và nmtui (giao diện text).
Xem thông tin connection hiện tại:
# Liệt kê connections
nmcli connection show
# Xem chi tiết connection
nmcli connection show eth0
Đặt static IP bằng nmcli:
# Đặt IP
nmcli connection modify eth0 ipv4.addresses 103.57.220.15/24
# Đặt gateway
nmcli connection modify eth0 ipv4.gateway 103.57.220.1
# Đặt DNS
nmcli connection modify eth0 ipv4.dns "8.8.8.8 8.8.4.4"
# Chuyển từ DHCP sang static
nmcli connection modify eth0 ipv4.method manual
# Áp dụng thay đổi
nmcli connection up eth0
Dùng nmtui (giao diện interactive):
sudo nmtui
nmtui mở một giao diện text-based trong terminal, bạn dùng phím mũi tên để điều hướng. Chọn “Edit a connection” để sửa IP, DNS, gateway. Tiện hơn nmcli cho người mới vì nhìn trực quan hơn.
Static IP vs DHCP
Phần lớn VPS từ nhà cung cấp đã cấu hình sẵn static IP, bạn không cần sửa gì. Nhưng hiểu sự khác biệt vẫn cần thiết:
- DHCP: Server tự nhận IP từ DHCP server. Tiện nhưng IP có thể thay đổi sau mỗi lần restart (tùy cấu hình). Thường dùng cho mạng nội bộ, testing.
- Static IP: IP cố định, bạn tự cấu hình. VPS production luôn dùng static IP vì bạn cần IP không đổi để trỏ domain, cấu hình firewall, v.v.
Troubleshooting mạng
Đây là phần thực chiến nhất. Mình sẽ đi qua mấy tình huống hay gặp và cách xử lý.
Không ping được ra ngoài
Server không ra được internet? Kiểm tra theo thứ tự:
# 1. Ping gateway trước — mạng local có OK không?
ip route # xem gateway
ping -c 3 103.57.220.1 # ping gateway
# 2. Ping IP bên ngoài — có ra internet không?
ping -c 3 8.8.8.8
# 3. Ping domain — DNS có hoạt động không?
ping -c 3 google.com
Dựa vào kết quả:
- Ping gateway fail: Vấn đề ở network config. Kiểm tra IP, gateway đã đúng chưa. Có thể card mạng chưa up.
- Ping 8.8.8.8 OK nhưng ping google.com fail: DNS bị lỗi. Kiểm tra
/etc/resolv.conf, thử đổi sang DNS khác (1.1.1.1, 8.8.8.8). - Tất cả đều ping OK nhưng vẫn không truy cập được: Có thể firewall chặn. Kiểm tra
iptables -Lhoặcfirewall-cmd --list-all.
Website không truy cập được
Bạn deploy xong website nhưng truy cập bằng trình duyệt thì trắng trang hoặc “Connection refused”? Kiểm tra:
# Web server có đang chạy không?
systemctl status nginx # hoặc apache2/httpd
# Port 80/443 có listen không?
ss -tlnp | grep -E ':80|:443'
# Từ server, tự curl thử
curl -I http://localhost
curl -I https://yourdomain.com
# DNS domain có trỏ đúng IP server không?
dig +short yourdomain.com
Các nguyên nhân thường gặp:
- Nginx/Apache chưa start hoặc bị crash. Chạy
systemctl start nginx. - Port 80/443 không listen. Xem lại config web server.
- Firewall chặn port 80/443. Trên Ubuntu dùng
ufw allow 80,443/tcp, trên AlmaLinux dùngfirewall-cmd --add-service=http --add-service=https --permanent && firewall-cmd --reload. - Domain chưa trỏ DNS hoặc trỏ sai IP.
SSH chậm khi kết nối
Bạn SSH vào VPS mà phải chờ 10-20 giây mới hiện password prompt? Nguyên nhân phổ biến nhất là DNS reverse lookup.
Khi bạn kết nối SSH, server sẽ cố tra ngược IP của bạn thành hostname (reverse DNS lookup). Nếu DNS server chậm hoặc không phản hồi, SSH phải chờ timeout rồi mới tiếp tục.
Fix bằng cách tắt reverse lookup trong SSH config:
sudo nano /etc/ssh/sshd_config
Tìm hoặc thêm dòng:
UseDNS no
Restart SSH:
sudo systemctl restart sshd
SSH sẽ connect nhanh hơn nhiều sau khi tắt reverse lookup.
Checkpoint
Đến đây bạn đã nắm được những thứ cơ bản nhất về networking trên VPS. Thử chạy qua mấy bài tập nhỏ này để kiểm tra:
- Xem IP của VPS: Dùng
ip addrvàcurl ifconfig.me. So sánh IP trên interface với public IP xem có giống nhau không. - Tra DNS một domain: Dùng
dig +short yourdomain.comđể xem domain trỏ về đâu. Thử cảhostvànslookupđể so sánh output. - curl test website: Chạy
curl -I https://yourdomain.comxem status code và headers. Nếu trả 200 thì OK, nếu 301/302 thì xem nó redirect đi đâu. - Xem ports đang listen: Chạy
ss -tlnpvà liệt kê xem server đang chạy những dịch vụ gì. Thử mapping port với dịch vụ: 22 = SSH, 80 = HTTP, 443 = HTTPS…
Nếu cả 4 bước trên đều chạy được và bạn hiểu output, bạn đã sẵn sàng cho bài tiếp theo. Networking trên Linux còn rất nhiều thứ sâu hơn (iptables, routing nâng cao, VLAN…), nhưng với VPS cơ bản thì bấy nhiêu là đủ dùng rồi.
Có thể bạn cần xem thêm
- Hướng dẫn cấu hình Static IP trên Ubuntu và AlmaLinux
- Troubleshooting VPS Linux - Cách xủ lý sự cố VPS phổ biến
- Firewall trên Linux VPS - UFW và firewalld từ cơ bản đến thực tế
- Firewall nâng cao trên Linux VPS - UFW và firewalld cho production
- Grep, Pipe và Redirect trên Linux - Xử lý text như pro
- Tăng cường bảo mật Kernel và Network trên Linux VPS - sysctl, AppArmor và SELinux
Về tác giả
Trần Thắng
Chuyên gia tại AZDIGI với nhiều năm kinh nghiệm trong lĩnh vực web hosting và quản trị hệ thống.