因工作原因,之前的模板机一直用Centos7.6,一直没有做ubuntu模板,刚好有需求要用到ubuntu的系统,所以把模板配置给做出来了。
准备工作:
(1)虚拟机按基本配置生成一个虚拟机,并挂载下载的ISO
(2)官网下载ubuntu-22.04.1-live-server-amd64.iso
(3)安装完成后进行配置
vi /etc/hostname
Ubuntu从17.10开始,放弃在/etc/network/interfaces里面配置IP,改为在/etc/netplan/XX-installer-config.yaml的yaml文件中配置IP地址。
查看网络配置信息
ip addr
可以使用 ip route show 命令查看网关
使用熟悉的编辑器打开 /etc/netplan/下面的yaml配置文件,我的是00-network-manager-all.yaml 文件名,看实际情况
sudo vi vi /etc/netplan/00-intaller-config.yaml
打开后可以是默认DHCP的方式
# Let NetworkManager manage all devices on this system
network:
enp0s8: # 配置的网卡的名称,可能不一样
dhcp4: true # 关闭dhcp4
version: 2
renderer: NetworkManager
# Let NetworkManager manage all devices on this system
network:
ethernets:
enp0s8: # 配置的网卡的名称
addresses: [10.1.202.*/23] # 配置的静态ip地址和掩码 中间在空格
dhcp4: false # 关闭dhcp4
optional: true
gateway4: 10.1.*.254 # 网关地址
nameservers:
addresses: [10.1.200.*] # DNS服务器地址,多个DNS服务器地址需要用英文逗号分>隔开,可不配置
version: 2
renderer: NetworkManager
输入 :wq 保存退出后,执行 sudo netplan apply 使配置生效,之后每次启动虚拟机IP地址就不会再改变了。这样虚拟机内部可以正常上网,在物理机中也可以直接使用虚拟机的ip访问内部的服务。
使配置生效
sudo netplan apply
至此Ubuntu22的静态IP配置完成。经过测试,可以正常上网。
默认在安装时已经安装openssh,如示安装可按以下步骤
新增需要匹配的老算法:
PasswordAuthentication yes
KexAlgorithms [email protected],ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1,diffie-hellman-group-exchange-sha1,diffie-hellman-group1-sha1
#PermitRootLogin prohibit-password
PermitRootLogin yes
ClientAliveInterval 60
ClientAliveCountMax 5
需要重启系统或者sshd服务
sudo /etc/init.d/ssh stop
sudo /etc/init.d/ssh start
sudo service ssh restart
vi /etc/profile在最后添加
export TMOUT=900
使用source使用配置更新
source /etc/profile
安装ssh服务后,系统默认开启系统sshd,查看sshd状态如果不是默认启动,修改服务为enable
sudo systemctl enable ssh
sudo passwd root
输入新密码即可
SNMP AGENT 安装
# 先更新
sudo apt-get update
# 查看系统自带的snmpd版本
sudo apt list a snmpd
正在列表... 完成
snmpd/focal-updates,focal-security,now 5.8+dfsg-2ubuntu2.2 amd64 [已安装]
snmpd/focal-updates,focal-security 5.8+dfsg-2ubuntu2.2 i386
#先安装依赖包:
sudo apt install snmpd systemd
#安装 snmp agent
sudo apt install snmpd libsnmp-dev
# 用来下载更新本地mib库的软件
sudo apt install snmp-mibs-downloader
如果/usr/share/snmp/mibs为空,则需要手动下载mib库sudo download-mibs
修改 /etc/snmp/snmpd.conf
# 默认启用sub-agent
master agentx
# 如果采用agentX添加自定义mib库,可根据需要,配置sub-agent
agentxSocket tcp:localhost:705
agentxTimeout 5000
agentxRetries 0
# Listen for connections from the local system only
#agentAddress udp:127.0.0.1:161
# Listen for connections on all interfaces (both IPv4 *and* IPv6)
agentAddress udp:161,udp6:[::1]:161
agentAddress udp:127.0.0.1:161
同时去掉下面这一行的注释:
#agentAddress udp:161,udp6:[::1]:161
# 注释掉下边两行
#view systemonly included .1.3.6.1.2.1.1
#view systemonly included .1.3.6.1.2.1.25.1
# 新添加
view systemonly included .1.3.6.1
# disk checks
# solve : dskUsed = No Such Instance currently exists at this OID
disk / 10000
load [1MAX=12.0] [5MAX=12.0] [15MAX=12.0]load 12 14 14
# 创建v3用户 username:bigdata, password:11111111
createUser bigdata MD5 11111111 DES
rwuser bigdata priv
# 如果采用动态加载方式添加自定义mib库,可以通过如下语句实现
#dlmod cluster_env /home/snmplib/libclusterenv.so
设置完之后,想修改密码,发现不好使,应该是 /var/lib/snmp/snmpd.conf 有缓存,可以尝试把这个文件中对应的内容删掉。
sudo service snmpd restart
sudo service snmpd status
说明:当加载自己的agent库时,使用snmp_log打印的信息可以通过这个命令查看
# 查看系统信息,测试是否有反馈信息即可
snmpwalk -v 2c -c lh****** 10.1.202.167
timedatectl list-timezones | grep Asia
timedatectl set-timezone Asia/Shanghai
date
默认有安装systemd-timesyncd,手动安装下ntpdate
sudo apt install ntpdate
sudo vi /etc/systemd/timesyncd.conf
NTP=10.1.200.93
保存:wq
重启服务:
systemctl restart systemd-timesyncd
systemctl enable systemd-timesyncd
手动同步:
ntpdate -s 10.1.200.93
查看同步状态:
timedatectl timesync-status
1).
需修改文件位于/etc/rsyslog.conf
只需要把尾部#*.* @@remote-host:514的 @@替换为@,remote-host替换为日志审计设备IP即可;
service rsyslog restar重启服务
*.* @10.1.*.239:514
2)
修改[root@logstash ~]# vi /etc/rsyslog.conf,
添加以下内容 *.* @日志审计IP地址
修改后,用命令service rsyslog restart重启服务
apt install selinux-utils
setenforce 0
getenforce
iptables是整合在Linux操作系统中的防火墙软件,绝大部分Ubuntu发行版都预装了iptables。在一些非默认安装的Ubuntu系统或者容器环境中,可能没有预装iptables,我们可以通过下面的命令来安装。
sudo apt-get install iptables iptables-persistent
Ubuntu Server默认没有开启任何防火墙的,但是默认安装了ufw防火墙,我们这里推荐使用iptables防火墙。
ufw status #查看系统自带的ufw防火墙状态
Status: inactive #表示关闭
ufw disable #关闭ufw防火墙,参数enable是开启,我们这里关闭
whereis iptables #查看系统是否安装防火墙
systemctl status iptables.service
systemctl enable iptables.service
systemctl start iptables.service
添加规则
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -p icmp -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
iptables -A INPUT -p udp --dport 161 -j ACCEPT
iptables -A INPUT -p udp --dport 514 -j ACCEPT
要插入的策略放在这里
iptables -A INPUT -j REJECT --reject-with icmp-host-prohibited
后续需要新增端口则需要使用插入规则如下:
使用 iptables -nvL -line-num
iptables -I INPUT 号码 -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
案例:
iptables -I INPUT 7 -p udp --dport 161 -j ACCEPT
存iptables规则
使用以下命令保存并加载iptables规则:
root@sdyunbanAI:~# netfilter-persistent save
run-parts: executing /usr/share/netfilter-persistent/plugins.d/15-ip4tables save
run-parts: executing /usr/share/netfilter-persistent/plugins.d/25-ip6tables save
使用lvm的方式根据需要添加磁盘,在模板中只使用了50G磁盘,分配另外的900G给用户。磁盘需求根据需要进行lvm划分。
详见lvm操作手册
配置示例:
root@sdyunban:~# df -h
Filesystem Size Used Avail Use% Mounted on
tmpfs 796M 1.2M 794M 1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv 48G 7.6G 38G 17% /
tmpfs 3.9G 0 3.9G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
/dev/sda2 2.0G 245M 1.6G 14% /boot
tmpfs 796M 4.0K 795M 1% /run/user/0
查看到目前根目录分配为48G,可根据实际情况进行扩容
root@sdyunban:~# vgdisplay
--- Volume group ---
VG Name ubuntu-vg
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 2
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 1
Act PV 1
VG Size <98.00 GiB
PE Size 4.00 MiB
Total PE 25087
Alloc PE / Size 12543 / <49.00 GiB
Free PE / Size 12544 / 49.00 GiB
VG UUID MLwRvY-Ec0g-cIU7-CrYr-Iuhl-9T6C-sQU2VB
上面看到还有49G未分配,可将这49G加到/目录。
lvextend -L 49G /dev/mapper/ubuntu--vg-ubuntu--lv //增大至120G
lvextend /dev/mapper/ubuntu--vg-ubuntu--lv -l +100%free 分配所有的空闲空间给用户
resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv //执行调整
附新增lvm操作:
root@sdyunbanWEB:~# fdisk /dev/sda
Command (m for help): m
Partition type or alias (type L to list all): lvm
Changed type of partition 'Linux filesystem' to 'Linux LVM'.
Command (m for help): p
Disk /dev/sda: 1 TiB, 1099511627776 bytes, 2147483648 sectors
Disk model: Virtual disk
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: C9D31AC1-3134-4D93-9CB5-2589E2467D8E
Device Start End Sectors Size Type
/dev/sda1 2048 4095 2048 1M BIOS boot
/dev/sda2 4096 4198399 4194304 2G Linux filesystem
/dev/sda3 4198400 209713151 205514752 98G Linux filesystem
/dev/sda4 209713152 2147483614 1937770463 924G Linux LVM
Command (m for help): w
The partition table has been altered.
Syncing disks.
重新读取磁盘列表
partprobe
创建PV,扩容VG,LV
root@sdyunbanWEB:~# pvcreate /dev/sda4
Physical volume "/dev/sda4" successfully created.
root@sdyunbanWEB:~# vgdisplay
--- Volume group ---
VG Name ubuntu-vg
System ID
Format lvm2
Metadata Areas 1
Metadata Sequence No 2
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 1
Act PV 1
VG Size <98.00 GiB
PE Size 4.00 MiB
Total PE 25087
Alloc PE / Size 12543 / <49.00 GiB
Free PE / Size 12544 / 49.00 GiB
VG UUID MLwRvY-Ec0g-cIU7-CrYr-Iuhl-9T6C-sQU2VB
root@sdyunbanWEB:~# vgextend ubuntu-vg /dev/sda4
Volume group "ubuntu-vg" successfully extended
lvdisplay #查看已经存在的LV信息,
root@sdyunbanWEB:~# lvdisplay
--- Logical volume ---
LV Path /dev/ubuntu-vg/ubuntu-lv
LV Name ubuntu-lv
VG Name ubuntu-vg
LV UUID FUjZcI-rUzn-4cVM-G9nf-vQ2E-9uEe-cWDB4m
LV Write Access read/write
LV Creation host, time ubuntu-server, 2022-12-08 16:50:06 +0800
LV Status available
# open 1
LV Size <49.00 GiB
Current LE 12543
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
root@sdyunbanWEB:~# lvextend /dev/ubuntu-vg/ubuntu-lv -l +100%free
Size of logical volume ubuntu-vg/ubuntu-lv changed from <49.00 GiB (12543 extents) to 1021.99 GiB (261630 extents).
Logical volume ubuntu-vg/ubuntu-lv successfully resized.
只分配200G示例:
lvextend –l 200G /dev/ubuntu-vg/ubuntu-lv
#扩展LV
root@sdyunbanWEB:~# resize2fs /dev/ubuntu-vg/ubuntu-lv
resize2fs 1.46.5 (30-Dec-2021)
Filesystem at /dev/ubuntu-vg/ubuntu-lv is mounted on /; on-line resizing required
old_desc_blocks = 7, new_desc_blocks = 128
The filesystem on /dev/ubuntu-vg/ubuntu-lv is now 267909120 (4k) blocks long.
df –h #查看挂载情况,已经扩容