Ubuntu 系统常用命令整理
1. 防火墙管理(UFW)
开启防火墙:
sudo ufw enable
关闭防火墙:
sudo ufw disable
查看防火墙状态:
sudo ufw status
2. 端口管理
放行端口(如 80 端口):
sudo ufw allow 80
封禁端口(如 80 端口):
sudo ufw deny 80
删除放行规则(如 80 端口):
sudo ufw delete allow 80
3. 系统更新
更新软件源:
sudo apt update
升级已安装的软件:
sudo apt upgrade -y
完整更新系统(包括内核等):
sudo apt full-upgrade -y
修改软件源(换国内源):
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak sudo sed -i 's/archive.ubuntu.com/mirrors.aliyun.com/g' /etc/apt/sources.list sudo apt update
4. 用户管理
添加新用户:
sudo adduser username
删除用户:
sudo deluser username
添加用户到 sudo 组(赋予管理员权限):
sudo usermod -aG sudo username
切换用户:
su - username
创建新用户并指定用户组:
sudo useradd -m -G groupname -s /bin/bash username
修改用户密码:
sudo passwd username
创建新用户组:
sudo groupadd groupname
删除用户组:
sudo groupdel groupname
添加用户到特定组:
sudo usermod -aG groupname username
查看用户所属组:
groups username
5. 安全加固
锁定 root 账户(禁用 root 登录):
sudo passwd -l root
禁用密码登录(仅允许 SSH 密钥登录):
sudo nano /etc/ssh/sshd_config
修改:
PasswordAuthentication no
重启 SSH 服务:
sudo systemctl restart ssh
启用自动安全更新:
sudo apt install unattended-upgrades sudo dpkg-reconfigure unattended-upgrades
6. 日志管理
查看系统日志:
journalctl -xe
查看特定服务日志(如 Nginx):
journalctl -u nginx --no-pager
清理日志文件:
sudo journalctl --vacuum-time=7d
7. DNS 服务器配置(BIND9)
安装 BIND9:
sudo apt install bind9 -y
配置 DNS 解析(编辑 /etc/bind/named.conf.local):
sudo nano /etc/bind/named.conf.local
添加以下内容:
zone "example.local" { type master; file "/etc/bind/zones/example.local.db"; };
创建 DNS 解析文件:
sudo mkdir -p /etc/bind/zones sudo nano /etc/bind/zones/example.local.db
填入示例内容:
$TTL 604800 @ IN SOA example.local. root.example.local. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS ns.example.local. ns IN A 192.168.1.1 www IN A 192.168.1.100
重启 BIND9 服务:
sudo systemctl restart bind9
测试 DNS 解析:
nslookup www.example.local 192.168.1.1
8. DHCP 服务器配置(ISC DHCP Server)
安装 DHCP 服务器:
sudo apt install isc-dhcp-server -y
编辑 DHCP 配置文件:
sudo nano /etc/dhcp/dhcpd.conf
添加示例配置:
subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.100 192.168.1.200; option routers 192.168.1.1; option domain-name-servers 192.168.1.1; }
重启 DHCP 服务:
sudo systemctl restart isc-dhcp-server