前言

此篇記錄了我在VPS Ubuntu主機上的安全設定,比如不回應Ping、鎖Root......等

1. 不回應Ping

首先先切換su:
sudo su
再來下命令讓主機不回應Ping
echo  1  > /proc/sys/net/ipv4/icmp_echo_ignore_all
如果要重新恢復的話:
echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all
如果要讓設定值永久生效的話,要編輯“/etc/sysctl.conf”,並加上:
net.ipv4.icmp_echo_ignore_all=1

2. 安裝Failtoban

Failtoban是提供監測登入失敗紀錄並將嘗試太多次的ip加進防火牆的服務

要安裝的話:

sudo apt-get install fail2ban

安裝完後就應該會自動執行了,要看服務狀態的話可以打:

sudo service fail2ban status

3. SSH 安全相關設定

在SSH方面,可以做的設定有:
  1. 啟用新的帳號並給予sudo權限,避免使用Root
  2. 關閉Root遠端登入
  3. 限定Public Key SSH登入, 並關閉密碼登入
1.的做法以下在root帳號底下依序輸入:
useradd <username> //新增使用者
passwd <username> //更改密碼
visudo
在可以看到root的底下加入
root    ALL=(ALL) ALL
<username> ALL=(ALL) ALL
這樣新的使用者就可以使用sudo命令了

2、3的做法請輸入:

vim /etc/ssh/sshd_config

並加入:

PermitRootLogin no
PasswordAuthentication no

4. 設定防火牆

建議先設定完所有要執行的服務如nginx, sftp, PPTP....等再來做這個

首先先看目前主機執行的所有服務和監聽的端口

netstat -taupen //列出所有監聽端口的服務

然後在ufw內加入允許的端口規則,比如說要開放80, 443port的話

sudo ufw allow 80
sudo ufw allow 443

設定完啟動ufw防火牆:

sudo ufw enable

參考來源: