[Up]常用資訊

[重點文章] 重點文章 [重點文章] 重點文章

2020年12月5日 星期六

2020年4月22日 星期三

[Jenkins] Jenkins 執行過程中檢查 slack 未成功後 重新傳送 script

[Jenkins] Jenkins 執行過程中檢查 slack 未成功後 重新傳送 script

在執行 jenkins 過程中有些資訊會利用 slack webhook 方式將資訊傳送出去
 
但是如果當下異常就無法傳送,所以就改一下檢查方式讓 slack webhook 不會漏送
 
下面為執行的Script

2020年4月8日 星期三

[Jenkins] 新的檢查工作迴圈-確保執行 job build 執行完成後 接續執行

[Jenkins] 新的檢查工作迴圈-確保執行 job build 執行完成後 接續執行

[Jenkins] 新的檢查工作迴圈-確保執行 job build 執行完成後 接續執行

2020年4月6日 星期一

[Debian] 參考 別人的 vimrc

[Debian] 參考 別人的 vimrc https://magiclen.org/vimrc/

[Debian] Vim無法使用滑鼠右鍵複製 解決方法

[Debian] Vim無法使用滑鼠右鍵複製 解決方法 由於日常大部分工作需要在 Debian 環境下完成,最近發現升級到 Debian Stretch 後, Vim 的一個常用操作沒法做了,沒法使用滑鼠,直接選擇並複製。很彆扭,之前用著沒問題的。 今天來分享一個解決辦法,為大家解決 Debian 9 VIM 環境下,無法使用滑鼠右鍵進行選擇、複製的問題,供大家參考。

2020年4月4日 星期六

2020年4月1日 星期三

[Jenkins] 使用自動化開關後回報連線數量到 Slack

[Jenkins] 使用自動化開關後回報連線數量到 Slack 使用自動化開關 F5 LTM PoolMember 後回報連線數量到 Slack

2020年3月28日 星期六

[Debian] 安裝 fail2ban 保護linux 被Try 暴力密碼

[Debian] 安裝 fail2ban 保護linux 被Try 暴力密碼
fail2ban 是一套 Linux 安全防護套件,運作的原理是讓使用者設定需要監控的服務,例如:ssh、mysql,這些服務如果有使用者登入失敗,
會如同上面提到的,寫一條登入失敗的資訊到 log,fail2ban 會根據使用者設定去掃描有沒有像下面這種嘗試登入並且登入失敗的記錄
 

[PYTHON] 使用 python 發送訊息

[PYTHON] 使用 python 發送訊息 使用 python 發送 slack 訊息

2020年3月26日 星期四

[SHELL] 用find刪除大於45天的檔

[SHELL] 用find刪除大於45天的檔
 
 
1.刪除檔命令:
 
find 對應目錄 -mtime +天數 -name "檔案名" -exec rm -rf {} \;
 
實例命令:
 
find /home/F5/jenkins/ -mtime +45 -name "*-log-file" -exec rm -rf {} \;
 
說明:
將/home/F5/jenkins/目錄下所有45天前帶".log"的檔刪除。具體參數說明如下:
find:linux的查找命令,用戶查找指定條件的檔;
/home/F5/jenkins/:想要進行清理的任意目錄;
-mtime:標準語句寫法;
+45:查找45天前的檔,這裡用數字代表天數;
"*-log-file":希望查找的資料類型,"*.jpg"表示查找副檔名為jpg的所有檔,"*"表示查找所有檔,這個可以靈活運用,舉一反三;
-exec:固定寫法;
rm -rf:強制刪除檔,包括目錄;
{} \; :固定寫法,一對大括弧+空格+\+; 
 
2.計畫任務:
若嫌每次手動執行語句太麻煩,可以將這小語句寫到一個可執行shell腳本檔中,再設置cron調度執行,那就可以讓系統自動去清理相關檔。
 
2.1創建shell:
touch /opt/soft/bin/auto-del-45-days-ago-log.sh
chmod +x auto-del-45-days-ago-log.sh
新建一個可執行檔auto-del-45-days-ago-log.sh,並分配可運行許可權
 
