[馬上學馬上記]Linux 指令 不指定

Category : linux | Post on 2010/09/16 10:40 by hero | Comments:0
iptables -A INPUT -p tcp -m tcp --dport 10000 -j ACCEPT

Iptable開PORT指令

iptables -L

Iptable查詢

Centos Bind vi /var/named/chroot/var/named/named.domain

Bind9-提供 Domain Name 與 IP 對應的服務 不指定

Category : linux | Post on 2010/09/11 10:23 by hero | Comments:0
Bind9-提供 Domain Name 與 IP 對應的服務
內容

   1. 前言
   2. 實作環境
   3. 安裝及設定
         1. 步驟1.本機反解範例檔案 (localhost.rev)
         2. 步驟2.修改 DNS 設定檔 (named.conf)
               1. 步驟2-1.安全性設定 - 隱藏 BIND DNS 版本
               2. 步驟2-2.安全性設定 - 存取控制清單 ACLs
               3. 步驟2-3.限制來源查詢要求 (allow-query)
               4. 步驟2-4.限制來源查詢要求 (allow-recursion)
               5. 步驟2-5.限制特定 Zone 查詢要求 (allow-query)
               6. 步驟2-6.安全性設定 - Zone Transfer 限制
               7. 步驟2-7.進階性設定 - 代詢伺服器機制
         3. 步驟3.建立 named.weithenn.for 檔案 (Forward)
         4. 步驟4.修改服務設定檔 (rc.conf)
         5. 步驟5.修改本機 DNS 查詢設定檔 (resolv.conf)
         6. 步驟6.啟動 DNS 服務
   4. 安全性設定測試
         1. 測試1.隱藏 BIND DNS 版本
         2. 測試2.Zone Transfer 限制
   5. 參考
   6. Me FAQ

前言

DNS,Domain Name Service 主要目地為解決 Domain Name 與 IP Address 之間相互的對應問題,在網路世界間中的溝通其實就是使用 IP Address 來溝通 (就像是人類使用的身份證),但一連串的數字這樣對人類來說太過於麻煩,因此便出現 Domain Name Service 服務來將 IP Address 轉換成人類可方便閱讀的 Domain Name,簡單來說就是例如: 您輸入的 Yahoo 網址 http://tw.yahoo.com 轉成 IP Address 以便連結到 Yahoo 的網頁伺服器,關於網域名稱服務可參考站內文章 DNS 伺服器的原理與運作流程

FreeBSD 5.3-RELEASE 起內建 Bind9 不但安全性相對提高,並也把 Chroot 功能給加了進來,比較不習慣的可能就是設定檔的路徑

/etc/namedb/               //原本設定檔實際路徑 (系統自動幫您連結至 Chroot 功能新路徑 /var 下)
/var/named/etc/namedb/     //Bind9 設定檔的實際路徑

實作環境

    * FreeBSD 6.x-RELEASE
          o FreeBSD 6.1、6.2-RELEASE
    * FreeBSD 5.x-RELEASE
          o FreeBSD 5.3、5.4-RELEASE
    * BIND 9.3.x
          o BIND 9.3.0、9.3.3

安裝及設定
步驟1.本機反解範例檔案 (localhost.rev)

執行下列指令產生本機反解範例檔案 localhost.rev,產生的範例檔案 (localhost.rev 及 localhost-v6.rev) 將產生於 /var/named/etc/namedb/master 目錄下。

#cd /var/named/etc/namedb/                          //切換路徑                
#sh make-localhost                                  //產生範例檔

步驟2.修改 DNS 設定檔 (named.conf)

修改 DNS 設定檔 named.conf

#vi /var/named/etc/namedb/named.conf                //編輯 named.conf 內容如下

步驟2-1.安全性設定 - 隱藏 BIND DNS 版本

為何要隱藏您的 BIND DNS 版本呢? 原因在於有心人士可以透過先瞭解您 DNS 主機所運作的 BIND 版本來尋找相關漏洞攻擊程式,因此在 ISC BIND 建議下可透過設定來隱藏 BIND 系統版本。

