顯示具有 linux相關 標籤的文章。 顯示所有文章
顯示具有 linux相關 標籤的文章。 顯示所有文章

2016年2月24日 星期三

以 mod_evasive 阻擋 D.o.S 攻擊

在 CentOS 下有裝 EPEL 的話,使用 yum 安裝即可
$ yum install mod_evasive
編輯mod_evasive設定檔 

$ vim /etc/httpd/conf.d/mod_evasive.conf

    # 用來儲存黑名單的檔案大小
    DOSHashTableSize    3097
    # 同一個網址在 DOSPageInterval 內被同一個IP存取幾次時,要阻擋此IP
    DOSPageCount        2
    # 同一個IP在 DOSSiteInterval 存取了網站幾次時,要阻擋此IP
    DOSSiteCount        50
    DOSPageInterval     1
    DOSSiteInterval     1
    # 被加入阻擋名單的IP要被擋多久,預設為10秒
    # 若被阻擋期間持續攻擊時,此時間會一直加上去,所以不用設很大
    DOSBlockingPeriod   10

    #用這個目錄來記錄log檔
    DOSLogDir           "/var/lock/mod_evasive"

    # 設定白名單
    DOSWhitelist   127.0.0.1
    DOSWhitelist   192.168.*.*


建立可供 apache 寫入log的 mod_evasive 目錄

$ mkdir /var/lock/mod_evasive; chown apache /var/lock/mod_evasive

重載 apache
$ service httpd reload

安裝DoS Deflate 減輕 DDoS攻擊

(D)DoS Deflate is a lightweight bash shell script designed to assist in the process of blocking a denial of service attack. It utilizes the command below to create a list of IP addresses connected to the server, along with their total number of connections.
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n


How To Install (D)DoS Deflate :-
wget http://www.inetbase.com/scripts/ddos/install.sh
chmod 0700 install.sh
./install.sh


How To UnInstall (D)DoS Deflate :-
wget http://www.inetbase.com/scripts/ddos/uninstall.ddos
chmod 0700 uninstall.ddos
./uninstall.ddos


How To Edit Configuration File:-
vi /usr/local/ddos/ddos.conf


How To Check The Number Of Connected Ips:-
sh /usr/local/ddos/ddos.sh



How To Restart DDos Deflate:-
sh /usr/local/ddos/ddos.sh -c

更新ClamAv病毒碼!

找到freshclam.conf,然後加入以下三行!
DNSDatabaseInfo current.cvd.clamav.net
DatabaseMirror clamav.stu.edu.tw
DatabaseMirror db.ac.clamav.net
DatabaseMirror database.clamav.net
使系統自動更新病毒碼
在crontab中加入
N * * * * /usr/local/bin/freshclam --quiet
其中的N值要在3~57中間,但不要用偶數值,因為很多工加台都設成偶數值了。

2016年1月28日 星期四

wget 直接下載google硬碟的檔案

首先將檔案設請網際網路上所有使用者均可以找到並檢視
接著用下列語法
wget --no-check-certificate https://googledrive.com/host/ID -O /本地端的檔案儲存路徑與檔名
其中的ID就是若你分享的連結為:https://drive.google.com/file/d/0B7wsIMxK5Td0dTNPdnNFtsdfwv/view?usp=sharing
即為0B7wsIMxK5Td0dTNPdnNFtsdfwv
換言之你的下載完整指令為wget --no-check-certificate https://googledrive.com/host/0B7wsIMxK5Td0dTNPdnNFtsdfwv -O /temp/test.tar.bz2

2016年1月22日 星期五

在 CentOS 6.x 安裝 ClamAV

在 CentOS 6.x 安裝 ClamAV

ClamAV 是 Linux 最常用來做防毒整合的套件之一,本文將介紹如何在 CentOS 6.x 中安裝 ClamAV。
新增 EPEL 套件來源
安裝 ClamAV 套件
更新 ClamAV 病毒定議檔
開機時啟用 ClamAV Daemon
測試掃掃檔案

