一、配置dns 检查dns 相关内容:
nmcli con mod eno1 ipv4.dns "192.xx.xx.xx 192.xx.xx.xx"
systemctl restart NetworkManger
nmcli con mod eno1 ipv4.dns ""
置空dns reload后解析依然生效,验证dns 配置变更问问题,安装nslookup工具,发现外网被禁止。
决定先弄个内部安装源。
Oracle Liunx 8 内部安装源配置:
ftp 服务目录创建 ol8 的文件夹 :
cd /var/ftp/pub &mkdir ol8
挂载镜像:
mount /tmp/OracleLinux-R8-U4-x86_64-dvd.iso -o loop /mnt/
拷贝文件到ol8目录:
cp /mnt/* /var/ftp/pub/ol8
配置yum 源文件:
vim /etc/yum.repos.d/Base.repo
[Oracle_Linux_BaseOS]
name=BaseOS
baseurl=ftp://192.xx.xx.xx/pub/ol8/BaseOS
enable=1
gpgcheck=0
[Oracle_Linux_AppStream]
name=AppStream
baseurl=ftp://192.xx.xx.xx/pub/ol8/AppStream
enable=1
gpgcheck=0
安装 dns 检查相关工具包,验证dns 配置
yum -y install bind-utils
验证结论:
简而言之,Centos 7 、OL8 等NM管理的 网卡配置里的非空DNS配置项优先级高于/etc/resolv.conf 配置,重启NM会以 网卡配置为准刷新dns 配置文件,如果网卡里配置为空,则以dns 配置文件为准,NM不再管理dns配置文件。不管网卡里配置了啥,真正生效的还是/etc/resolv.conf 里,修改/etc/resolv.conf都会立即生效,也不需要重启网络。所以最佳做法是,不采用NM管理dns配置文件,也就是不要在网卡里配置DNS条目,直接操作/etc/resolv.conf文件。如果选择了网卡配置,就不要手动修改dns配置文件,避免重启网络后,被覆盖导致的一些风险,网卡配置的可以命令行操作,省事。(未测试多网卡配置不同dns)。
Centos 8 通过NetworkManager 管理网络配置,nmcli con mod eno1 ipv4.dns "192.xx.xx.xx 192.xx.xx.xx" 及直接修改网卡配置文件均可。
/etc/resolv.conf 默认不存在,只有当网卡配置DNS后,NetworkManager 重启后会自动生成/etc/resolv.conf 。
nmcli 修改dns 及 c reload 不会修改 /etc/resolv.conf 文件,只有重启NetworkManager 后会刷新。
如果 /etc/resolv.conf 存在dns配置,网卡不存在dns配置项,重启NetworkManager,不会改变 /etc/resolv.conf
如果网卡存在dns配置项,/etc/resolv.conf 也存在,但是有差异 则 /etc/resolv.conf 被NetworkManager所管理,重启服务会以网卡配置为准刷新 /etc/resolv.conf 配置
二、配置时间同步服务
centos 8 取消了官方的ntpdate 命令,虽然有办法获取,但不再建议使用,直接使用chronyd 服务管理的时间同步即可。
vim /etc/chrony.conf
pool 192.xx.xx.xx iburst //把默认pool 修改为内部时间服务
timedatectl set-timezone Asia/Shanghai //设置时区
timedatectl set-ntp true //允许ntp 同步时间
systemctl enable chronyd && systemctl restart chronyd.service //开机运行,重启服务
chronyc sources
注意:物理机要从os同步物理时钟
三、安装必要软件包
yum -y install sysstat dstat //性能检查工具
yum -y install bash-completion //命令补全增强
yum -y install net-utils wget telnet //网络工具包
四、切分审计日志
/etc/bashrc下增加内容切分日志并追加写入到opsaudit日志文件方便logstash收集:
export PROMPT_COMMAND='{ msg=$(history 1|{ read x y; echo $y; });echo $( who am i |awk "{print \$1\" \"\$3\" \"\$4\" \"\$5}"):[`pwd`] "$msg";}>>/var/log/opsaudit.log'
/etc/profile 下增加变量修改history 格式:
export HISTTIMEFORMAT="%F %T `whoami`:
五、关闭Selinux
vim /etc/selinux/config
SELINUX=disabled //Enforce 修改成disabled
六、修改user login 的limit 限制
在/etc/security/limit.conf 倒数第二行增加以下内容
* soft nofile 65535
* hard nofile 65535
* soft nproc 65535
* hard nproc 65535
删除 /etc/secutity/limit.d/ 下的所有内容
注意事项:limit.d 下的配置优先级高于 limit.conf,同一配置,limit.d 生效
七、修改systemd管理的服务默认的limit 限制
vim /etc/systemd/system.conf
DefaultLimitNOFILE=65535 //取消注释,赋值
DefaultLimitNPROC=65535 //取消注释,赋值
注意事项:systemd 管理的服务,如果不指定limit 则服务会使用的是systemd配置里的默认值,默认值很低,会产生故障。
八、开启firewalld 防火墙并设置部分默认规则
systemctl enable firewalld && systemctl start firewalld //开机运行并启动
firewall-cmd --zone=public --add-port=9595/tcp --permanent //开启宙斯服务端口
firewall-cmd --zone=public --add-port=29100/tcp --permanent //开启node_export端口
firewall-cmd --zone=public --add-port=22/tcp --permanent //开启ssh端口
firewall-cmd --zone=public --add-port=1024-65535/tcp --permanent //按段开放
九、初始化主机名并加入开机启动
curl ftp://192.xx.xx.xx/pub/init/init_hostname.sh|sh //执行并加入/etc/rc.local
十、初试化系统参数
# vim /etc/sysctl.d/99-salt.conf
net.ipv4.ip_local_port_range = 1024 65000
fs.file-max = 2000000
net.ipv4.ip_forward = 1
vm.swappiness = 0
net.ipv4.tcp_max_tw_buckets = 65535
net.ipv4.tcp_sack = 1
net.ipv4.tcp_window_scaling = 1
net.netfilter.nf_conntrack_tcp_timeout_established = 180
net.netfilter.nf_conntrack_max = 1048576
net.nf_conntrack_max = 1048576
net.ipv4.tcp_rmem = 4096 87380 4194304
net.ipv4.tcp_wmem = 4096 87380 4194304
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.core.netdev_max_backlog = 262144
net.core.somaxconn = 65535
net.ipv4.tcp_max_orphans = 3276800
net.ipv4.tcp_max_syn_backlog = 819200
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_fin_timeout = 15
net.ipv4.tcp_keepalive_time = 180
net.ipv4.tcp_keepalive_intvl = 60
net.ipv4.tcp_keepalive_probes = 3
net.ipv4.tcp_syncookies = 1
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
fs.aio-max-nr = 1048576
注意:物理机需要修改 这个值到4G,单位是K vm.min_free_kbytes = 67584
备注:随笔如有错误,欢迎指正