Bash Script Örnekleri (Harf Sırala)

Bash script ile gündelik hayatınızı kolaylaştıracak betikler yazabililirsiniz. Bazen insanların işelerini kolaylaştıran scripler özel armağanlar oluşturabiliyor.

Aşağıdaki script kullanılarak harflerin karıştırıldığı üçgen bir matris çıktısına sahip output alabilirsiniz. Ben ne için mi kullandım 🙂 Okumaya devam et “Bash Script Örnekleri (Harf Sırala)”

IT Security Baseline – 2 (Microsoft 2003 server- IIS)

Bir çok kurumda kurulu işletim sistemleri cihazların minimum güvenlik seviyeleri belirli aralıklarla kontrol edilmektedir. Kurumlar kendi oluşturdukları güvenlik listeleri yada internetten buldukları listelerle bu kontrol maddelerinin üzerinden geçmektedirler.

Zamanında oluşturduğum kontrol listelerini sizlerle paylaşmak istiyorum. Tamamen Türkçe ve sizlerin eklemesine geliştirmesine açık.

Microsoft-2003-server-iis-CheckList-v0.0

Web Server Load Balance Tespiti

Penetration testlerinde kullanılmak üzere derlediğim basit bir script;

Amacı web sunucudan istenilen sayı kadar istek yapılmasını sağlamak ve sadece date bilgisi bize göstermek.

İki amaçlı kullanımı var eğer gelen zamanlarda farklılıklar görürseniz anlayabilirsinizki cevabı load amaçlı konulmuş bir baska server vermiştir. Load balance tespitinde kullanılabilecek bir araç. Diger bir amaç ise web serverınız üzerinde stress yaratmak içinde kullanılabilinir.

#!/bin/bash
# webserver time graber for Load blancing test
# writen by savas saygili
echo -e "\033[1;33m----------------------------------------------------------\033[0m" "\033[41m Usage\033[0m" "\033[1;33m-------------------------------------------------------\033[0m"
echo Usage ./checkdate.sh www.google.com
echo -e "\033[1;33m-------------------------------------\033[0m" "\033[41m Webserver Time Graber for Load blancing test\033[0m" "\033[1;33m-------------------------------------\033[0m"

TARGET=$1
TIMES=10
echo "Connecting to [$TARGET] [$TIMES] times";
for ((i=0; i<$TIMES; i++)); do
 echo -e 'HEAD / HTTP/1.0\r\n\r\n' | nc $TARGET 80 | grep 'Date:';
done

Diğer bir hoşuma giden strees test araçı ise curl kullanımı ile ilgili basit örnekler aşagıda verilmiştir.

curl -s "http://www.microsoft.com?[1-10]"

Yukarıdaki komut sayesinde web sayfasını 10 kez cağırmış olduk. [1-10000] yazarak sayfanın 10000 kere çağrılmasını sağlayabilirsiniz.

Yapılan testin performansını görmek için “time” komutu kullanılabilinir.

time curl -s "http://www.microsoft.com/?[1-1000]"

Curl ile ilgili verilen örnek kullanımlar http://servermonitoringhq.com sayfasından alınmıştır. Curl kullanımının ayrıntılı örneklerine orjinal sayfadan ulaşmak için aşağıdaki linke tıklayabilirsiniz.

How to quickly stress test a web server

Bash Script İçin Renk Paleti

Geliştirdiğiniz Bash scriplerin içerisinde uyarı komutlarını görsel olarak renklendirmek istediginizde scripte renklerin nasıl eklendiğini sizlere sunan basit bir renk palet scripti.

Screenshot-12912-1243-AM-2

#!/bin/bash
#color chooser
#writen by savas saygili

echo -e "--------------------------------" "\033[41m Savas Saygili Renk Secici \033[0m" "--------------------------" 
echo "| Number | Code                   | Result | Number | Code                   | Result |"
echo "---------------------------------------------------------------------------------------"
echo -e "|" 4 "     |" \033[4mSavsay\033[0m  "    | \033[4mSavsay\033[0m |" 5 "     |" \033[5mSavsay\033[0m "    | \033[5mSavsay\033[0m |" 
echo -e "|" 6 "     |" \033[6mSavsay\033[0m  "    | \033[6mSavsay\033[0m |" 7 "     |" \033[7mSavsay\033[0m "    | \033[7mSavsay\033[0m |"
echo -e "|" 30"     |" \033[30mSavsay\033[0m "   | \033[30mSavsay\033[0m |" 31"     |" \033[31mSavsay\033[0m"    | \033[31mSavsay\033[0m |"
echo -e "|" 32"     |" \033[32mSavsay\033[0m "   | \033[32mSavsay\033[0m |" 33"     |" \033[33mSavsay\033[0m"    | \033[33mSavsay\033[0m |"
echo -e "|" 34"     |" \033[34mSavsay\033[0m "   | \033[34mSavsay\033[0m |" 35"     |" \033[35mSavsay\033[0m"    | \033[35mSavsay\033[0m |"
echo -e "|" 36"     |" \033[36mSavsay\033[0m "   | \033[36mSavsay\033[0m |" 37"     |" \033[37mSavsay\033[0m"    | \033[37mSavsay\033[0m |"
echo -e "|" 38"     |" \033[38mSavsay\033[0m "   | \033[38mSavsay\033[0m |" 39"     |" \033[39mSavsay\033[0m"    | \033[39mSavsay\033[0m |"
echo -e "|" 40"     |" \033[40mSavsay\033[0m "   | \033[40mSavsay\033[0m |" 41"     |" \033[41mSavsay\033[0m"    | \033[41mSavsay\033[0m |"
echo -e "|" 42"     |" \033[42mSavsay\033[0m "   | \033[42mSavsay\033[0m |" 43"     |" \033[43mSavsay\033[0m"    | \033[43mSavsay\033[0m |"
echo -e "|" 44"     |" \033[44mSavsay\033[0m "   | \033[44mSavsay\033[0m |" 45"     |" \033[45mSavsay\033[0m"    | \033[45mSavsay\033[0m |"
echo -e "|" 46"     |" \033[46mSavsay\033[0m "   | \033[46mSavsay\033[0m |" 47"     |" \033[47mSavsay\033[0m"    | \033[47mSavsay\033[0m |"
echo "---------------------------------------------------------------------------------------"