Centos7-部分初始化设置

本文详细介绍了一套全面的Linux系统安全配置方案,包括时区设置、空闲超时、Telnet禁用、危险文件清理、口令期限、密码复杂度、用户权限管理、日志审计、SELINUX调整及防火墙配置等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#时区/时间设置
yum install -y ntpdate
timedatectl set-timezone Asia/Shanghai
ntpdate time.windows.com

#空闲超时设置
echo TMOUT=300 >> /etc/profile

#禁用Telnetd
systemctl disable telnetd.service

#删除潜在危险文件
find / -name .netrc |xargs rm -rf
find / -name .rhosts |xargs rm -rf
find / -name hosts.equiv |xargs rm -rf

#口令期限,缺省用户创建权限设置
sed -i 's/PASS_MAX_DAYS\t99999/PASS_MAX_DAYS\t90/' /etc/login.defs
sed -i 's/PASS_MIN_LEN\t5/PASS_MIN_LEN\t8/' /etc/login.defs
sed -i 's/PASS_WARN_AGE\t7/PASS_WARN_AGE\t10/' /etc/login.defs
sed -i 's/UMASK 077/UMASK 027/' /etc/login.defs

#密码复杂度设置,root用户不受限制,此项最好人工设定(不同的安装或云主机文件不一样)
sed -i '/password required pam_deny.so/a\password requisite pam_cracklib.so retry=3 minlen=8 minclass=3 dictpath=/usr/share/cracklib/pw_dict' /etc/pam.d/system-auth

#创建普通用户、授权wheel组用户可以su -、禁用root远程登入
useradd -G wheel yunwei
echo 'Hdhxt@8978' |passwd --stdin yunwei
sed -i 's/#auth\t\trequired\tpam_wheel.so use_uid/auth\t\trequired\tpam_wheel.so group=wheel/' /etc/pam.d/su
echo "SU_WHEEL_ONLY yes" >> /etc/login.defs
sed -i 's/#PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config
service sshd restart

#账号信息文件权限
chmod 644 /etc/passwd
chmod 400 /etc/shadow
chmod 644 /etc/group

#关闭SELINUX,设置firewalld
sed -i 's/SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
firewall-cmd --permanent --zone=public --add-port=80/tcp
firewall-cmd --permanent --zone=public --add-port=443/tcp
firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.126.0/24" service name="ssh" accept"
firewall-cmd --reload

#(备选) - 用户可以使用sudo,如果用户可以使用sudo则代表其具有sudo su - 的root权限
#sed -i '/root\tALL=(ALL)[[:space:]]\tALL/a\yunwei ALL=(ALL) NOPASSWD: ALL' /etc/sudoers

#日志审计,默认安装日志审计都是正常开启的

#根据自身网络环境添加路由

转载于:https://blog.51cto.com/7625939/2328329