2.2編輯shell腳本:
vi auto-del-30-days-ago-log.sh
編輯auto-del-30-days-ago-log.sh文件如下:
#!/bin/sh
find /home/F5/jenkins/ -mtime +45 -name "*-log-file" -exec rm -rf {} \;
ok,保存退出(:wq)。
 
2.3計畫任務:
#crontab -e
將auto-del-30-days-ago-log.sh執行腳本加入到系統計畫任務,到點自動執行
輸入:
 
10 0 * * * /home/F5/jenkins/auto-del-45-days-ago-log.sh >/dev/null 2>&1
 
這裡的設置是每天淩晨0點10分執行auto-del-45-days-ago-log.sh檔進行資料清理任務了。
 

[BASH]由bash發送訊息到slack(二)

[BASH]由bash發送訊息到slack 感謝兩個網站的貢獻

https://agoop.slack.com/apps/new/A0F7XDUAZ--incoming-webhook-
https://qiita.com/tt2004d/items/50d79d1569c0ace118d6
bash webhooks.sh 有兩組方式

2020年3月25日 星期三

[SHELL] 使用 命令 將訊息傳到 Sleck

[SHELL] 使用 命令 將訊息傳到 Sleck How to post message from command-line into Slack 感謝這個網站 https://blog.sleeplessbeastie.eu/2017/06/12/how-to-post-message-from-command-line-into-slack/ 使用定義好的webhook將命令行中的消息作為參數,標準輸入或文件發佈到Slack中,利用顏色,圖標和標記來辨識消息。

2020年3月23日 星期一

[BIG-IP-LTM] LAB TMSH 指令設定

[BIG-IP-LTM] LAB TMSH 指令設定

設定 hostname
tmsh modify sys global-settings hostname Locallab01.localdomain

建立 VLANs
tmsh create net vlan external interfaces add {1.2}
tmsh create net vlan internal interfaces add {1.1}

建立 Self IPS
tmsh create net self 172.16.1.254/24 vlan external
tmsh create net self 192.168.1.254/24 vlan internal

建立 Default Route
tmsh create net route Default_GW network 0.0.0.0/0 gw 172.16.1.254

建立 HTTP_POOL Pool
tmsh create ltm pool HTTP_POOL load-balancing-mode least-connections-member members add {192.168.1.11:80 192.168.1.12:80 192.168.1.13:80}

建立 HTTP_TEST Virtual Server
tmsh create ltm virtual HTTP_TEST destination 172.16.1.40:80 profiles add {tcp http} pool HTTP_POOL snat automap

Save the config
tmsh save sys config

2020年3月21日 星期六

[BIG-IP-LTM] 自動更新 letsencrypt 憑證及 更新LTM 上的 profile

[BIG-IP-LTM] 自動更新 letsencrypt 憑證及 更新LTM 上的 profile

有部分參考 這個網站 BIG-IP_Let'sencrypt

#!/usr/bin/env bash
# linux 主機要先更新 widecard-憑證
# 修改變數 請先到 cloudflar 取得 CF_key
# export CF_Key="YOUR_CLOUD_FLARE_API_KEY"
# export CF_Email="YOUR_CLOUD_FLARE_LOGIN_EMAIL"
# 確認自己的 要申請的憑證 網域
# DOMAIN=your-domain.com
# 網頁更新 /var/www/html/letsencrypt

    DOMAIN=bigtalk.info
    now=$(date +%Y-%m-%d)
    profile=auto_${DOMAIN}
    name=${DOMAIN}_${now}_lab_2
    dcert=${name}.crt
    dkey=${name}.key
    ocsp="letsencrypt-ocsp"
    KEYFILE="http://x.x.x.x/letsencrypt/keys/bigtalk.info.key"
    FULLCHAINFILE="http://X.X.X.X/letsencrypt/live/bigtalk.info/fullchain.pem"
        echo "key ${dkey} from file ${KEYFILE}"
        echo "key ${dcert}.crt from file ${FULLCHAINFILE}"

sleep 10

tmsh install sys crypto key ${name} from-url ${KEYFILE}
tmsh install sys crypt cert ${name} from-url ${FULLCHAINFILE}
#
sleep 2
#
tmsh modify ltm profile client-ssl ${profile} cert-key-chain replace-all-with { default { key $name cert $name } }