本文共 2787 字,大约阅读时间需要 9 分钟。
根据前人的一些经验,汇总下linux的一些基础优化。
先说说安装linux系统时,采用最小化原则,即安装最小化,选择安装包时最小化,不用的不选择,后续有需要时再安装。系统安装完后的一些优化点。1.不用root管理,以普通用户的名义通过sudo授权管理平时在管理系统时使用普通用户,即权限最小化,通过sudo对普通用户授权来管理系统2.更改默认的远程连接sshd服务端口,禁止root登陆,甚至要修改只监听内网地址我们知道sshd服务默认端口为22,在实际工作中可以修改默认端口号[root@lnmp01 tmp]# ll /etc/ssh/sshd_config -------》配置文件-rw-------. 1 root root 3879 Sep 1 01:40 /etc/ssh/sshd_config1.更改默认端口22为隐蔽端口2.取消use dns 我们都是通过IP连接的,无需进行域名解析#UseDNS yes3.禁止root远程登陆#PermitRootLogin yes PermitRootLogin no4.监听地址改为内网IP地址#ListenAddress 0.0.0.0也可以通过防火墙设置内网可以连接例如 iptables -I INPUT -p tcp --dport 端口号 -s 192.168.0.0/24 -j ACCEPT3.定时自动更新服务器时间,使其和互联网时间同步4.配置yum更新源,从国内更新源下载安装软件包yum源默认是从国外网站下载,采用国内yum源,在安装更新时速度更快。如国内的阿里云就不错。cd /etc/yum.repos.d/wget -O /etc/yum.repos.d/CentOS-Base.repo 5.关闭selinux及iptables(在工作场景中,如果有外部IP,一般要打开)6.调整文件描述符,进程及文件的打开都会消耗文件描述符文件描述符1.表示形式为整数数字,一般使用0-65535范围2.进程在使用时会占用文件描述符3.对于内核而言,所有打开的文件都是通过文件描述符标识的查看默认文件描述符ulimit -n 1024实际工作中需要调整。
ulimit -SHn 65535 临时生效,可以放在开机自启动中也可以修改配置文件
echo '* - nofile 65535' >>/etc/security/limits.conf7.定时清理邮件目录垃圾文件,防止inodes节点被占满8.精简开机自启动服务(只保留crond、sshd、network、rsyslog、sysstat),后续需要自启的再进行设置9.linux内核参数优化这儿所列参数是老男孩老师生产中常用的参数:net.ipv4.tcp_syn_retries = 1net.ipv4.tcp_synack_retries = 1net.ipv4.tcp_keepalive_time = 600net.ipv4.tcp_fin_timeout = 2net.ipv4.tcp_max_tw_buckets = 36000net.ipv4.tcp_tw_recycle = 1net.ipv4.tcp_tw_reuse = 1net.ipv4.tcp_max_orphans = 16484net.ipv4.tcp_syncookies = 1net.ipv4.tcp_max_syn_backlog = 16384net.ipv4.ip_local_port_range = 4000 65000net.ipv4.route.gc_timeout = 100net.core.somaxconn = 16384net.core.netdev_max_backlog = 16384##############iptables#######net.nf_conntrack_max = 25000000net.netfilter.nf_conntrack_max = 25000000net.netfilter.nf_conntrack_tcp_timeout_established = 180net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 12010.更改字符集,使其支持中文,但建议还是用英文[root@lnmp01 ~]# cat /etc/sysconfig/i18n LANG="en_US.UTF-8"SYSFONT="latarcyrheb-sun16"改为中文则是 LANG=“zh_CN.UTF-8”sed -i 's#LANG="en_US.UTF-8"#LANG="zh_CN.UTF-8"#g' /etc/sysconfig/i18nsource /etc/sysconfig/i18n ---------使更改生效11.锁定系统关键文件,如密码文件chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab将chattr重命名然后转移到其他地方12.清空/etc/issue、/etc/issue.net去除登陆前系统版本内核提示信息去掉终端登陆前显示操作系统信息(影藏版本信息)即清空/etc/issue及/etc/issue.net文件内容/etc/issue
/etc/issue.net可以在/etc/motd中设置一些系统信息,如RHEL 5.8 (Final)Kernel \r on an \m13.清空多余的系统账号14.为grub菜单加密码-----在安装系统时可以加上15.优化终端超时以及历史记录变量历史记录默认1000个,可以调整为较小的值export TMOUT=300 --连接的超时时间export HISTSIZE=10export HISTFILESIZE=5 历史记录文件的命令数量将这些环境变量加到/etc/profile中source /etc/profile16.升级漏洞软件如yum install openssl openssh bash -y
转载于:https://blog.51cto.com/tuwei/2067922