centos7系统安装后的基础优化2
1、更改网卡信息
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
1、编辑网卡 # cd /etc/sysconfig/network-scripts/ # mv ifcfg-ens33 ifcfg-eth0 # mv ifcfg-ens37 ifcfg-eth1 # vim ifcfg-eth0 TYPE=Ethernet BOOTPROTO=none DEFROUTE= yes IPV4_FAILURE_FATAL=no IPV6INIT= yes IPV6_AUTOCONF= yes IPV6_DEFROUTE= yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=eth0 #网卡名称改为eth0 DEVICE=eth0 #设备名称改为eth0 ONBOOT= yes IPADDR=xxx.xxx.x.xx PREFIX=24 GATEWAY=xxx.xxx.x.x DNS1=xxx.xxx.x.x IPV6_PEERDNS= yes IPV6_PEERROUTES= yes IPV6_PRIVACY=no 注:删掉网卡内的UUID ,通用唯一识别码和HWADDR MAC地址 这两行。 所有网卡都需要删除 2、编辑grub文件: [root@localhost network-scripts] # cp -a /etc/sysconfig/grub /etc/sysconfig/grub.bak #备份文件 [root@localhost network-scripts] # vim /etc/sysconfig/grub GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR= "$(sed 's, release .*$,,g' /etc/system-release)" GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU= true GRUB_TERMINAL_OUTPUT= "console" GRUB_CMDLINE_LINUX= "crashkernel=auto net.ifnames=0 biosdevname=0 rhgb quiet" #这行添加net.ifnames=0 biosdevname=0 GRUB_DISABLE_RECOVERY= "true" 3、生成启动菜单: [root@localhost network-scripts] # grub2-mkconfig -o /boot/grub2/grub.cfg Generating grub configuration file ... Found linux image: /boot/vmlinuz-3 .10.0-514.el7.x86_64 Found initrd image: /boot/initramfs-3 .10.0-514.el7.x86_64.img Found linux image: /boot/vmlinuz-0-rescue-7d9a96ac2162427d937e06ede5350e9e Found initrd image: /boot/initramfs-0-rescue-7d9a96ac2162427d937e06ede5350e9e .img done <br><br> |
4、然后重启服务器:reboot,重启服务器后查看网卡信息
2、下载必要软件包
再安装操作系统的时候使用的最小化安装,有很多包没有安装,使用时发现好多命令没有如{vim、wget、tree...等},下面就安装命令,可以根据需求自行调整。
1
|
# yum -y install wget net-tools screen lsof tcpdump nc mtr openssl-devel vim bash-completion lrzsz nmap telnet tree ntpdate bash-completion chrony |
3、使用aliyun的repo源
操作系统自带的是国外的源,改成国内的源安装包会快很多 例:aliyun或者清华的源都可以,这里使用aliyun的repo源。
1
2
3
4
5
6
7
8
9
10
|
mv /etc/yum .repos.d /CentOS-Base .repo /etc/yum .repos.d /CentOS-Base .repo.backup wget -O /etc/yum .repos.d /CentOS-Base .repo http: //mirrors .aliyun.com /repo/Centos-7 .repo mv /etc/yum .repos.d /CentOS-Base .repo /etc/yum .repos.d /CentOS-Base .repo.backup cd /etc/yum .repos.d/ wget http: //mirrors .163.com/.help /CentOS7-Base-163 .repo yum clean all yum makecache |
4、 给/etc/rc.local添加执行权限
1
2
3
4
|
# chmod +x /etc/rc.d/rc.local #添加执行权限 # ls -l /etc/rc.d/rc.local -rwxr-xr-x 1 root root 473 Oct 20 11:07 /etc/rc .d /rc . local 注:这样添加在rc. local 里的开机自启动配置就可以执行了。 |
5、修改ssh默认端口并禁止root用户远程登陆
linux系统下都有一个默认的超级管理员root,ssh服务的默认端口是22,圈内都知道,那么接下来我们可以修改一下我们的默认端口和禁止root用户远程登录,初步提高一下服务器的安全
1
2
3
4
5
6
7
8
9
10
11
12
|
1、首先修改 ssh 的默认端口(自己知道暂时不用修改) # sed -i "s#\#Port 22#Port 23451#g" /etc/ssh/sshd_config #端口可以改成任意端口,建议改成较大的端口,因为一万以内的端口常用的服务有占用,防止冲突(需要注意的是:这个端口要记住,否则连接不上服务器) 2、禁止root用户远程登陆 a):添加一个普通用户并设置密码(注:这一步必须执行,否则将造成远程连接不上服务器) # useradd xxx #添加xxx用户 # echo "pass" | passwd --stdin xxx #给xxx用户设置密码为pass b):修改 ssh 服务配置文件并撑起服务 # sed -i 's/#PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config # systemctl restart sshd c):解决 ssh 远程连接慢的问题 # sed -i.bak 's@#UseDNS yes@UseDNS no@g;s@^GSSAPIAuthentication yes@GSSAPIAuthentication no@g' /etc/ssh/sshd_config # systemctl restart sshd |
6、关闭selinux
SELinux(Security-Enhanced Linux) 是美国国家安全局(NSA)对于强制访问控制的实现,说白了就是安全机制,当然如果会配置的话建议配置更好,这里就介绍一下如何关闭吧,哈哈哈。
1
2
|
# sed -i.bak 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config #修改配置文件需要重启服务器配置才会生效,如何立即生效那? # setenforce 0 #关闭SELinux立即生效,重启服务器后配置失效。 |
7、关闭防火墙
防火墙,不解释,内网服务建议关掉,对外开放的服务器需要配置规则,这里先关掉,关于防火墙配置规则等待后续更新。
1
2
|
# systemctl stop firewalld #临时关闭 # systemctl disable firewalld #永久关闭 |
8、修改主机名并设置主机名解析
装机后主机名默认为localhost,这里个人想更改自己的主机名,在不搭建内网DNS的情况,能通过主机名找到本机的IP地址。
1
|
# hostnamectl set-hostname 7mini #设置主机名为7mini,这样设置连配置文件里都修改了 |
9、设置字符集
设置当前服务器字符集,国际通用utf-8,当然根据自己的业务自己调整,
1
2
3
4
5
6
7
|
# localectl status #查看当前字符集 System Locale: LANG=en_US.UTF-8 VC Keymap: us X11 Layout: us # localectl set-locale LANG=zh_CN.UTF-8 #修改字符集为zh_CN.UTF-8,命令行和配置文件都生效 # cat /etc/locale.conf #查看配置文件 LANG=zh_CN.UTF-8 |
10、加大打开文件数的限制(open files)
CentOS 7系统默认最大打开文件限制为1024,每建立一个TCP连接既浪费一个限制(这里不细讲,后续会更新详细说明),为了提升服务器性能,所以我们要增加打开文件的最大限制。
1
2
3
4
5
|
# ulimit -n #默认大小 1024 # echo "* soft nofile 65536" >> /etc/security/limits.conf #xi修改最大限制为65535 # echo "* hard nofile 65536" >> /etc/security/limits.conf # reboot #重启后生效 |
11、时间同步
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
ntpdate ntp1.aliyun.com cp /etc/chrony .conf{,.bak} vim /etc/chrony .conf server ntp6.aliyun.com iburst systemctl start chronyd systemctl enable chronyd #开机启动 systemctl restart chronyd chronyc sources #查看同步源 [root@7mini-node2 ~] # chronyc sources 210 Number of sources = 1 MS Name /IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^* 203.107.6.88 2 6 17 31 +653us[+1965us] + /- 32ms<br><br>2)或者通过计划任务进行同步 |
1
2
3
4
5
|
[root@linux-node1 ~] # crontab -e no crontab for root - using an empty one crontab : installing new crontab [root@linux-node1 ~] # crontab -l * /5 * * * * /usr/sbin/ntpdate time1.aliyun.com > /dev/null |
12、配置历史命令记录数和账户登录超时环境变量
1
2
3
4
|
[root@linux-node1 ~] # echo "export TMOUT=300" >> /etc/profile #配置连接超时时间控制变量 [root@linux-node1 ~] # echo "export HISTSIZE=5" >> /etc/profile #命令行的历史记录数量变量 [root@linux-node1 ~] # echo "export HISTFILESIZE=5" >> /etc/profile #历史记录文件的命令数量变量 [root@linux-node1 ~] # source /etc/profile |