Linux基本安全设置
Table of Contents
ℹ️ 来源:Sol Love
以下命令用于ubuntu主机,其他linux命令可能不相同
更改root密码
passwd
将root密码更改为长而且复杂的密码,不需要记住他,只需要存在在安全的地方。只有无法通过ssh登录或丢失sodu密码时才需要此密码
安装Fail2ban
apt-get install fail2ban
创建新用户
useradd deploy
mkdir /home/deploy
mkdir /home/deploy/.ssh
chmod 700 /home/deploy/.ssh
使用公钥认证
vim /home/deploy/.ssh/authorized_keys
添加本地机器的公钥id_rsa.pub的内容到此文件中
chmod 400 /home/deploy/.ssh/authorized_keys
chown deploy:deploy /home/deploy -R
测试新用户启动
为新用户设置密码 (设置复杂密码,是需要sudo的权限的密码)
passwd deploy
设置sudo权限 (visudo的文件是/etc/sudoers,但是不要直接修改此文件,修改请使用visudo命令
)
visudo
root ALL=(ALL) ALL
deploy ALL=(ALL) ALL
锁定SSH
配置ssh以防止密码和root登录并将ssh锁定到特定IP
vim /etc/ssh/sshd_config
PermitRootLogin no
PasswordAuthentication no
AllowUsers deploy@(your-ip) deploy@(another-ip-if-any)
重新启动ssh
service ssh restart
设置防火墙
ufw allow from {your-ip} to any port 22
ufw allow 80
ufw allow 443
ufw enable
启动安全更新
apt-get install unattended-upgrades
vim /etc/apt/apt.conf.d/10periodic
将文件更新成以下
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Download-Upgradeable-Packages "1";
APT::Periodic::AutocleanInterval "7";
APT::Periodic::Unattended-Upgrade "1";
另一个需要更改的问题
vim /etc/apt/apt.conf.d/50unattended-upgrades
Unattended-Upgrade::Allowed-Origins {
"Ubuntu lucid-security";
// "Ubuntu lucid-updates";
};
安装Logwatch监视
apt-get install logwatch
vim /etc/cron.daily/00logwatch
/usr/sbin/logwatch --output mail --mailto test@gmail.com --detail high