2015年8月22日 星期六

ipkg安裝的服務程式之啟動指令位置與語法

執行
cd /opt/etc/init.d
會看到如:
S08samba   S10cron    S40sshd    S57rsyncd
而重新啟動特定務則是以:
/opt/etc/init.d/S40sshd restart
仿照這樣的架構下指令即可。

2012年12月31日 星期一

我的ibt安裝與自動啟動之設定法

這段引用自http://www.mobile01.com/topicdetail.php?f=347&t=1973717&p=11
開始吧...
設定ibt-1283的網路,使用固定IP(浮動IP的SMB.CONF我不會設)
將ibt-1283連上internet
使用PC telnet 到ibt-1283
用root登入
確認一下上網有沒有成功
ping一下tw.yahoo.com
看看回應是不是alive
/ # ping tw.yahoo.com
tw-tpe-fo.fyap.b.yahoo.com is alive!
接下來下面#中間的指令一行一行的執行(我用windows 7 內建的telnet,全部複製,貼到telnet去,等幾分鐘就好了)
#
mkdir /tmp/hdd/root/opt
mount -o bind /tmp/hdd/root/opt /opt
mkdir /tmp/hdd/root/package
mount -o bind /tmp/hdd/root/package /tmp/package
mkdir /opt/tmp/ipkg
cd /opt/tmp/
wget http://www.kovari.priv.hu/download/ipkg-cl.tgz
tar -xvf ipkg-cl.tgz
chmod +x /opt/tmp/ipkg-cl
rm ipkg-cl.tgz
wget http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable/uclibc-opt_0.9.28-13_mipsel.ipk
./ipkg-cl install uclibc-opt_0.9.28-13_mipsel.ipk
wget http://ipkg.nslu2-linux.org/feeds/optware/oleg/cross/stable/ipkg-opt_0.99.163-10_mipsel.ipk
./ipkg-cl install ipkg-opt_0.99.163-10_mipsel.ipk
rm *.ipk
cd /opt/bin
./ipkg update
./ipkg install samba
 ./ipkg install cron
./ipkg install openssh
 ./ipkg install  openssh-sftp-server
