Home >Operation and Maintenance >Linux Operation and Maintenance >Introduction to Linux system hardening methods

Introduction to Linux system hardening methods

巴扎黑
巴扎黑Original
2017-08-18 13:36:411918browse

This article mainly introduces the relevant information summarized by the three methods of strengthening the Linux system. Through this article, I hope you can master this part of the content. Friends in need can refer to

Strengthening the Linux system Summary of three methods

Linux command line history reinforcement

Record the commands executed by the user on the command line by configuring system environment variables.


vim /etc/profile.d/system_monitor.sh
# 添加下面代码
export TMOUT=600
readonly TMOUT
#history
USER_IP=`who -u am i 2>/dev/null | awk '{print $NF}' | sed -e 's/[()]//g'`
HISTDIR=/usr/share/.history
if [ -z $USER_IP ]; then
USER_IP=`hostname`
fi
if [ ! -d $HISTDIR ]; then
mkdir -p $HISTDIR
chmod 777 $HISTDIR
fi
if [ ! -d $HISTDIR/${LOGNAME} ]; then
mkdir -p $HISTDIR/${LOGNAME}
chmod 300 $HISTDIR/${LOGNAME}
fi
export HISTSIZE=4000
DT=`date +%Y%m%d_%H%M%S`
export HISTFILE="$HISTDIR/${LOGNAME}/${USER_IP}.history.$DT"
export HISTTIMEFORMAT="[%Y.%m.%d %H:%M:%S]"
chmod 600 $HISTFILE/${LOGNAME}/*.history* 2>/dev/null

Reload environment variables


source /etc/profile.d/system_monitor.sh

Effect: Each account’s login IP and running commands will be The records in this directory are as follows:


[root@localhost ~]# ll /usr/share/.history/root/
total 8
-rw-------. 1 root root 236 Apr 23 21:49 1.180.212.137.history.20170423_214918
-rw-------. 1 root root 564 Apr 23 21:54 1.180.212.137.history.20170423_214957

crond calls the black and white list

Cron has its own built-in feature, which allows Define who can and cannot run tasks. This is controlled through two files /etc/cron.allow and /etc/cron.deny. To lock users who use Cron, you can simply write their names in corn.deny, and to allow users to run cron, add their names to cron.allow. If you want to ban all users, only allow root user. As follows:


# echo 'root' >> /etc/cron.allow
# echo 'ALL' >> /etc/cron.deny

ssh service prohibits root login

1. Do not use the default port, modify the method;


Port 3714

2. Do not use the first version of the protocol;


Protocol 2

3. Limit the users who can log in;


AllowUsers user1 user2 #仅允许user1和user2用户登录

4. Set the idle session timeout;

5. Use the firewall to set the ssh remote access policy; only allow access from hosts in the specified network;

6. Only listen on the specified IP address;

ListenAddress

7. When based on password authentication, use a strong password policy;


# 使用mkpasswd命令生成密码;
mkpasswd -l 15 -s 3 -d 3 -C 3

8. Finally, use key-based authentication

9. Prohibit the use of empty passwords, enabled by default;


PermitEmptyPasswords no:是否允许空密码登录;

10. Prohibit management Log in directly;


PermitRootLogin yes # 是否允许管理员直接登录;安全起见,建议为no;

11. Limit ssh access frequency and concurrent online;

12.Do log analysis;

The above is the detailed content of Introduction to Linux system hardening methods. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn