顯示具有 server 標籤的文章。 顯示所有文章
顯示具有 server 標籤的文章。 顯示所有文章

2011年12月8日 星期四

檢查系統空間是否小於10%的script

有朋友想要一個script可以幫忙檢測檔案系統剩餘容量是否小於10%
如果小於10% 就發信告知
於是我幫忙寫了一個小程式讓他可以用
只要利用crotab排程來檢查就OK了
DISK和PERCENT的值可以依據個人的需求做改變


#!/bin/bash
##################################
# Author Max                     #
# Date 2011/12/08                #
# Ver. 1.0                       #
##################################
DISK=sda1
PERCENT=10
SIZE=`df -h|grep $DISK|awk '{print $5}'|cut -d '%' -f1`

if [ $((SIZE)) -lt $PERCENT ];then
echo "DISK FULL,CLEAR NOW!!!! / LESS THEN $PERCENT %" | /usr/bin/mail -s "DISK SPACE LESS THEN $PERCENT %" XXX@gmail.com
fi

2011年9月23日 星期五

建立一個SSL tunnel當proxy SOCKS

在某些情況你可能需要一個加密的方式來瀏覽網頁,例如大陸的萬里長城,如果你在別的地方有SSH Server,你可以透過SSH Server來建立一個臨時的SSL Tunnel

2011年9月6日 星期二

如何利用script自動擋住惡意ip (block ip)

如果你是用ubuntu當server,iptables的用法與redhat的iptables有些些的不同
你可以下以下的指令先將目前iptables的rule給儲存在/etc/iptables.rule底下

2011年8月4日 星期四

讓任何人可以上傳任何檔案到你的Dropbox

其實方法蠻多種的,最快速的方法是透過jotform,作法請參考這篇 軟體玩家:讓別人也能把檔案輕鬆上傳到你的Dropbox空間!
jotform的方法其實非常的棒,也非常快速,不過缺點就是不支援中文,不管是中文檔名還是中文的描述,都有問題,中文檔名不會被傳送,而中文描述則會變成亂碼,於是我又找到另外一種方法,不過這個方法麻煩多了,你得要有SERVER才能用,因為他是PHP的網頁型式,優點當然就是完全可以自訂,這個網頁程式碼你可以隨便改成你喜歡的樣子,而且檔案上傳也完全沒有中文的問題,你可以到這裡下載程式碼,然後解縮到你的web server上,或者你也可以下指令:

2010年12月15日 星期三

ubuntu中如何啟動或關閉服務

在redhat 可以使用chkconfig來檢查開機時會啟動的service
在ubuntu中也有sysv-rc-conf可以來代替
但是ubuntu是upstart的開機方式畢竟跟sysv的開機方式不同
用sysv-rc-conf感覺畢竟還是怪怪的
於是可以改用rcconf這個指令來管理service
sudo apt-get install rcconf
sudo rcconf

除了這種文字圖形介面的管理工具之外
也可以用update-rc.d這個指令來管理
這個指令在ubuntu中本來就有的
可以不用另外安裝

移除服務可以用下面的指令
sudo update-rc.d ssh remove
若要將服務再加回去則用下面的指令
sudo update-rc.d ssh defaults

在redhat中用service的指令來啟動或關閉服務
而在ubuntu中可以用下列兩個方式來作(ubuntu 也支援用service的方式來啟動或關閉服務)
sudo /etc/init.d/ssh stop
sudo invoke-rc.d ssh stop

雖然說結果都一樣
不過多學一點其他的方法也是不錯的

2010年10月14日 星期四

kubuntu上如何簡單的與windows分享檔案

sudo apt-get install samba kdenetwork-filesharing nfs-kernel-server
打開檔案管理程式
對著要分享的資料夾點選右鍵--->屬性
點選共享
勾選在區域網路中共享此資料夾
勾選用samba共享
這樣就不用設定煩死人的samba server了
這個kdenetwork-filesharing真是好用極了!!

2010年8月4日 星期三

在Ubuntu 上安裝lighttpd + phpmyadmin

安裝 lighttpd
         apt-get install lighttpd

安裝 php5-fastcgi
         apt-get install php5-cgi php5-mysql libfcgi-dev

將lighttpd 啟動 mod_fastcgi
         /usr/sbin/lighty-enable-mod fastcgi
         /etc/init.d/lighttpd restart

安裝 phpmyadmin
         apt-get install phpmyadmin

將 /etc/phpmyadmin/lighttpd.conf裡面的內容複製到 /etc/lighttpd/lighttpd.conf 裡面

設定snmptrap + snmptt以及Client的設定