./ipkg install bftpd
./ipkg list_installed
#
ipkg list_installed看一下有沒有samba,bftpd
如果沒有,我也不知道,看你要放棄還是要重做一次
如果有那就只剩設定檔了
下載附檔bftpd.conf,smb.conf,rcS
用ultraEdit修改(不要轉成Dos格式)
修改smb.conf
interfaces = 172.16.1.16/16
hosts allow = 172.16.1.16/16
我的ip是172.16.1.16
如果你的ip是用192.168.X.X
interfaces = 192.168.X.X/24
hosts allow = 192.168.X.X/24
bftpd.conf應該可以直接用
如果你要修改請自行google
將bftpd.conf,smb.conf,rcS放到隨身碟的根目錄
接上ibt-1283後,copy到/opt/etc
在telnet上輸入以下指令(sdb1是USB隨身碟mount後的目錄,有可能是sda1,sdc1....可以輸入mount看一下)
cp /tmp/usbmounts/sdb1/bftpd.conf /opt/etc
cp /tmp/usbmounts/sdb1/smb.conf /opt/etc
cp /tmp/usbmounts/sdb1/rcS /usr/local/etc
rcS我不知道可不可以用copy的
如果不行請用vi(請google vi 的用法)
在telnet上輸入以下指令
vi /usr/local/etc/rcS
按一下鍵盤的A
將游標一直往下移到不能移
copy#間的文字貼過去
按一下鍵盤的ESC鍵
輸入:wq
再按一下enter
#
sleep 60
mount -o bind /tmp/hdd/root/opt /opt
sleep 2
/opt/sbin/smbd -s /opt/etc/smb.conf -D
/opt/sbin/bftpd -d -c /opt/etc/bftpd.conf
#
做完以上後
在telnet上輸入reboot
重啟後再telnet到ibt-1283
root登入後
等個一兩分鐘
輸入ps看看
598 root 2968 S /opt/sbin/smbd -s /opt/etc/smb.conf -D
601 root 376 S /opt/sbin/bftpd -d -c /opt/etc/bftpd.conf
610 root 2940 S /opt/sbin/smbd -s /opt/etc/smb.conf -D
614 root 468 S /bin/sh /usr/sbin/pppoe-connect
667 root 452 S /usr/sbin/pppd pty /usr/sbin/pppoe -p /var/run/pppoe.
669 root 416 S sh -c /usr/sbin/pppoe -p /var/run/pppoe.conf-pppoe.pi
671 nobody 128 S /usr/sbin/pppoe -p /var/run/pppoe.conf-pppoe.pid.pppo
876 root 992 R N /tmp/package/btpd
952 root 3696 S /opt/sbin/smbd -s /opt/etc/smb.conf -D
samba跟bftpd都有起來了
大功告成了
關於rcS的修改
#
sleep 60
#休息60秒,等硬碟mount上來
mount -o bind /tmp/hdd/root/opt /opt
#把/tmp/hdd/root/opt mount成 /opt
sleep 2
#休息2秒
/opt/sbin/smbd -s /opt/etc/smb.conf -D
#啟動SAMBA
/opt/sbin/bftpd -d -c /opt/etc/bftpd.conf
#啟動BFTPD
#撥接上網,改完後,好像不會自動上網(改前會嗎?)
底下是我自己的設定法:
我在ipkg安裝好之後還除了安裝如上述之內容外,還安裝的cron與openssh,我的目的是要讓ibt能自動將資料與我的nas資料同步,而ibt內定只能執行telnet所以只好自己安裝openssh,然而安裝好openssh後卻無法以root帳法登入(因為密碼怎麼打都不對!不知怎麼?),所以我只好改以試著讓ssh登入以不需密碼而直接以金鑰由nas登入的方法嘗試,然因為ibt內建root的家目錄已沒空間了所以用這編文章中qnap與一般linux主機間要ssh金鑰登入,不用密碼的方法!之建立金鑰的方法建也不成,所以我打開/etc/passwd這個檔案,改root的家目錄,把它改成如下
root::0:0:root:/tmp/hdd/root/homes/root:/bin/sh
admin::0:0:root:/tmp/hdd/root/homes/admin:/bin/sh
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:100:sync:/bin:/bin/sync
mail:x:8:8:mail:/var/spool/mail:/bin/sh
proxy:x:13:13:proxy:/bin:/bin/sh
www-data:x:0:0:www-data:/var/www:/bin/sh
backup:x:34:34:backup:/var/backups:/bin/sh
operator:x:37:37:Operator:/var:/bin/sh
sshd:x:103:99:Operator:/var:/bin/sh
nobody::99:99:nobody:/:/bin/sh
default::1000:1000:Default non-root user:/:/bin/sh
總算將金鑰建起,將其放到nas的authorized_keys裡,然而因為nas的內定值反而始得即使我建立好ibt的金鑰並將其放入nas的authorized_keys檔裡,結果怎麼試都還是要我輪入密碼,於是我反向操作,將nas建好的金鑰置入ibt的authorized_keys裡(其中ibt裡的sshd_config檔要更改一些設定如下:
RSAAuthentication yes
PubkeyAuthentication yes
果然可以了,root ssh登入ibt不需要密碼!
接著我要將ibt的sshd自動在開機時執行,於是我在/opt/sbin裡建立一個sshd.sh檔並將其權限改為755,
chmod 755 sshd.sh
而後
vi sshd.sh
其內容如下:
/opt/etc/init.d/S40sshd start
而打開/usr/local/etc/rcS這個檔案,在裡面增加一行使其大致如下:
sleep 60
mount -o bind /tmp/hdd/root/opt /opt
sleep 2
/opt/sbin/smbd -s /opt/etc/smb.conf -D
/opt/sbin/bftpd -d -c /opt/etc/bftpd.conf
/opt/sbin/sshd -f /opt/etc/openssh/sshd_config
/opt/sbin/sshd.sh
/opt/bin/transmission-daemon -g /tmp/hdd/root/transmission
如此ibt一開機,就會自動執行sshd,而我就可以在nas的crontab檔設定rsync指令及其參數讓nas定時自動與ibt的資料同步!

2012年1月6日 星期五

linux 如何關掉SELINUX?

關掉SELINUX,在/etc/selinux/config 設定檔如下;
/etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#       enforcing - SELinux security policy is enforced.
#       permissive - SELinux prints warnings instead of enforcing.
#       disabled - SELinux is fully disabled.
SELINUX=Disabled  #這樣就把SELINUX伺服器關掉了,請重新開機系統;
# SELINUXTYPE= type of policy in use. Possible values are:
#       targeted - Only targeted network daemons are protected.
#       strict - Full SELinux protection.
SELINUXTYPE=targeted
如果只要關掉selinux而不想重新開機,可以直接下如下指令:setenforce 0

2012年1月4日 星期三

centos 安裝ffmpeg 及 mplayer mencoder

Installing FFmpeg, MPlayer and MEncoder on CPanel and Centos 6 on Hyper-V
Posted in Linux Server, Virtual Machine Manager | 5 Comments | 1,108 views | 03/10/2011 13:52
You need FFmpeg, MPlayer and MEncoder for video processing. I’ll show you how to install and configure it on Hyper-V.
I’ve already posted couple of articles about CentOS 6 installation on Hyper-V, so I won’t mention about that again.
You can see CentOS 6 installation on Hyper-V at the following posts:
So I assume you have a CentOS 6 with Hyper-V LIS v3.1. So lets continue with our installation.
First, we need to install RPMforge repository on CentOS 6.
1. Install the DAG GPG key.
rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt


2. Download RPMforge-release package.
cd /home
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.i686.rpm (if your server x86)
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

3. Verify the RPMforge-release package you have downloaded.
rpm -K rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

4. Install the RPMforge-release package.
rpm -i rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm

5. Now we can install FFmpeg, MPlayer and MEncoder.
yum install ffmpeg ffmpeg-devel mplayer mencoder

6. You may get this error when you try to install components.
Requires: perl-SGMLSpm >= 1.03ii

7. Download perl-SGMLSpm package to CentOS.
wget http://ftp.twaren.net/Linux/Scientific/41/i386/SL/RPMS/perl-SGMLSpm-1.03ii-14.noarch.rpm

8. perl-SGMLSpm may require OpenJade.

9. Let’s install openjade on CentOS.
yum install openjade

10. Try re-install perl-SGMLSpm.
rpm -ivh perl-SGMLSpm-1.03ii-14.noarch.rpm

11. After perl-SGMLSpm installation, you can continue to install FFmpeg, MPlayer and MEncoder.
yum install ffmpeg ffmpeg-devel mplayer mencoder

12. Now, you can test your ffmpeg installation.
ffmpeg -v

If you see same results on your server, it means your ffmpeg is ready.

2012年1月3日 星期二

linux 開機執行層級之設定

打開這個檔案
/etc/inittab
將其中的
id:3:initdefault:
其中的3改為你要的層級即可

2011年3月16日 星期三

我透過windows client端,透過事件控制,windows自動發布一個指令連上B linux伺服主機,並利用B linux伺服主機關閉A linux伺服主機的方法

由於有些ups不斷電系統支援斷電時,自動關閉伺服器的功能,我手邊就有這樣一個ups,然而它雖說有支援linux,實際上我雖將它的控制程式安裝起來了,也捉的到該ups卻真的遇到停電時,它卻無法真的做到自動關機與重開機。

所以我現在只好做另一種嘗試,那就是在該ups上接兩台pc,一台是A linux server,一台是windows client,然後透過windows client端,當斷電事件發生時,windows client會自動發布一個指令連上B linux伺服主機(windows client能直接透過ssh連線),並利用B linux伺服主機關閉A linux伺服主機(與B linux伺服主機同一個網段裡,但被router限制,所以雖與windows client接在同一個ups上,卻不能被windows client直接透過ssh連線)。

為了達到這個目的,我做了如下動作:

windows client安裝ups for windows的控製程式,並設定當斷電時,自動執行這個程式指令:

plink -P 端口 用戶帳號@B主機IP –pw 密碼 sh halt204

2010年10月22日 星期五

我中文化gallery2語言檔的方法!

http://www.zzbaike.com/wiki/Gallery:%E6%9C%AC%E5%9C%B0%E5%8C%96的方法去做,最後會卡在make install PO=zh_TW,而網路上找了半天,一直找不到我所遇到的問題,明明檔案的中文化就是已經做好,為何就是無法中文化?最後終於找到問題,原來是檔案擺的位置。

2010年10月16日 星期六

rsync透過ssh備份指定連線port參數

例如若port為8023

Rsync與ssh合作配備份主機是很簡單的,寫一個Shell Script或是直接寫到crontab上
非常簡單,但是若我們使用ssh加密與非標準的22Port所以要使用--rsh或-e這參數來使用ssh
--rsh='ssh -p 8083'或是 -e 'ssh -p 8083' ,注意要使用' '

ssh連線指定port的語法

若port為9000

ssh -p 9000 ID@IP

使用public/private key讓putty(ssh)自動登錄(以及linux上使用金鑰做ssh自動登陸)

資料來源:http://hi.baidu.com/felixwang/blog/item/7ce2cf1b2fccf7fdaf51338b.html

方法一:使用puttygen.exe
第一步:生成密匙
運行puttygen.exe,選擇需要的密匙類型和長度,使用默認的SSH2(RSA),長度設置為1024就可以了。
passphrase可以為空,免得登錄時還是要輸入一次密碼。
點擊Save private key 按鈕保存公匙和私匙,例如key.ppk,public key不用保存,以後使用Puttygen.exe Load功能就可以顯示public key。

ssh_confing的一些小設定

使ssh登入僅接受金鑰登入而不接受root密碼輸入的sshd_config之設定

PermitRootLogin no => yes   #若要使root無法登入則保留為no

PasswordAuthentication yes => no

要使特定使用者才可以使用su指令

2010年9月1日 星期三

gallery2配合apach2虛擬主機時的網頁路徑問題:

ssh登入進到gallery2的目錄裏找到config.php檔,然後以文字編輯軟體更改最後一行的網址
$gallery->setConfig('baseUri', 'http://www.tp.edu.tw/main.php');

改為你新增的虛擬主機網址的gallery2路徑即可,例如,若你的gallery2虛擬主機的網址為http://gallery2.dyndns.com則在原來未設虛擬主機時的網址http://www.tp.edu.tw/改為http://gallery2.dyndns.com這樣即可。

2010年8月23日 星期一

joomla 1.0升級成1.5版,mysql資料庫latin1轉utf8問題

相信 MySQL 的編碼對很多人來說 … 一直是個相當令人頭痛的問題 … 底下要記錄的是如何把資料庫的資料, 由 latin1 轉成 utf8..
一般 .. MySQL 裝起來後(用 rpm 安裝) ,系統的預設編碼是 latin1.
而很多人在安裝一些網頁的系統時,如 wordpress、LifeType、phpBB … 等等,都會選擇 utf8 。
這時 … 系統一樣可以正常運作 … 只是當用 phpmyadmin 進入管理資料庫時,就會發現 .. 怎麼中文字的部分都變成了歪七扭八 ..
或者一些鬼畫符的文字。如:凡事先從工作講起
image

2010年8月19日 星期四

自行備份的centos5 for web重新還原系統時的注意事項

底下的作法記錄下來是為了自己他日有需要還原時,照作即可,以免過程作錯而又要再次還原而浪費時間。