Ubuntu 22.04.4操作系统初始化详细配置
上一章节,主要讲解了Ubuntu 22.04.4操作系统的安装,但是在实际生产环境中,需要对Ubuntu操作系统初始化,从而提高系统的性能和稳定性。
一、查看Ubuntu系统版本和内核版本
# 查看系统版本
test@ubuntu:~$ sudo lsb_release -a
Release: 22.04
Codename: jammy #版本代号# 查看内核版本
test@ubuntu:~$ uname -r 或 cat /proc/version
5.15.0-117-generic
二、设置 root 用户密码
# ubuntu系统默认使用普通用户登录
test@ubuntu:~$ sudo passwd root
[sudo] password for test: #输入test用户密码
New password: #输入root密码
Retype new password: #确认root密码
passwd: password updated successfully
三、切换 root 用户
test@ubuntu:~$ su - root #切换root用户
Password: #输入root密码
root@ubuntu:~#
四、配置网络
4.1:设置静态IP地址
Ubuntu 旧版本使用 /etc/network/interfaces 配置网络。
Ubuntu 18.04和更高版本中默认采用Netplan工具进行网络配置。网卡配置文件位于/etc/netplan目录下,文件名以.yaml结尾。
# 修改网卡配置文件
root@ubuntu:~# apt -y install vim
root@ubuntu:~# vim /etc/netplan/00-installer-config.yaml
# 修改以下内容
network: #renderer: networkd #添加注释,指定网络配置管理工具为networkdethernets: #指定以太网接口的配置ens33: #指定以太网接口的名称addresses: #指定IPv4地址- 192.168.10.200/24nameservers: #指定DNS服务器的地址addresses:- 192.168.10.2#addresses: [223.5.5.5, 223.6.6.6] #gateway4: 192.168.10.2 #gateway4 版本已经废弃了 routes: #配置默认网关地址,层级为routes -> to -> via- to: defaultvia: 192.168.10.2dhcp4: falseversion: 2 #指定Netplan配置文件的版本号,通常为2# 检查配置文件
root@ubuntu:~# netplan try# 将当前netplan配置应用到系统
root@ubuntu:~# netplan apply # 查看网卡信息
root@ubuntu:~# ip addr# 临时禁用网卡
ip link set ens33 down# 临时启用网卡
ip link set ens33 up# 临时添加IP地址
ip addr add 192.168.10.200/24 dev ens33
# 临时删除IP地址
ip addr del 192.168.10.200/24 dev ens33# 临时添加网关地址
ip route add default via 192.168.10.2
# 临时删除网关地址
ip route del default via 192.168.10.2
4.2:设置DHCP动态获取IP地址
# 修改网卡配置文件
root@ubuntu:~# vim /etc/netplan/00-installer-config.yaml
network:#renderer: networkdethernets:ens33:dhcp4: trueversion: 2# 检查配置文件
root@ubuntu:~# netplan try# 将当前netplan配置应用到系统
root@ubuntu:~# netplan apply
扩展知识:NetworkManager 和 Netplan 有何区别?
NetworkManager和Netplan是Ubuntu中两种不同的网络管理工具。
1)NetworkManager
NetworkManager是一个功能强大的网络管理器,用于管理和配置网络连接。它提供了一个图形化界面和命令行工具,可以方便地管理以太网、Wi-Fi、VPN等网络连接。
NetworkManager支持自动检测和配置网络连接,可以动态切换网络配置,适用于桌面环境和移动设备。
2)Netplan
Netplan是Ubuntu 17.10及更高版本引入的新一代网络配置工具。它使用简单的YAML配置文件来定义网络接口和连接配置。
Netplan的目标是提供一种统一的、简化的方式来配置网络连接,取代之前的网络管理工具(如ifup/down)。
Netplan配置文件位于/etc/netplan/目录下,可以定义静态IP、DHCP、网关、DNS等网络参数。
Netplan则更适合服务器环境,提供了一种简化的配置方式,使网络配置更易于管理和维护。
Netplan会在系统启动时自动加载并应用/etc/netplan目录下的配置文件。
五、更改仓库镜像源地址
- 使用默认的Ubuntu仓库镜像源地址,安装软件包比较慢,因此需要更改镜像源地址。
# 修改文件
root@ubuntu:~# mv /etc/apt/sources.list /etc/apt/sources.list.bak
root@ubuntu:~# gedit /etc/apt/sources.list 或 vim /etc/apt/sources.list
# 填写阿里云仓库源地址信息
deb http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ jammy-backports main restricted universe multiverse# 清除源仓库缓存
root@ubuntu:~# apt-get clean all 或 apt clean all# 更新安装源
root@ubuntu:~# apt-get update -y 或 apt update -y
六、设置 root 用户远程连接
- 在Ubuntu系统中,默认root用户禁止远程登录系统。
# 修改ssh配置文件
root@ubuntu:~# vim /etc/ssh/sshd_config
# 找到PermitRootLogin prohibit-password #默认是注释掉的,直接在下面添加一行
PermitRootLogin yes #33行,开启root登录
UseDNS no #101行,去掉注释,不开启DNS反向解析然后按esc,输入:wq保存并退出# 重启sshd服务
root@ubuntu:~# systemctl restart sshd
七、安装常用软件包
- 在Ubuntu系统中,apt和apt-get 都是用于管理软件包的命令行工具。都可以解决软件包的依赖关系,从远程仓库安装和更新软件包等。
- 1)apt:作为 apt-get 的增强版,集成了apt-get 和 apt-cache 的功能,使用户可以通过单一的命令行工具完成安装、更新、删除、搜索和显示软件包信息等操作。
- 2)apt-get:侧重于软件包的安装、更新和删除等基本操作,而查询和显示软件包信息等任务则通常通过 apt-cache 等其他工具来完成。
# 安装常用软件包
root@ubuntu:~# apt-get -y install net-tools iputils-ping vim procps telnet traceroute iproute2 lrzsz ntp ntpdate curl git bash-completion ipset
root@ubuntu:~# apt-get -y install systemd-timesyncd tree unzip wget
八、防火墙设置
- ufw是Ubuntu系统自带的类似iptables的防火墙管理软件,底层也是基于netfilter的。
- ufw是Uncomplicated FireWall的简称,真正地简化了 iptables,已经成为 Ubuntu 和 Debian 等系统上的默认防火墙。
- ufw防火墙默认关闭,开放所有端口。默认拒绝进入流量,放行出口流量。
参数配置文件 /etc/ufw/ufw.conf
防火墙日志文件 /var/log/ufw.log
路由转发参数配置文件 /etc/ufw/sysctl.conf
应用定义文件目录 /etc/ufw/applications.d
# 安装软件包
apt install ufw# 查看版本
ufw version# 获取ufw命令帮助
ufw --help# 查看防火墙运行状态
systemctl status ufw / ufw status # 查看防火墙状态详细信息
ufw status verbose# 启动防火墙
systemctl start ufw / ufw enable# 关闭防火墙
systemctl stop ufw / ufw disable# 设置防火墙开机自启动
systemctl enable ufw# 设置防火墙禁止开机启动
systemctl disable ufw# 重置防火墙规则
ufw reset# 添加ssh端口策略
ufw allow 22/tcp# 添加应用协议策略
ufw allow http# 添加放行一个端口策略
ufw allow proto tcp to any port 81# 删除指定规则策略
ufw delete proto allow 80/tcp# 添加默认入站策略为拒绝
ufw default allow incoming --dry-run #--dry-run参数模拟执行,incoming代表入站的规则# 设置默认出站策略为拒绝
ufw default deny outgoing --dry-run #--dry-run参数模拟执行,outgoing代表出站的规则# 允许固定IP访问本机的22端口
ufw allow from 192.168.10.0/24 to any port 22
ufw allow from 192.168.10.0/24 to any port 22,80,443 proto tcp #添加多个端口,需要指定协议# 拒绝指定IP访问
ufw deny from 192.168.10.1默认情况下,ufw遵循的规则存储在 /etc/ufw 目录下。
# 重新加载ufw的配置文件,使最新的配置生效。
# 这个命令会读取 /etc/ufw/ 目录下的所有配置文件,并应用这些配置到防火墙中。
ufw reload # 查看所有规则对应的数字序号
ufw status numbered# 插入指定规则
ufw insert 1 deny from 192.168.10.1 to any port 22 #在第一条规则位置之前插入规则# 删除指定规则
ufw delete 1 #删除第一条规则
九、配置时间同步
方法一:配置时间同步ntp
root@ubuntu:~# apt install ntp ntpdate -y
root@ubuntu:~# systemctl start ntp
root@ubuntu:~# systemctl enable ntp# 同步时间
root@ubuntu:~# ntpdate ntp.aliyun.com# 查看时间同步状态
root@ubuntu:~# timedatectl status# 设置时区
root@ubuntu:~# timedatectl set-timezone Asia/Shanghai
方法二:配置时间同步timesyncd
root@ubuntu:~# apt install systemd-timesyncd
root@ubuntu:~# vim /etc/systemd/timesyncd.conf 或 gedit /etc/systemd/timesyncd.conf
# 末尾添加以下内容
[Time]
NTP=ntp.aliyun.com #主NTP服务器列表,可以使用主机名,也可以使用IP地址
FallbackNTP=ntp.ubuntu.com,ntp.tencent.com #备用NTP服务器列表,可以使用主机名,也可以使用IP地址
RootDistanceMaxSec=30 #最大误差时间,默认5s
PollIntervalMinSec=3600 #NTP消息最小轮询间隔秒数,不能小于16s
PollIntervalMaxSec=21600 #NTP消息最大轮询间隔秒数,必须大于PollIntervalMinSec# 重新启动服务
root@ubuntu:~# systemctl restart systemd-timesyncd# 查看时间同步状态
root@ubuntu:~# timedatectl status# 设置时区
root@ubuntu:~# timedatectl set-timezone Asia/Shanghai
十、软件包管理
- Ubuntu 22.04 默认使用 dpkg 命令安装软件包。
- dpkg 是Debian 和Ubuntu 系统中的软件包管理器,用于安装、卸载和管理和.deb软件包相关的信息。它不解决依赖关系,也不访问软件仓库,主要用于本地安装和基本的包管理任务。
# 列出已安装的所有deb软件包
dpkg -l
apt list --installed# 安装deb软件包
dpkg -i <软件包># 删除deb软件包,保留配置文件
dpkg -r <软件包>
# 删除deb软件包,不保留配置文件
dpkg -P <软件包># 查看软件包的内容列表
dpkg -c <软件包># 查看软件包中的文件列表
dpkg -L <软件包># 显示已安装软件包的详细信息,包括版本、依赖关系等
dpkg -s <软件包># 查看文件名查询所属的软件包
dpkg -S /path/to/file# 验证软件包是否安装
dpkg -V <软件包># 查询已安装的软件包
apt list --installed | grep <软件包>
apt list --upgradable# 查看软件包的相关信息, 如说明、大小、版本等
apt show <软件包># 搜索软件包
apt-cache search <软件包># 删除软件包
apt remove <软件包># 更新系统源软件清单
apt update -y# 更新全部软件包
apt upgrade <软件包># 查看可更新的软件包
apt list --upgradable
十一、关闭Selinux
- Ubuntu22.04 默认不开启 selinux
# 查看selinux状态
getenforce# 启用SELinux
apt-get install selinux-utils# 重启系统生效
reboot
以上就是Ubuntu 22.04.4操作系统初始化详细配置,如果对你有帮助,请记得点赞,关注,收藏。更多Linux运维相关知识持续分享中。