1. 啟動snmptrapd:
          * 在/etc/hosts.allow中加入准許接收的網段
            snmptrapd: 192.168.0.0/255.255.0.0 : Allow
          * 建立/etc/snmp/snmptrapd.conf
            disableAuthorization yes
            traphandle default /usr/sbin/snmptthandler
          
            disableAuthorization不做認證的動作
            traphandle告知traphandle的所在位置
            default則表示接受全部的OID而不是只接受特定的OID
          * 修改/etc/init.d/snmptrapd中的OPTIONS
            OPTIONS="-On -C -c /etc/snmp/snmptrapd.conf -Ls2 -p /var/run/snmptrapd.pid"
            -On意思是指以數字形式秀出OID
            -C是不讀其他的設定檔只讀-c後面指定的設定檔
            -c後面指定要讀入的設定檔
            -Ls2使指用syslog記錄LOG並且記錄在local2的facility
            -p將trap daemon的process ID記錄在檔案中
   2. 安裝snmptt
          * 安裝 Config::IniFiles perl module
            安裝後才能讓perl正常讀取ini檔
            wget http://search.cpan.org/CPAN/authors/id/W/WA/WADG/Config-IniFiles-2.38.tar.gz
            解壓縮
            perl Makefile.pl
            make
            make install
      * wget http://downloads.sourceforge.net/snmptt/snmptt_1.2.tgz?modtime=1181989825&big_mirror=0
        解壓縮snmptt
          * cp snmptt snmptthandler snmpttconvert snmpttconvertmib ./contrib/sendemail.sh 至/usr/sbin
          * cp snmptt.ini至/etc/snmp/
          * cp snmptt-init.d /etc/init.d/snmpttd
            chmod 755 /etc/init.d/snmpttd
            chmod 755 /usr/sbin/sendemail.sh
            chkconfig --level 345 snmptrapd on
            chkconfig --level 345 snmpttd on
          * useradd snmptt
            groupadd snmptt
          * mkdir /var/log/snmptt /var/spool/snmptt
            chown snmptt /var/log/snmptt
            chown snmptt /var/spool/snmptt
          * 修改snmptt.ini
            mode = daemon
            daemon_uid = snmptt
            spool_directory = /var/spool/snmptt/
            log_enable = 1
            log_file = /var/log/snmptt/snmptt.log
            unknown_trap_log_enable = 1
            unknown_trap_log_file = /var/log/snmptt/unknown.log

            snmptt_conf_files = <
            /etc/snmp/snmptt.conf
            END
            將想要讀入的conf檔寫在這裡
            snmpttd啟動時便會把這些檔讀入
            這些conf檔就是要用來比對OID以及所要進行的動作
          
          * cp examples/snmptt.conf.generic /etc/snmp/snmptt.conf
                o 基本上snmptt.conf裡面中的coldStart,warmStart,linkdown,linkup,authenticationFailure就已

達到基本Router所要的網管功能.
                o 如果需要如當linkdown時, 發mail或簡訊時, 可以修改如下:
                  EXEC /usr/sbin/sendemail.sh "FORMAT NIC switchover to slot $3 from slot $5"
   3. 修改/etc/syslog.conf
      local0.*                                                /var/log/snmptt.log
      local2.*                                                /var/log/snmptrapd.log
   4. 啟動service
      service syslog restart (如果有裝syslog-ng 則重啟syslog-ng)
      service snmptrapd start
      service snmpttd start
   5. Trouble Shooting:
          * check /var/log/snmptrapd.log
   6. check /var/log/snmptt/snmptt.log
      check /var/log/snmptt/unknown.log

snmptt有更很棒的好處, 就是你不用自己一個個去study每個Device的MIB, 再轉成有用的rule, 你可以直接用

snmpttconvertmib.

   1. snmpttconvertmib --in=/usr/share/snmp/mibs/XXX.txt --out=/etc/snmp/XXX.conf
   2. vi /etc/snmp/snmptt.ini
      snmptt_conf_files = <
      /etc/snmp/snmptt.conf
      /etc/snmp/XXX.conf
      END
   3. service snmpttd reload

就可以開始接收XXX的Trap了.

不時看看/var/log/snmptt/unknown.log, 再把無法translate的mib給加入. 以Cisco為例, 有幾個好用tool:

   1. http://www.cisco.com/public/sw-center/netmgmt/cmtk/mibs.shtml
   2. http://tools.cisco.com/Support/SNMP/do/BrowseMIB.do?local=en&step=2
   3. http://tools.cisco.com/Support/SNMP/do/MIBSupport.do?local=en&step=3
   4. 不過最好用的是這個http://tools.cisco.com/Support/SNMP/do/BrowseOID.do?local=en
      把在unkown.log中的cisco mib, 截取一部份貼入, 就會告訴你要load那個mib, 再用snmpttconvertmib加入至
snmp_cisco.conf.

===============================================
SNMP Client 的設定
只要在/etc/snmp/snmpd.conf的最後加上下面兩行即可
trapsink 192.168.187.133 public
trap2sink 192.168.187.133 public
中間的IP是snmptrapd主機的IP
改完後重新啟動snmp
service snmpd restart

學生用伺服器建置流程(CentOS 4.4版)

學生用伺服器建置流程(CentOS 4.4版)

算是不錯的文章

Linux RunLevel & chkconfig


Runlevel

代表意義
0
關機
1
單人模式(Single User Mode)
2
多人使用模式,無NFS功能(網路是啟動的)
3
完整多人使用模式
4
unused
5
完整多人使用模式,xdm啟動(圖形Login畫面)
6
重新開機(Reboot)


chkconfig  可以用來控制什麼SERVICE要跑在哪一種RunLevel

SELinux 好文

鳥哥網站上的文章[pdf]