重新启动系统服务:/etc/init.d/acpid restart
关闭系统服务:/etc/init.d/acpid stop
开启系统服务:/etc/init.d/acpid start
列出当前所有系统服务状态:chkconfig --list|more
显示某个系统服务状态:chkconfig --list acpid
关闭系统服务:chkconfig --level 3 acpid off,然后在查看:chkconfig --list acpid
grep :x:0: /etc/passwd检查是否有未知的用户账号
awk -F: '($2=="!!")' /etc/shadow查看空口令账号
awk -F: '($3==0)' /etc/passwd查看UID为零的账号
把两次修改口令之间的最少天数设为2、最多天数设为90、作废日期为2018年7月31日,并且在接近作废日期的14天里警告用户:
sudo chage -m 2 -M 90 -E 2018-07-31 -W 14 any
修改口令策略
cat /etc/login.defs|grep PASS和cat /etc/pam.d/system-auth查看密码策略设置。
cp /etc/pam.d/system-auth /etc/pam.d/system-auth_bak修改配置之前先备份文件
#vi /etc/pam.d/system-auth
配置密码长度最小8位,至少包含大小写字母、数字、其它字符中的两类,可做如下配置:Password requisite pam_cracklib.so dcredit=-1 ucredit=-1 lcredit=-1 ocredit=-1 minclass=2 minlen=8Password sufficient pam_unix.so md5 shadow nullok try_first_pass use_authtok"
vi /etc/login.defs修改配置文件 设置密码过期期限
PASS_MAX_DAYS 90 #新建用户的密码最长使用天数
PASS_MIN_DAYS 0 #新建用户的密码最短使用天数
PASS_MIN_LEN 8 #密码最小长度
PASS_WARN_AGE 7 #新建用户的密码到期提前提醒天数
使用chage命令修改用户设置,例如:chage -m 0 -M 30 -E 2019-01-01 -W 7 <用户名>
将此用户的密码最长使用天数设为30,最短使用天数设为0,密码2019年1月1日过期,过期前7天里警告用户。
sudo的配置都记录在/etc/sudoers文件中
cat /etc/pam.d/su|grep pam_wheel.so查看配置文件,确认是否有相关限制。
vi/etc/pam.d/su
authrequiredpam_wheel.sogroup=any
这表明只有“any”组的成员可以使用su命令成为root用户。
chkconfig--list查看所有的服务及所有服务的开启状态
chkconfig--list[服务名]查看此服务的开启状态
独立服务启动办法
➢/etc/init.d/独立服务名start|stop|status|restart
➢service独立服务名start|stop|status|restart
开机自启动独立服务
(1)、chkconfig –level 2345独立服务名
onchkconfig –level 2345独立服务名off
例如:在2345运行级别上打开和关闭Apache服务。其中,2345表示运行级别。
(2)、修改/etc/rc.d/rc.local配置文件vim/etc/rc.d.rc.local打开文件后,在文件最后加入一行:/etc/rc.d/init.d/[服务名]start。 例如,修改此文件,使Apache服务开机自启动修改过后,每次重启都会打开/etc/rc.d/rc.local文件。
(3)、ntsysv命令——【红帽专有命令】在root用户下输入ntsysv命令会出现一个service图形界面,选定好后按Tab键切换至“ok”和“cancel”上。在想要打开的服务前面打“*”号,不启动的服务前面打空格。
注意:3种方式只能用其中一种,不能两种同时用,否则会报错,因为这样会几个同时占用一个端口。
1.4.2 基于xinted的服务使用前需要安装xinted服务,假如没有安装xinted服务,用chkconfig--list查看服务时,不会出现xinted服务。
安装xinted服务:yum-yinstallxinted然后用chkconfig--list查看服务时最后就有了xinted服务。
1.4.3 源码包服务源码包服务启动方式:
(1)、使用绝对路径启动:例如源码包安装的Apache启动与停止:/usr/local/apache2/bin/apacectlstart|stop
(2)、修改/etc/rc.d/rc.local文件
vi /etc/rc.d/rc.local在最后加入一行/usr/local/apache2/bin/apacectlstart
system V基本工具主要用chkconfig,sevice update-rc.d命令管理服务,在使用这些命令操作服务前,需要将相应服务脚本放入/etc/init.d目录中。
chkconfig基本命令如下:
◆添加服务chkconfig –add servicename
◆使服务自动启动chkconfig –level 2345 servicename on
◆使服务自动禁止chkconfig –level 2345 servicename off
◆删除服务chkconfig –del servicename
◆检查服务状态chkconfig servicename status
◆显示所有已启动的服务chkconfig –list
service基本命令如下:
◆启动某服务service servicename start
◆停止某服务service servicename stop
◆重启某服务service servicename restart
update-rc.d基本命令如下:
◆删除服务update-rc.d -f servicename remove
◆使服务在指定级别自动启动或禁止update-rc.d service start 启动序号2 3 4 5 .
stop 禁止序号0 1 6 .上述又等价于update-rc.d servicename defaults 启动序号禁止序号
systemd基本工具
systemd使用systemctl命令管理。使用systemctl命令需事先将xxx.service脚本放入/etc/systemd/system目录中
◆使服务自启动systemctl enable xxx.service
◆使服务自动禁止systemctl disable xxx.service
◆检查服务状态systemctl status xxx.service
◆启动某服务systemctl start xxx.service
◆停止某服务systemctl stop xxx.service
◆重启某服务systemctl restart xxx.service
关闭多余服务应用
这个文件就是/etc/inetd.conf,它制定了/usr/sbin/inetd将要监听的服务,你可能只需要其中的两个:telnet和ftp,其它的类如shell, login, exec, talk, ntalk, imap, pop-2, pop-3, finger, auth, etc. 除非你真的想用它,否则统统关闭。
你先用下面的命令显示没有被注释掉的服务:
grep -v "#" /etc/inetd.conf这个命令统计面前服务的总数:
ps -eaf|wc -l
需要注意的是以下三个服务漏洞很多,强烈建议关闭它们:S34yppasswdd(NIS服务器)、S35ypserv(NIS服务器)和S60nfs(NFS服务器)。我们可以运行#killall -HUP inetd来关闭不需要的服务。当然,你也可以运行#chattr +i /etc/inetd.conf。如果你想使inetd.conf文件具有不可更改属性,而只有root才能解开,敲以下命令#chattr -i /etc/inetd.conf。
察看哪些服务在运行:netstat -na –ip。
Redhat提供一个工具来帮助你关闭服务,输入/usr/sbin/setup,然后选择"system services",就可以定制系统启动时跑哪些服务。另外一个选择是chkconfig命。编辑“xinetd.conf”文件(vi/etc/xinetd.conf),禁止所有不需要的服务,如:ftp、telnet、shell、login、exec、talk、ntalk、imap、pop-2、pop-3、finger、auth,等等。
为了保证“xinetd.conf”文件的安全,可以用chattr命令把它设成不可改变。把文件设成不可改变的只要用下面的命令:[root@localhost]#chattr+i/etc/xinetd.conf。
一个有“i”属性的文件是不能被改动的:不能删除或重命名,不能创建这个文件的链接,不能往这个文件里写数据。只有系统管理员才能设置和清除这个属性。如果要改变xinetd.conf文件,必须先清除这个不允许改变的标志:[root@localhost]#chattr-i/etc/xinetd.conf。
chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息。
chkconfig[--add][--del][--list][系统服务]
chkconfig[--level<等级代号>][系统服务][on/off/reset]
--add 增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
--del 删除所指定的系统服务,不再由chkconfig指令管理,并同时在系统启动的叙述文件内删除相关数据。
--level<等级代号>指定读系统服务要在哪一个执行等级中开启或关毕。
⚫等级0表示:表示关机
⚫等级1表示:单用户模式
⚫等级2表示:无网络连接的多用户命令行模式
⚫等级3表示:有网络连接的多用户命令行模式
⚫等级4表示:不可用
⚫等级5表示:带图形界面的多用户模式
⚫等级6表示:重新启动
chkconfig–list[name]:显示所有运行级系统服务的运行状态信息(on或off)。如果指定了name,那么只显示指定的服务在不同运行级的状态。
◆chkconfig–addname:增加一项新的服务。chkconfig确保每个运行级有一项启动(S)或者杀死(K)入口。如有缺少,则会从缺省的init脚本自动建立。
◆chkconfig–delname:删除服务,并把相关符号连接从/etc/rc[0-6].d删除。
◆chkconfig[--levellevels]name:设置某一服务在指定的运行级是被启动,停止还是重置。
chkconfig--list#列出所有的系统服务
chkconfig --add httpd#增加httpd服务
chkconfig—del httpd#删除httpd服务
chkconfig—level2345httpdon#设置httpd在运行级别为2、3、4、5的情况下都是on(开启)的状态
◆chkconfig--list#列出系统所有的服务启动情况
◆chkconfig--listsshd#列出sshd服务设置情况
chkconfig--level35sshdon#设定sshd在等级3和5为开机运行服务,--level35表示操作只在等级3和5执行,on表示启动,off表示关闭如何增加一个服务:
1.服务脚本必须存放在/etc/ini.d/目录下;
2.chkconfig --add servicename在chkconfig工具服务列表中增加此服务,此时服务会被在/etc/rc.d/rcN.d中赋予K/S入口。
3.chkconfig –level 35 httpd on修改服务的默认启动等级。
查看服务关闭和开启状态
chkconfig --list一些可以关闭的服务:cups,iptables,ip6tables
chkconfig --list iptables
chkconfig iptablesoff查看是否关闭
chkconfig –list | grep iptables
service iptables stop现在关闭服务
◆关闭cups,先检查服务状态service cups status
chkconfig –list cups
chkconfig cups off
chkconfig –list cups
service cups status
service cups stop
service cups status