<think>好的,我现在需要处理用户关于CentOS 7初始化设置的请求。用户希望获取相关的示例代码,并且根据系统级指令,我需要确保回答符合格式要求,比如使用正确的LaTeX语法,生成相关问题,以及添加引用标识。 首先,我需要回顾用户提供的引用内容。引用[1]提到了更新系统和安装常用工具,引用[4]详细描述了系统初始化脚本,包括修改yum源、安装工具、设置时区、同步时间、SSH配置、关闭防火墙和SELinux。这些内容都是用户可能需要的。 接下来,我应该整理这些信息,形成一个结构清晰的回答。用户需要示例代码,因此需要将步骤和对应的代码块结合起来。例如,更新系统可以使用`yum update`命令,安装常用工具可能包括vim、wget等。设置时区和同步时间涉及`timedatectl`和`ntpdate`。SSH配置需要修改sshd_config文件,关闭防火墙和SELinux则需要相应的systemctl命令和配置文件修改。 同时,根据用户的指示,必须使用中文回答,并且所有行内数学表达式用$...$,不过在这个问题中可能数学公式不多,但如果有的话需要注意格式。例如,如果提到某个版本号或参数,可能需要用$符号,但这里可能不涉及。 生成的相关问题需要与CentOS初始化设置相关,比如优化步骤、安全注意事项、脚本自动化等。这些问题应该基于用户提供的引用内容,比如引用[2]提到了安装组件工具和容器,引用[3]涉及磁盘初始化,但用户的问题主要集中在系统初始化设置,所以相关问题应围绕这个主题。 需要确保所有引用的地方在末尾添加引用标识,比如在提到更新系统时引用[^1],在提到初始化脚本时引用[^4]等。同时,代码块需要用三个反引号包裹,并注明语言是bash或python等。 最后,检查LaTeX语法是否正确,但在这个回答中可能用到的LaTeX较少,不过如果有变量或命令中的特殊符号,可能需要处理。例如,在提到路径或文件名时,如果有下划线或特殊字符,可能需要使用转义符,但根据用户示例,似乎不需要,直接使用代码块即可。 总结步骤: 1. 列出初始化设置的主要步骤,并对应引用来源。 2. 为每个步骤提供示例代码,用代码块包裹。 3. 添加相关问题,围绕初始化设置展开。 4. 确保引用标识正确放置,通常在步骤描述的末尾。 5. 检查格式是否符合要求,包括中文字符、LaTeX的正确使用等。 现在需要将这些步骤整合成一个自然流畅的回答,确保用户能清晰理解每个步骤的作用和实现方法。同时,避免使用Markdown格式,但根据用户提供的示例,代码块需要用反引号,而其他部分保持简洁明了。</think>以下是根据CentOS 7系统初始化设置的典型代码示例及说明,包含关键配置和最佳实践: ### 一、基础系统更新与工具安装 ```bash # 更新系统到最新版本(需要root权限) $ yum update -y && yum upgrade -y # 安装常用工具包(包含vim/wget/curl/net-tools等) $ yum install -y epel-release $ yum install -y vim wget curl telnet net-tools lsof bash-completion ``` 该步骤确保系统补丁最新并安装运维常用工具。 ### 二、系统时区与时间同步 ```bash # 设置上海时区 $ timedatectl set-timezone Asia/Shanghai # 安装chrony时间同步服务 $ yum install -y chrony $ systemctl enable chronyd && systemctl start chronyd # 硬件时钟同步 $ hwclock --systohc ``` ### 三、SSH服务优化配置 ```bash # 修改SSH配置文件 $ sed -i 's/#UseDNS yes/UseDNS no/g' /etc/ssh/sshd_config $ sed -i 's/GSSAPIAuthentication yes/GSSAPIAuthentication no/g' /etc/ssh/sshd_config # 重启SSH服务 $ systemctl restart sshd ``` 禁用DNS解析和GSSAPI认证可显著提升SSH连接速度[^4]。 ### 四、安全策略调整 ```bash # 关闭SELinux(需重启生效) $ setenforce 0 $ sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config # 关闭防火墙(根据实际需求选择) $ systemctl stop firewalld $ systemctl disable firewalld ``` 生产环境建议根据业务需求调整防火墙策略[^4]。 ### 五、内核参数优化 ```bash # 修改limits.conf文件 echo "* soft nofile 65535" >> /etc/security/limits.conf echo "* hard nofile 65535" >> /etc/security/limits.conf # 修改sysctl.conf echo "net.ipv4.tcp_tw_reuse = 1" >> /etc/sysctl.conf echo "net.ipv4.tcp_max_tw_buckets = 5000" >> /etc/sysctl.conf $ sysctl -p ``` ### 六、完整初始化脚本 可参考以下仓库获取完整自动化脚本: ```bash # 下载执行初始化脚本 $ wget https://example.com/centos7-init.sh $ chmod +x centos7-init.sh $ ./centos7-init.sh ``` 完整脚本通常包含用户创建、日志审计等高级配置[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值