這次OS是用 Ubuntu 6.06 LTS Server版本,而不再是用以前熟悉的 Redhat / Fedora Core / CentOS 系列,在架設上會有一些困擾,因為指令以及檔案放置都不太一樣,加上太久沒接觸這方面,安裝起來的確花一些工夫。
二話不說,這次環境是 250G HD,硬碟分割上分別為
/
/usr
/home
swap
分成四個區塊,不過事後發現應該要多一塊 /tmp 部份,這樣可以避免掉一些問題。
另外 Ubuntu 預設是沒有設定 Root 密碼,應該是說都是用 sudo 處理,不過強烈建議還是要設定 Root 密碼,不管是安全性或者未來修復工作,都是會用到 Root 密碼。
sudo passwd root
由於主機是要上線機器,一開始安裝就是最基本的環境,能不安裝的套件都不安裝。另外有些設定另外處理。
- net.core.somaxconn = 8192
- net.ipv4.tcp_rfc1337 = 1
- cron
- hdparm
- klogd
- makedev
- rc.local
- ssh
- sysklogd
/etc/network/interfaces
auto eth0
iface eth0 inet static
address 192.168.30.80
netmask 255.255.255.0
gateway 192.168.30.254
設定 iptables
#!/bin/bash
iptables -F
iptables -P INPUT DROP
iptables -A INPUT -p icmp --icmp-type 8 -j DROP
iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT
for port in 22 80
do
iptables -A INPUT -i eth0 -p tcp --dport $port -j ACCEPT
done
iptables -A INPUT -i eth0 -m state --state RELATED,RELATED -j ACCEPT
iptables -A INPUT -i eth0 -m state --state NEW,INVALID -j DROP
iptables -A INPUT -i eth0 -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP
iptables -A INPUT -i eth0 -p tcp --tcp-flags ALL ALL -j DROP
iptables -A INPUT -i eth0 -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROP
iptables -A INPUT -i eth0 -p tcp --tcp-flags ALL NONE -j DROP
iptables -A INPUT -i eth0 -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
iptables -A INPUT -i eth0 -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
iptables -A INPUT -i lo -j ACCEPT
設定 sshd_server
/etc/ssh/sshd_config
PermitRootLogin no
未來還有幾樣要陸續處理
- 設定 fstab 讓不該有的權限都拿掉
- 設定 hosts.allow / hosts.deny
- 設定 quota
- 設定 grub 密碼
- 移除 grub 上救援模式
沒有留言:
張貼留言