options {
        directory       "/etc/namedb";
        pid-file        "/var/run/named/pid";
        dump-file       "/var/dump/named_dump.db";   //將資料庫內容 Dump 出來路徑 (執行rndc dumpdb)
        statistics-file "/var/stats/named.stats";    //統計資訊路徑 (執行rndc stats)
        version         "None of your business";     //當別人查詢您的 BIND 版本時顯示的文字內容

步驟2-2.安全性設定 - 存取控制清單 ACLs

我們可以利用設定存取控制清單 (ACL,Access Control List,) 功能來限制外來對 Domain 的查詢要求並且配合 Allow-Query 參數來限制所有或特定 Zone 的查詢要求。

acl "dns1.weithenn.org" { 61.60.59.58; };
acl "dns2.weithenn.org" { 61.60.59.57; };

步驟2-3.限制來源查詢要求 (allow-query)

DNS Server 僅回應列表中 IP Address 的查詢要求,這裡的 allow-query 限制為針對 DNS Server

options {
          allow-query { 168.95.192.1/32; 168.95.1.1/32; dns1.weithenn.org; dns2.weithenn.org; };
};

步驟2-4.限制來源查詢要求 (allow-recursion)

允許哪些來源可以使用 DNS Server 進行遞迴查詢動作。簡單說就是透過這台 DNS 來查詢任何資料,包含不是該 DNS 主機負責的 Zone 也代為查詢,您應該不想讓別人用您的 DNS Server 去探查別人的 DNS 主機資訊吧?

options {
          allow-recursion { 127.0.0.1/32; 61.60.59.58/32; };
};

步驟2-5.限制特定 Zone 查詢要求 (allow-query)

DNS Server 僅回應列表中 IP Address 的查詢要求,這裡的 allow-query 限制為針對區域 (Zone),當您設定限制所有或特定 Zone 的查詢要求時,其特定 Zone 設定優先權將大為限制所有查詢要求。

zone "weithenn.org" {
        type master;
        file "master/named.weithenn.for";
        allow-query { dns2.weithenn.org; };        //僅回應這個 IP 的查詢要求
};

步驟2-6.安全性設定 - Zone Transfer 限制

DNS 架構下常需透過更新 Zone File 動作來更新 DNS Master 及 DNS Slave 間 Zone File 的資料,在信任網域下將 Zone File 資料列出是 OK 的,但若是能由外界進行查詢您 Zone 資料時將會演變為具有危險的行為,想想若有人知道您 Zone File 設定都一清二楚那他即可針對特定主機進行攻擊行為,因此限制您的 Zone Transfer 將更顯重要。比較常被忘記的部份為會記得設定 DNS Master 其 allow-transfer 對象為 DNS Slave,但別忘記了 DNS Slave 必須設定 allow-transfer { "none"; }; 避免您的 Zone File 從 DNS Slave 端被傳送出去這是比較容易被忘記的設定。

zone "weithenn.org" {
        type master;
        file "master/named.weithenn.for";
        allow-transfer { 61.60.59.57; };           //僅此 IP 能 Zone Transfer 此 Zone File
        allow-transfer { dns2.weithenn.org; };     //可配合 ACLs 使用
};

步驟2-7.進階性設定 - 代詢伺服器機制

代詢伺服器 (Forwarders) 機制為當您為您的站台指派代詢伺服器後,那麼所有對外的 DNS 查詢都會先送到您所指定的代詢伺服器,讓代詢伺服器利用快取資訊幫您快速回應 DNS 查詢,在台灣我們可設定全台最大的 DNS 快取伺服器其設定內容如下:

forwarders {
                168.95.192.1;
                168.95.1.1;
};

設定好 named.conf 後可利用 BIND 9 新增加的指令 named-checkconf 來檢查 named.conf 設定檔語法是否正確,若語法正確則執行完指令後將不會有任何訊息,若語法有錯會顯示錯誤訊息及行數。

/usr/sbin/named-checkconf                        //檢查 named.conf 語法是否有錯
                           -v                     //顯示 named-checkconf 版本

步驟3.建立 named.weithenn.for 檔案 (Forward)

建議您可複製剛才建立的反解範例檔案 localhost.rev 再進行修改可避免 keyin 錯誤。

    * SOA: 為標準區域中的第一筆記錄,之後括號 () 內為與次要 DNS 溝通的相關資訊,其數值單位為 (秒)
          o Serial: 區域版本編號
          o Refresh: 同步更新時間
          o Retry: 重試同步時間
          o Expire: 同步到期時間
          o Minimum: 最小快取存活時間

#vi /var/named/etc/namedb/master/named.weithenn.for   //建立正解檔內容如下
$TTL      86400
@       IN      SOA     user.weithenn.org. hostmaster.weithenn.org. (
                                      2005042601 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
               IN      NS      gateway
               IN      A       61.60.59.58
gateway       IN      A       61.60.59.58
www           IN      A       61.60.59.58
mail          IN      A       61.60.59.58  
@             IN      MX  10  mail

設定好 named.weithenn.for 後可利用 BIND 9 新增加的指令 named-checkzone 來檢查 named.weithenn.for 設定檔語法是否正確,若語法正確則執行完指令後將不會有任何訊息,若語法有錯會顯示錯誤訊息及行數。

/usr/sbin/named-checkzone weithenn.org named.weithenn.for         //檢查語法是否有錯
/usr/sbin/named-checkzone -d weithenn.org named.weithenn.org      //開啟除錯功能
                           -v                                      //顯示 named-checkconf 版本

步驟4.修改服務設定檔 (rc.conf)

修改 /etc/rc.conf 中加入下列的設定以便在系統重新開機時時會啟動 DNS 服務

#vi /etc/rc.conf                                                  //編輯rc.conf內容如下
named_enable="YES"                                                //啟動 named 服務  
named_flags="-u bind"                                             //採用 bind 這個帳號來啟動 DNS 服務 (安全性設定)

步驟5.修改本機 DNS 查詢設定檔 (resolv.conf)

修改本機 DNS 查詢設定檔 /etc/resolv.conf 加上 Domain Name 及本機 IP Address,關於此設定檔詳細內容可參考站內文章 resolv.conf

#vi /etc/resolv.conf                                              //修改設定檔加入如下三行
domain weithenn.org
nameserver 127.0.0.1                                              
nameserver 61.60.59.58

步驟6.啟動 DNS 服務

請鍵入如下指令啟動 DNS 服務

#/etc/rc.d/named start                                            //啟動 DNS 服務
                  stop                                             //停止 DNS 服務
                  restart                                          //重新啟動 DNS 服務
                  rcvar                                            //顯示應該填入 rc.conf 的內容
                  reload                                           //重新讀取 DNS 設定檔
                  status                                           //顯示目前 DNS 狀態

安全性設定測試

剛才上面的安全性設定完成後,我們測試一下剛才的安全性設定是否生效
測試1.隱藏 BIND DNS 版本

透過下列指令來測試是否無法查詢到 BIND 版本 (DNS_Server就是您要測那一台的 domain name 或是 IP 也可以),不過隱藏 BIND DNS 版本不代表就絕對安全,只是讓攻擊者無法馬上得知您的 BIND DNS 版本 (好讓他方便找該版本漏洞)。

#dig -t txt -c chaos VERSION.BIND DNS_Server

若設定正確則可看到回應 VERSION.BIND 就是您填入的內容,若沒設定好當然版本就被順利查詢到啦。

;; ANSWER SECTION:
VERSION.BIND.           0       CH      TXT     "None of your business" //隱藏版本成功
VERSION.BIND.           0       CH      TXT     "9.3.0"                 //隱藏版本失敗

測試2.Zone Transfer 限制

檢測方式 (以 nslookup 為例 )

#nslookup                                                               //進入 nslookup 交談模式
>server weithenn.org                                                    //指定以 weithenn.org 為 NS 做查詢
Default Server: weithenn.org
Address: 61.60.59.58    
>ls -d weitenn.org                                                      //檢查是否限制無法查尋 Zone File
[weithenn.org] ***
  Can't list domain weitenn.org: Unspecified error

參考

[FreeBSD Handbook-BIND9 and FreeBSD]

[FreeBSD 使用手册-BIND9 和 FreeBSD]

[ DNS系統的強化與保護]

[BIND - logging file not found - LinuxQuestions.org]

[サーバ設定手順・パソコントラブル解決・エラー解決・コマンド集・プログラミング/「GOBU」(ゴブ)]

[DNS/BIND Issue: “named: the working directory is not writable” | Slaptijack]

[named: the working directory is not writable - The FreeBSD Forums]
Me FAQ

Q1.logging channel 'security_log' file '/var/log/named/dns-security.log': file not found?

Error Message:

啟動 DNS 服務後,在系統訊息中看見如下錯誤訊息

#tail /var/log/messages
Jul 14 13:21:06 ms1 named[59648]: starting BIND 9.4.3-P2 -u bind -t /var/named -u bind
Jul 14 13:21:06 ms1 named[59648]: command channel listening on 127.0.0.1#953
Jul 14 13:21:06 ms1 named[59648]: the working directory is not writable
Jul 14 13:21:06 ms1 named[59648]: logging channel 'default_log' file '/var/log/named/dns-default.log': file not found
Jul 14 13:21:06 ms1 named[59648]: logging channel 'lamer_log' file '/var/log/named/dns-lamer.log': file not found
Jul 14 13:21:06 ms1 named[59648]: logging channel 'query_log' file '/var/log/named/dns-query.log': file not found
Jul 14 13:21:06 ms1 named[59648]: logging channel 'security_log' file '/var/log/named/dns-security.log': file not found
Jul 14 13:21:06 ms1 named[59648]: isc_log_open '/var/log/named/dns-default.log' failed: file not found
Jul 14 13:21:07 ms1 named[59648]: isc_log_open '/var/log/named/dns-query.log' failed: file not found
Jul 14 13:21:13 ms1 named[59648]: isc_log_open '/var/log/named/dns-lamer.log' failed: file not found

Ans:

原因在於設定檔中指定的路徑並非實體路徑,而是相對於 Chroot 服務的相對路徑,可看到 DNS 執行序為 -t /var/named 配合 named.conf 中指定的相對路徑才是最後 Log 寫入路徑。

#ps aux |grep named
bind     59648  0.0  0.5 20724 16852  ??  Ss    1:21PM   0:00.12 /usr/sbin/named -u bind -t /var/named -u bind

而 named.conf 設定檔中內容如下

logging {
    category lame-servers { lamer_log; };                            //在本DNS上查不到的記錄(遞迴查詢)
    category security{ security_log;};                               //安全記錄
    category queries { query_log;};                                  //查詢記錄
    category default {default_log;};                                 //BIND啟動記錄
    channel default_log {
        file "/var/log/named/dns-default.log" versions 10 size 20m;  //此 Log 寫入路徑為 /var/named/var/log/named/dns-default.log (修改前)
        file "/var/log/dns-default.log" versions 10 size 20m;        //此 Log 寫入路徑為 /var/named/var/log/dns-default.log (修改後)
        severity info;
    };

Q2.the working directory is not writable?

Error Message:

啟動 DNS 服務後,在系統訊息中看見如下錯誤訊息

#tail /var/log/messages
Jul 14 15:18:01 ms1 named[64145]: starting BIND 9.4.3-P2 -t /var/named -u bind
Jul 14 15:18:01 ms1 named[64145]: command channel listening on 127.0.0.1#953
Jul 14 15:18:01 ms1 named[64145]: the working directory is not writable

Ans:

若您確定在 /var/named 下權限設定正確 (owner bind) 後啟動 DNS 服務仍看到錯誤訊息,請依如下步驟進行修改後再重新啟動 DNS 服務即可解決。

#vi /etc/mtree/BIND.chroot.dist
/set type=dir uname=root gname=wheel mode=0755             //預設值
/set type=dir uname=bind gname=wheel mode=0755             //修改後
#/etc/rc.d/named restart                                   //修改完成後重新啟動 DNS 服務

首頁 最新文章 FreeBSD 筆記 Linux 筆記 Windows 筆記 隨機文章 關於本站 遊山玩水
沙子地方 翔賀香腸 刊登廣告 刊登廣告 刊登廣告
本頁是唯讀的 參閱其他版本 管理 Oddmuse
最後編輯於 2009-07-22 11:14 CST 由 Weithenn

搜尋:
Go To Oddmuse OrgGo To FreeBSD OrgCreative Commons 2.5 Taiwansitestates.com
Tags:

[UrlAD] BLOG刊登 UrlAD 廣告 不指定

Category : 網路 | Post on 2010/06/20 00:34 by hero | Comments:0
加入 UrlAD 賺大錢
加入 BlogAD 賺錢去
加入 BloggerAds 賺錢去

在Web2.0的潮流下,部落格在近年已成為網民們的新興溝通工具,不僅可以利用部落格來記錄生活、分享心情,還可以陳述意見表達看法,讓您也可以自由地抒發自己的觀點,熱門的部落格更可以讓您一夕之間成為網路上的知名人物,也可讓您的作品不斷地被推文、不斷地被傳閱,讓你一嚐名人的成就感。

然而,部落格功能僅此而已嗎?

不,當然不是!UrlAD就要協助您,讓您的部落格發揮更大的價值,讓您的部落格不僅只是讓您有名,還能讓您名利雙收!!
加入 UrlAD 賺大錢
加入 BlogAD 賺錢去
加入 BloggerAds 賺錢去

UrlAD的新式部落格廣告機制,讓您的部落格價值更高。 現有的部落格(部落格)系統幾乎都是免費平台,您只要申請帳號、且專心經營,累積穩定的閱讀流量,不需負擔任何其他費用,您就可以輕鬆賺取「部落格網賺獎金」。

只要您參加UrlAD的廣告聯播,不需要成本、不需要任何加盟金,只需在您的部落格上安置UrlAD所提供的程式碼,利用UrlAD精準的廣告遞送系統,保證百分之百的將廣告在您的部落格播放,就能立即幫您累積每個廣告點選,將點選數直接換算成優渥的廣告分紅獎金,您就能夠輕鬆累積屬於您的「部落格網賺獎金」。
加入 UrlAD 賺大錢
加入 BlogAD 賺錢去
加入 BloggerAds 賺錢去

您可以是自己的老闆
  您只需要固定維護您的部落格,有固定的讀者產生一定的閱讀量閱讀,就可經營起屬於您的UrlAD廣告機制。
廣告不受攔截、百分之百呈現
  UrlAD 新型態的部落格廣告,擁有專利的開發技術,保證您在部落格上的廣告遞送絕不會被攔截,因而影響您的網賺權益,影響您的收入!
將部落格閱讀流量轉為可觀的獎金
  在您的部落格中,只要有網友在瀏覽您的布落格時,點選您所安置的UrlAD聯播的廣告,您就能夠得到優渥的廣告分紅獎金,長期累積就能幫您每月輕鬆賺取零用錢。
多元的廣告表現、讓您的部落格更充實
  UrlAD提供優質的創意廣告,廣告形式多元、且可依專案需求提高互動性設計,吸引更多網友主動點選廣告,不僅可讓您的部落格更充實,更可有效地累積更多的廣告分紅獎金。
專業的業務團隊,與您共創網路新商機
  UrlAD專業的業務團隊提供廣告主專業的網路行銷企劃,同時也為您的部落格銷售廣告版位,您只需要專心經營部落格、提升部落格人氣,業務交給UrlAD團隊為您負責。
加入 UrlAD 賺大錢
加入 BlogAD 賺錢去
加入 BloggerAds 賺錢去

[BlogAD] BLOG刊登廣告賺錢 不指定

Category : 網路 | Post on 2010/06/20 00:24 by hero | Comments:0

  BlogAD是由原生數位行銷所成立的專業網路廣告媒體公司,加盟的部落客只需要在部落格上安插BlogAD所提供的程式碼,透過BlogAD精準的廣告遞送系統,將廣告在您的部落格上播放,並依據您選擇的獎金計算方式,來給予您優渥的廣告分紅獎金。
加入 BlogAD 賺錢去
加入 UrlAD 賺大錢
加入 BloggerAds 賺錢去

只要您有一個經營中的部落格,您現在就能成為我們共享廣告利潤的合作對象。您唯一要做的事,就是努力經營您的部落格,提升部落格的品質與內容,讓更多人因為您的內容而瀏覽您的部落格。並且,您不需要任何廣告業務人員就能讓網站的廣告維持滿檔狀態,輕鬆賺取零用錢!
加入 BlogAD 賺錢去
加入 UrlAD 賺大錢
加入 BloggerAds 賺錢去

  輕鬆賺取理想且穩定的收入
加入 BlogAD 賺錢去
加入 UrlAD 賺大錢
加入 BloggerAds 賺錢去

  只要有網友瀏覽或點選您部落格的廣告(註1),您就能夠得到優渥的廣告分紅獎金,每月輕鬆賺取零用錢。
加入 BlogAD 賺錢去
加入 UrlAD 賺大錢
加入 BloggerAds 賺錢去  
  

  
不需成本,不需資金,您也可以是自己的老闆
加入 BlogAD 賺錢去
加入 UrlAD 賺大錢
加入 BloggerAds 賺錢去

  現有的部落格系統大多是免費平台,您只要申請且專心經營,不需負擔任何機器及網管成本,您就可以輕鬆賺取廣告獎金。
加入 BlogAD 賺錢去
加入 UrlAD 賺大錢
加入 BloggerAds 賺錢去  
  

  
省去業務奔波時間,專心經營您的部落格
加入 BlogAD 賺錢去
加入 UrlAD 賺大錢
加入 BloggerAds 賺錢去

  由BlogAD專業的業務團隊為您銷售廣告版位,不需自行招攬客戶,讓您專心於提升部落格人氣,有人氣就有錢潮。
加入 BlogAD 賺錢去
加入 UrlAD 賺大錢
加入 BloggerAds 賺錢去  
  

  
讓您的部落格更充實
加入 BlogAD 賺錢去
加入 UrlAD 賺大錢
加入 BloggerAds 賺錢去

  BlogAD為您播放優質廣告,BlogAD廣告形式眾多且互動性高,吸引更多網友參觀您的部落格,並且提昇專業形象。
加入 BlogAD 賺錢去
加入 UrlAD 賺大錢
加入 BloggerAds 賺錢去  
  

  
加入流程簡單,輕鬆開始賺錢
加入 BlogAD 賺錢去
加入 UrlAD 賺大錢
加入 BloggerAds 賺錢去

  您一旦提出加盟申請並通過審核,我們將馬上賦予您BlogAD的廣告播放權。您接下來唯一需要做的事就是將我們提供的廣告程式碼放置在您的部落格,然後每月固定查看您的廣告獎金是否 已達請款資格,並於網站上申請請款動作。
加入 BlogAD 賺錢去
加入 UrlAD 賺大錢
加入 BloggerAds 賺錢去



bind9-提供Domain Name與IP對應的服務 不指定

Category : linux | Post on 2010/05/11 18:35 by hero | Comments:0
前言
DNS (Domain Name Service) 主要目地為解決 Domain Name 與 IP Address 之間相互的對應問題,在網路世界間中的溝通其實就是使用 IP Address 來溝通(就像是人類使用的身份證),但一連串的數字這樣對人類來說太過於麻煩,因此便出現 Domain Name Service 服務來將 IP Address 轉換成人類可方便閱讀的 Domain Name,簡單來說就是將您所輸入的網址 tw.yahoo.com 轉成 IP,以便連結到 Yahoo 的網頁伺服器。DNS 伺服器的原理與運作流程

實作環境
•CentOS 5.1 (Linux 2.6.18-53.1.4.el5)
•bind-9.3.3-10.el5
•bind-chroot-9.3.3-10.el5
•system-config-bind-4.0.3-2.el5.centos (cp to /etc/named.conf)
安裝及設定
步驟1.安裝相關套件
利用 yum 來安裝 bind 及其相關套件

#yum install system-config-bind          //安裝 system-config-bind 套件來產生 named.conf 範例檔
#yum groupinstall "DNS Name Server"      //安裝 bind 及 bind-chroot 套件複製相關檔案到 Bind Chroot 目錄 /var/named/chroot/ 下

#cp -p /usr/share/system-config-bind/profiles/default/named.conf /var/named/chroot/etc/      //複製 named.conf 範例檔
#ln -s /var/named/chroot/etc/named.conf /etc/named.conf                                      //建立連結到 /etc 下
#cp -p /usr/share/system-config-bind/profiles/default/named/* /var/named/chroot/var/named/   //複製相關範例檔至 bind chroot 目錄下
#cp /usr/share/doc/bind-9.3.3/sample/var/named/named.root /var/named/chroot/var/named/       //複製 bind root 檔至 bind chroot 目錄下
#chown -R named /var/named/chroot                                                            //把 owner 權限更改為 named步驟2.編輯 bind 設定檔 (named.conf)
#vi /var/named/chroot/etc/named.conf    //編輯 named.conf 內容如下步驟2-1.安全性設定 -- 隱藏 BIND DNS 版本
限制查詢 BIND DNS 版本,為何要隱藏您的 BIND DNS 版本呢?原因在於有心人士可以先瞭解您 BIND 版本來尋找相關漏洞攻擊程式,讓您 DNS 伺服器無法運作,因此在 ISC BIND 下可以透過設定來隱藏 BIND 系統版本。

options {
        directory       "/var/named";
        dump-file       "/var/named/data/cache_dump.db";    //將資料庫內容 Dump 出來路徑(執行rndc dumpdb)
        statistics-file "/var/named/data/named_stats.txt";  //統計資訊路徑(執行rndc stats)
        version         "None of your business";            //當別人查詢您的BIND版本時顯示的內容步驟2-2.安全性設定 -- 存取控制清單 ACLs
我們可以利用存取控制清單 (Access Control List,ACL),來限制外來對 Domain 的查詢要求,可以配合 allow-query 參數來限制所有或特定 Zone 的查詢要求。

acl "dns1.weithenn.org" { 61.60.59.58; };
acl "dns2.weithenn.org" { 61.60.59.57; };步驟2-3.安全性設定 -- 限制所有查詢要求 allow-query
也就是我只回應列表 IP 的查詢要求 (ex. 可以用 nslookup 將 server 指向我來進行查尋動作),下列我只回應 LAN 網段及 Hinet Cache DNS Server 的查詢要求。

options {
          allow-query { 192.168.1.0/24; 168.95.192.1/32; 168.95.1.1/32; };
};步驟2-4.安全性設定--限制所有查詢要求 allow-recursion
就是允許哪些來源可以使用 DNS 主機進行遞迴查詢動作。簡單說就是透過這台 DNS 來查詢任何資料,包含不是該 DNS 主機負責的 zone 也代為查詢,你不想讓別人用你的 DNS 去探查別人的 DNS 主機資訊吧?

options {
          allow-recursion { 127.0.0.1/32; 192.168.1.0/24; 61.60.59.58/32; };
};步驟2-5.安全性設定 -- 代詢伺服器機制
代詢伺服器 (Forwarders) 機制為當你為你的站台指派代詢伺服器後,那麼所有對外的 DNS 查詢都會先送到你所指定的代詢伺服器,讓代詢伺服器利用快取資訊幫您快速回應 DNS 查詢,設定內容如下:

forwarders {
                168.95.192.1;
                168.95.1.1;
};步驟2-6.安全性設定 -- 限制特定 Zone 查詢要求
zone "weithenn.org" {
        type master;
        file "master/named.weithenn.for";
        allow-query { dns2.weithenn.org; };   //我只回應這個 IP 的查詢要求
};要注意的是當您設定限制所有或特定 Zone 的查詢要求時,其特定 Zone 設定優先權將大為限制所有查詢要求。

步驟2-7.安全性設定 -- Zone Transfer 限制
DNS 架構下常需透過更新 Zone File 動作更新 Master 及 Slave 間 Zone File 的資料,在信任網域下,將 Zone File 資料列出是 OK 的,若是能由外界進行查找您的 Zone 資料時將為演變為具有危險的行為,想想若有人將您 Zone File 的設定都摸的一清二楚,感覺相當恐怖的,因此限制您的 Zone transfer 將是必須的。要記得的是 Slave 要設定為 allow-transfer { "none"; }; 這是比較容易被忘記的設定。

zone "weithenn.org" {
        type master;
        file "master/named.weithenn.for";
        allow-transfer { 61.60.59.57; };           //只有這個 IP 能 Zone Transfer 我的 Zone File
        allow-transfer { dns2.weithenn.org; };  //也可配合 ACLs 使用
};設定好 named.conf後可利用 BIND 9 才新增加的指令 named-checkconf 來檢查 named.conf 設定檔語法是否正確,若語法正確則執行完指令後將不會有任何訊息,若語法有錯會顯示錯誤訊息及行數。

/usr/sbin/named-checkconf        //檢查 named.conf 語法是否有錯
                           -v     //顯示 named-checkconf 版本步驟3.建立 named.weithenn.for 檔案 (Forward)
可複製 named.local 範例檔再修正即可避免 keyin 錯誤,SOA 為標準區域中的第一筆記錄,( )內為與次要DNS溝通的資訊,依序為區域版本編號、同步更新時間、重試同步時間、同步到期時間、快取存活時間,單位為(秒)。

#vi /var/named/chroot/var/named/named.weithenn.org   //建立正解檔內容如下
$TTL      86400
@       IN      SOA     user.weithenn.org. hostmaster.weithenn.org. (
                                      2008012101 ; Serial
                                      28800      ; Refresh
                                      14400      ; Retry
                                      3600000    ; Expire
                                      86400 )    ; Minimum
               IN      NS      gateway
               IN      A       61.60.59.58
gateway       IN      A       61.60.59.58
www           IN      A       61.60.59.58
mail          IN      A       61.60.59.58
dns1          IN      A       61.60.59.58
dns2          IN      A       61.60.59.57
@             IN      MX  10  mail 設定好 named.weithenn.org 後可利用 BIND 9 才新增加的指令 named-checkzone 來檢查 named.weithenn.org 設定檔語法是否正確,若語法正確則執行完指令後將不會有任何訊息,若語法有錯會顯示錯誤訊息及行數。

#/usr/sbin/named-checkzone weithenn.org named.weithenn.org      //檢查語法是否有錯
#/usr/sbin/named-checkzone -d weithenn.org named.weithenn.org   //開啟除錯功能
                            -v                                   //顯示 named-checkconf 版本步驟4.每次開機時啟動 DNS 服務
使用 chkconfig 指令來查看 named 在各 runlevel 下狀態

#chkconfig --list |grep named
named           0:off   1:off   2:off   3:off   4:off   5:off   6:off設定 named 在開機時 (runlevel 為 2、3、4、5 時) 會啟動服務

#chkconfig named on     檢查剛才的設定是否生效

#chkconfig --list | grep named
named           0:off   1:off   2:on    3:on    4:on    5:on    6:off步驟5.編輯 /etc/resolv.conf 改變 nameserver 查尋順序
domain weithenn.org
nameserver 127.0.0.1           //設定自已為 dns 查尋順序第一個
nameserver 61.60.59.58並確定 /etc/nsswitch.conf 內對於 hosts 的搜尋順序

#grep hosts: /etc/nsswitch.conf
#hosts:     db files nisplus nis dns
hosts:      files dns          //先 /etc/hosts 再 /etc/resolv.conf步驟6.手動啟動 DNS 服務
#/etc/rc.d/init.d/named start
Starting named:                                            [  OK  ]檢查一下 named process 是否執行

#ps ax |grep named
17798 ?        Ssl    0:00 /usr/sbin/named -u named -t /var/named/chroot檢查是否 LISTEN Port 53 (named)、953 (rndc)

#netstat -tnl
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State
tcp        0      0 61.60.59.58:53              0.0.0.0:*                   LISTEN
tcp        0      0 127.0.0.1:53                0.0.0.0:*                   LISTEN
tcp        0      0 127.0.0.1:953               0.0.0.0:*                   LISTEN
tcp        0      0 ::1:953                     :::*                        LISTEN補充:IPTables 設定
若您的 CentOS 有開啟 IPTables Firewall 則記得開啟 Port 53 (tcp / udp),參考 /etc/services

#cat /etc/sysconfig/iptables
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type any -j ACCEPT
-A INPUT -i eth0 -p tcp -s 192.168.1.0/24 --dport 22 -j ACCEPT
-A INPUT -i eth0 -p tcp -s 192.168.1.0/24 --dport 53 -j ACCEPT   -->加入此行 (less /etc/services)
-A INPUT -i eth0 -p udp -s 192.168.1.0/24 --dport 53 -j ACCEPT   -->加入此行(less /etc/services)
-A INPUT -i eth0 -p tcp -s 192.168.1.0/24 --dport 80 -j ACCEPT
COMMIT加入後記得重新啟動 iptables service

#/etc/rc.d/init.d/iptables restart安全性設定測試
隱藏 BIND DNS 版本
可透過下列指令來測試是否無法查詢到 BIND 版本 (DNS_Server 就是您要測那一台的 domain name 或是 IP 也可以),不過隱藏 BIND DNS 版本不代表就絕對安全,只是讓攻擊者無法馬上得知您的 BIND DNS 版本(好讓他方便找該版本漏洞)。

#dig -t txt -c chaos VERSION.BIND DNS_Server若設定正確則可看到回應 VERSION.BIND 就是您填入的內容,若沒設定好當然版本就被順利查詢到啦。

;; ANSWER SECTION:
VERSION.BIND.           0       CH      TXT     "None of your business" //隱藏版本成功
VERSION.BIND.           0       CH      TXT     "9.3.0"                 //隱藏版本失敗Zone Transfer 限制
用 windows xp 的命令提示字元並使用 nslookup 去測試

#nslookup                                 //進入nslookup交談模式
>server dns1.weithenn.org                 //指定以 weithenn.org 為 NS 做查詢
Default Server: dns1.weithenn.org
Address: 61.60.59.58
>ls -d weitenn.org                        //有做限制無法查尋Zone File
[dns1.weithenn.org] ** Can't list domain weithenn.org: Query refused並且可從 DNS Server 上看到如下訊息 (zone transfer denied)

#tail /var/log/messages
Jan 21 17:23:20 dns1 named[18861]: client 192.168.1.5#3021: zone transfer 'weithenn.org/AXFR/IN' denied參考
[ DNS系統的強化與保護]

[DNS Tips - TechWiki]

[Quick HOWTO : Ch18 : Configuring DNS/zh - Ubuntu中文]

[Centos 5 problem with starting named fail - Page 2 - HowtoForge Forums | HowtoForge - Linux Howtos and Tutorials]

[ HowtoForge - Traditional DNS Howto]

[eastern-logic.com » Blog Archive » named.conf file is missing on CentOS5 systems]

[Tony Bhimani’s Blog » Blog Archive » What happened to named.conf in ISC BIND DNS on Fedora 7?]

[酷!學園 - DNS問題:Slave無法取得Master資料]

[鳥哥的 Linux 私房菜 -- DNS Server]

[Unexpected rcode (SERVFAIL) - KhoLiX Wiki]

[Solaris 資訊站 - BIND 細項功能設定]

[SuSE Linux 論壇 :: 觀看文章 - DNS Server 架設問題]

Me FAQ
Q1.Locating /var/named/chroot//etc/named.conf failed: [FAILED]?
Error Meaage:

使用 yum 群組安裝 "DNS Name Server" 卻出現如下訊息說找不到 named.conf 設定檔?

#yum groupinstall "DNS Name Server"
...略
Running Transaction
  Installing: bind                         ######################### [1/2]
  Installing: bind-chroot                  ######################### [2/2]
Locating /var/named/chroot//etc/named.conf failed:            //失敗?
[FAILED]
Installed: bind.i386 30:9.3.3-10.el5 bind-chroot.i386 30:9.3.3-10.el5
Complete! Ans:

因為安裝時只選 KDE 其它都沒選,所以也沒有 /etc/named.conf 此時只要安裝 system-config-bind 套件即可產生 Bind 9 相關範例檔。

#yum install system-config-bind          //安裝 system-config-bind 套件來產生 named.conf 範例檔Q2.slaver dns 無法同步 master dns 的 zone file - dumping master file: tmp-tdjEbsWA0W: open: permission denied?
Error Meaage:

slaver dns 設定好相關內容也使用 /usr/sbin/named-checkconf 檢查過語法沒問題,但就是無法同步 master dns 的 zone file 查看 /var/log/message 發現如下錯誤訊息

#tail /var/log/messages
Jan 21 16:10:48 dns1 named[17951]: zone weithenn.org/IN: Transfer started.
Jan 21 16:10:48 dns1 named[17951]: dumping master file: tmp-2EyNgvNaiD: open: permission denied
Jan 21 16:10:48 dns1 named[17951]: transfer of 'weithenn.org/IN' from 192.168.1.22#53: failed while receiving responses: permission denied Ans:

看到訊息有 permission denied 的字眼,直覺想到應該是權限的問題查看了 named 的 process 是 -u (user) 是 named 但我 /var/named 下有些 owner 是 root 應該是此問題所導致的,改變 /var/named 下的權限後就可順利同步 master dns zone files 了 (當然前提是 iptables 也設定好)

#ps ax |grep named                             //查看 named process
17951 ?        Ssl    0:00 /usr/sbin/named -u named -t /var/named/chroot
#chown -R named:named /var/named/              //改變權限Q3.** server can't find www.weithenn.org: REFUSED?
Error Meaage:

當要利用 nslookup 來查詢 dns 設定是否正確時,卻無法查詢並得到如下錯誤訊息

#nslookup
>www.weithenn.org
Server:         192.168.1.100
Address:        192.168.1.100#53
** server can't find www.weithenn.org: REFUSED且在 dns server 也看到如下拒絕 client 查詢的訊息

#tail /var/log/messages
Jan 21 16:29:56 dns1 named[18861]: client 192.168.1.100#32808: query 'www.weithenn.org/A/IN' deniedAns:

原因在於我忘了把 LAN 網段加入 allow-query 內,因此 dns server 當然拒絕回應查詢要求啦,把 LAN 網段加入 allow-query 允許的網段並 reload named 即可。

options {
          allow-query { 192.168.1.0/24; 168.95.192.1/32; 168.95.1.1/32; };  //加入 LAN 網段
};並重新 reload named (重新讀取設定檔內容)

#/etc/rc.d/init.d/named reload
Reloading named:                                           [  OK  ]
#tail /var/log/messages
Jan 21 18:50:25 dns1 named[18861]: loading configuration from '/etc/named.conf'Q4.named[3355]: lame server resolving 'makolinks.com' (in 'makolinks.com'?): 67.18.198.174#53?
Error Meaage:

在 /var/log/messages 內發現如下訊息

Jan 28 09:54:17 ns2 named[3355]: lame server resolving 'makolinks.com' (in 'makolinks.com'?): 67.18.198.174#53
Jan 28 13:23:05 ns2 named[3355]: lame server resolving 'ns2.osdedicated.net' (in 'osdedicated.NET'?): 72.52.248.169#53
Jan 28 13:23:05 ns2 named[3355]: lame server resolving 'ns1.osdedicated.net' (in 'osdedicated.NET'?): 72.52.248.169#53Ans:

原因是當我們的 DNS 主機去向外面的 DNS 查詢某些網域的正反解析名稱時,可能因為對方 DNS 主機的設定錯誤,導致無法正確解析網域的正反解此時就會發生 lame server 解析問題,這問題跟我們的 Name Server 主機沒關系但會一直看到訊息也是很煩,若不想看到此訊息請修改 named.conf 後重新啟動 named service。

#vi /var/named/chroot/etc/named.conf
logging {                              //加入此三行 (在 rndc.key 上面)
category lame-servers { null; };
};
include "/etc/rndc.key";修改完後重新啟動 named service 後就可了。

#/etc/rc.d/init.d/named restart        //重新啟動 named serviceQ5.named[3355]: unexpected RCODE (SERVFAIL) resolving 'us.update2.toolbar.yahoo.com/A/IN': 168.95.192.1#53?
Error Meaage:

在 /var/log/messages 內發現如下訊息

Jan 28 10:54:30 ns-2 named[3355]: unexpected RCODE (SERVFAIL) resolving 'us.update2.toolbar.yahoo.com/A/IN': 168.95.192.1#53
Jan 28 10:59:36 ns-2 named[3355]: unexpected RCODE (SERVFAIL) resolving 'ts.richmedia.yahoo.com/A/IN': 168.95.192.1#53
Jan 28 11:36:26 ns-2 named[3355]: unexpected RCODE (SERVFAIL) resolving 'cindyflower.home.services.spaces.live.com/A/IN': 168.95.192.1#53
Jan 28 11:36:26 ns-2 named[3355]: unexpected RCODE (SERVFAIL) resolving 'cindyflower.home.services.spaces.live.com/A/IN': 168.95.1.1#53
Jan 28 11:40:05 ns-2 named[3355]: unexpected RCODE (SERVFAIL) resolving 'canvas415taiwan.spaces.live.com/A/IN': 168.95.1.1#53Ans:

參考[Unexpected rcode (SERVFAIL) - KhoLiX Wiki];因為我有設定代詢伺服器 (Forwarders)所以會看到最後 Name Server 主機是 Hinet Cache Server 回應的,解決方法就是你在整個 Named Server 主機的 allow-query、allow-recursion 只設給你信任的網域,而你管理的 zone 則可設 allow-query { any; };

#vi /var/named/chroot/etc/named.conf
options {                                
    allow-query { localnets; };           //設為您信任的網域
    allow-recursion { localnets; };       //設為您信任的網域
}; zone "example.com" {                     //管理的 zone 設定
    allow-query { any; };                 //回應任何 IP 的查詢要求
};修改完後重新啟動 named service 後就可了。

#/etc/rc.d/init.d/named restart        //重新啟動 named serviceQ6.named[2559]: client 127.0.0.1#32768: query (cache) 'www.asahi.com/A/IN' denied?
Error Meaage:

在 /var/log/messages 內發現如下訊息

Apr 29 15:18:10 ns-2 named[2559]: client 127.0.0.1#32768: query (cache) 'www.asahi.com/A/IN' denied
Apr 29 15:18:14 ns-2 named[2559]: client 127.0.0.1#32768: query (cache) 'www.gslb.asahi.com/A/IN' deniedAns:

這個問題的發生是因為你的 named.conf 內有設定 allow-query 但卻沒有允許 127.0.0.1 可以查詢所造成的,修改 named.conf 及 /etc/resolv.conf 把 127.0.0.1 加上即可。

#vi /var/named/chroot/etc/named.conf
allow-query { 127.0.0.1/32; };           //加上 127.0.0.1
#vi /etc/resolv.conf
nameserver 127.0.0.1                     //加上 127.0.0.1
#/etc/rc.d/init.d/named restart          //重新啟動 named 服務即可
Stopping named: .                                          [  OK  ]
Starting named:                                            [  OK  ][BIND problem "query (cache) denied"]

[comp.unix.solaris: Re: named: client 127.0.0.1#32768: query (cache) denied]

Q7.named[23614]: named.weithenn.org:23: test_1.weithenn.org: bad owner name (check-names)?

Error Meaage:

啟動 named 服務後在 /var/log/messages 內發現如下訊息,而機器雖然有跑起 process 及 listen port 但服務似乎有問題。

#tail /var/log/message
May  9 17:58:30 ns-3 named[23614]: named.weithenn.org:23: test_1.weithenn.org: bad owner name (check-names)
May  9 17:58:30 ns-3 named[23614]: zone weithenn.org/IN: loaded serial 2008050902且用 nslookup 查尋解析的名稱也會說因為 server 有問題所以往下一個 name server 查尋?

#nslookup
>ftp
;; Got SERVFAIL reply from 127.0.0.1, trying next server      //無法使用
;; Got SERVFAIL reply from 192.168.1.10, trying next server   //無法使用
Server:         192.168.1.11                                  //在 /etc/resolv.conf 指定的 named server
Address:        192.168.1.11#53
Name:   ftp.weithenn.org
Address: 61.60.59.58
>Ans:

原因就出在於我的 zone file 內有一筆 A Record 是有底線 (_) 所造成的,解決方式就是利用在 named.conf 內的 option 加上 check-names 參數來決定。

•warn:警告,會顯示警告訊息但 Named Server 仍可正常運作
•fail:失敗,會顯示警告訊息且 Named Server 無法正常運作
•ignore:忽略,不顯示警告訊息 Named Server 正常運作
check-names (master|slave|response) (warn|fail|ignore);所以我的解決方式為 DNS Master 設為 warn 而 DNS Slaver 則設為 ignore,因為 Slaver 的 zone 是來自 Master 所以我警告訊息只要給 Master 看就好,Slaver 就不必顯示了。

DNS Master named.conf

options {
           check-names master warn;        //警告,會顯示警告訊息但 Named Server 仍可正常運作
};DNS Slaver named.conf

options {
           check-names slave ignore;       //忽略,不顯示警告訊息 Named Server 正常運作


資料來源: http://www.weithenn.org/cgi-bin/wiki.pl?bind9-%E6%8F%90%E4%BE%9BDomain_Name%E8%88%87IP%E5%B0%8D%E6%87%89%E7%9A%84%E6%9C%8D%E5%8B%99#Heading8
Tags:




影片出處: 東森財經台

[PHP] php安裝openssl的方法 不指定

Category : 隨手查隨手記 | Post on 2010/03/20 01:19 by hero | Comments:0
1.首先需先確認你安裝的PHP延伸模組中是否有php_openssl.dll這個函式庫,以YOGO的安裝路徑為例,到"C:\php5\ext\"這個資料夾中看是否有php_openssl.dll這個函式庫的存在,若有但openssl無法使用那就可能沒開啟這個擴充模組,以YOGO的設定為例,到"C:\WINDOS\"資料夾底下找到一個名php.ini的檔案,用筆記本之類的軟體開啟後,搜尋php_openssl.dll,找到之後將前方的";"字號去除之後存檔重開web server之後,應該就可以使用php_openssl.dll這個模組了,若在php.ini檔中,搜尋不到php_openssl.dll的話就把"extension=php_openssl.dll"這一段家到php.ini檔中,然後存檔重開web server之後,應該就可以使用php_openssl.dll這個模組了。

2.若安裝的PHP延伸模組中沒有php_openssl.dll這個函式庫的話就要自己去下載來裝了,首先先用phpinfo()函式,看一下安裝的php版本與php.ini檔的存放路徑

3.確定安裝的php版本後到php的官網(http://www.php.net/)中下載相對應的php版本,不管你的php是幾版的,你要下載的是PHP_X.X.X._zip_package的版本,不要去下載其他的版本

4.隨便選擇一個載點下載

5.下載完成後解壓縮,之後會看到一個"ext"的資料夾

6.進入"ext"資料夾中找到"php_openssl.dll"這個擴充模組

7.將"php_openssl.dll"複製到你的php安裝路徑之下的"ext"資料夾,以YOGO為例,安裝路徑為"C:\php5\ext\"

8.然後用類似筆記本之類的軟體,開起php.ini檔,以YOGO的設定為例即為"C:\WINDOWS\php.ini"

9.搜尋"php_openssl.dll",然後將前方的";"拿掉,若搜尋不到就自己把"extension=php_openssl.dll"這一句加上去,然後存檔重開web server

10.用phpinfo()函式看一下openssl模組是否有載入成功,若有應該會看到

PS:
1.若改完php.ini重開web server卻出現找不到"php_openssl.dll"擴充模組的錯誤的話,將"php_openssl.dll"及在C:\php5\資料夾底下的libeay32.dll、ssleay32.dll,這個3檔案複製到"C:\WINDOWS\System32"這個資料夾底下,然後重起web server應該就可以解決這個問題了。
2.若你安裝的web server是含 openssl 的 apache 的話,
因為根據 windows 的設計, 他會先搜尋 (根據下面那段英文字) apache/bin,所以 php 內建的永遠跑不到了,請把php_openssl.dll、libeay32.dll、ssleay32.dll覆蓋到 apache/bin 去吧. 因為那才是應用程式的執行地方。
Tags: ,

受人歡迎的28個原則 不指定

Category : 隨手查隨手記 | Post on 2010/03/18 15:36 by hero | Comments:0
受人歡迎的28個原則
----------------------------------

這二十八點我還有把他抄在我的筆記本上呢!其實,多用心體會,就能讓自己受歡迎吧!多替別人著想~

1.長相不令人討厭,如果長得不好,就讓自己有才氣;如果才氣也沒有,那就總是微笑。

2.氣質是關鍵。如果時尚學不好,寧願純樸。



3.與人握手時,可多握一會兒。真誠是寶。

4.不必什麼都用「我」做主語。

5.不要向朋友借錢。

6.不要「逼」客人看你的家庭相冊。

7.與人打「的」時,請搶先坐在司機旁。

8.堅持在背後說別人好話,別擔心這好話傳不到當事人耳朵裡。

9.有人在你面前說某人壞話時,你只微笑。

10.自己開小車,不要特地停下來和一個騎自行車的同事打招呼。人家會以為你在炫耀。

11.同事生病時,去探望他。很自然地坐在他病床上,回家再認真洗手。

12.不要把過去的事全讓人知道。

13.尊敬不喜歡你的人。

14.對事不對人;或對事無情,對人要有情;或做人第一,做事其次。

15.自我批評總能讓人相信,自我表揚則不然。

16.沒有什麼東西比圍觀者們更能提高你的保齡球的成績了。所以,平常不要吝惜你的喝彩聲。

17.不要把別人的好,視為理所當然。要知道感恩。

18.榕樹上的「八哥」在講,只講不聽,結果亂成一團。學會聆聽。

19.尊重傳達室裡的師傅及搞衛生的阿姨。

20.說話的時候記得常用「我們」開頭。

21.為每一位上台唱歌的人鼓掌。

22.有時要明知故問:你的鑽戒很貴吧!有時,即使想問也不能問,比如:你多大了?

23.話多必失,人多的場合少說話。

24.把未出口的「不」改成:「這需要時間」、「我盡力」、「我不確定」、「當我決定後,會給你打電話」……

25.不要期望所有人都喜歡你,那是不可能的,讓大多數人喜歡就是成功的表現。

26.當然,自己要喜歡自己。
27。如果你在表演或者是講演的時候,如果只要有一個人在聽也要用心的繼續下去,即使沒有人喝采也要演,因為這是你成功的道路,是你成功的搖籃,你不要看的人成功,而是要你成功。

28。如果你看到一個貼子還值得一看的話,那麼你一定要回復,因為你的回復會給人繼續前進的勇氣,會給人很大的激勵。同時也會讓人感激你
分頁: 2/9 第一頁 上頁 1 2 3 4 5 6 7 8 9 下頁 最後頁 [ 顯示模式: 摘要 | 清單 ]