星期日, 7月 16, 2006

修電腦

最近諸事不順鬧機瘟,一些機器或者3C設備都出問題,而家裡的桌上型電腦,因為顯示卡壞掉關係,所以一直沒用,不過這樣也浪費19吋寬螢幕。

下午提早離開 Hit 2006 ,跑去燦坤買顯示卡和鍵盤,不過現在要找簡單又便宜的顯示卡實在不容易,最後入手一張一千五左右的顯示卡,而鍵盤是買沒有右邊數字鍵的鍵盤。

回家把新的顯示卡裝上去,因為新的顯示卡可以接DVI,所以改用DVI接螢幕,這樣桌上型電腦又活起來了。接下來就是我的 ssh.tw 主機還在想怎麼處理,因為還還沒有找到可以擺放主機的地方。

星期五, 7月 14, 2006

架設 Linux Server (1)

以往架設 Linux Server 是非常簡單,因為有 rpm 以及 deb 這方面套件可以幫忙解決相依性問題,所以架設 APM (Apache / PHP / Mysql) 都是幾分鐘就可以完成,不過現在工作卻是要用手動編譯方式安裝,剛開始不是很方便,但是後來覺得可以慢慢恢復對 Linux 重新認識,也是不錯的開始。

這次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 上救援模式
待續...