Ubuntu veya Debian üzerinde WonderShaper kurulumu yapıp, upload ve download hızlarını limitlemek.
Örneğin; FTP servisi kurup, sunucuya bağlananların dosyaları çekerken sunucudan çıkış hızını ve bağlananların hızlarını limitlemeye yarar.
Renklendirilen satırları komple seçip, boş dosyaya taşıdıktan sonra .sh ekledikten sonra chmod +x dosyadi.sh komutu ile çalıştırmaya hazırlayabilirsiniz.
sudo chmod +x wondershaper_hiz_limitle.sh
./wondershaper_hiz_limitle.sh
Kurulumu kaldırmak için:
./wondershaper_hiz_limitle.sh sil
#!/bin/bash
# Oluşturulma Tarihi: 26.06.2025 14:45
# Yazar: muslu
# Açıklama: Wonder Shaper kurulum ve yapılandırma scripti
# Argümanları al
args=("$@")
# Genellikle kullanılan yolları tanımla
WONDERSHAPER_BIN_PATH="/usr/local/sbin/wondershaper"
WONDERSHAPER_CONF_PATH="/etc/systemd/wondershaper.conf"
WONDERSHAPER_SERVICE_PATH="/usr/local/lib/systemd/system/wondershaper.service"
# Çıkış mesajı
EXIT_MSG="\e[41;37mBu script, sudo veya root yetkileriyle çalıştırılmalıdır.!!\e[0m"
SUCCESS_MSG="\e[41;37mYapılandırma tamamlandı...\e[0m"
REMOVE_MSG="\e[41;37mWonder Shaper Network Limitlendirme servis kaldırıldı.!!\e[0m"
# Ekranı temizle
clear
# Superuser kontrolü
if [ "$EUID" -ne 0 ]; then
echo -e "$EXIT_MSG"
echo
echo
exit 1
fi
# Wonder Shaper’i kaldır
if [ "${args[0]}" ] && [ "${args[0]}" == "sil" ]; then
systemctl disable --now wondershaper.service >/dev/null 2>&1
systemctl stop wondershaper.service >/dev/null 2>&1
rm -rf $WONDERSHAPER_BIN_PATH
rm -rf $WONDERSHAPER_CONF_PATH
rm -rf $WONDERSHAPER_SERVICE_PATH
echo -e "$REMOVE_MSG"
echo
echo
systemctl daemon-reload
exit
fi
# Kurulum kontrolü
if [ -f "$WONDERSHAPER_BIN_PATH" ]; then
echo -e "\e[41;37mWonder Shaper zaten kurulu, yalnızca hız limit ayarları yapılandırılacak.\e[0m"
echo
echo
else
echo
echo -e "\e[41;37mWonder Shaper Network Limitlendirme hızlı kurulum scripti çalıştırılıyor...\e[0m"
echo
echo
sleep 1
# Gerekli araçları yükle
apt install git -yqq
cd /tmp
git clone https://github.com/magnific0/wondershaper.git
cd wondershaper
make install
fi
# Ekranı temizle ve arayüz ayarlarına başla
clear
echo
echo
# Mevcut ağ arayüzlerini göster
int=$(ip addr show | awk ’/inet.*brd/{print $NF}’)
echo -e "\e[34mMevcut Interfaceler:\e[0m"
echo "$int"
echo
echo
# Kullanıcıdan geçerli bir giriş alana kadar sor
while true; do
read -p $’\e[34mLütfen Interface adını giriniz: \e[0m’ intname
if echo "$int" | grep -qw "$intname"; then
break
else
echo -e "\e[41;37mGeçersiz arayüz adı, lütfen listeden birini seçiniz.\e[0m"
fi
done
# İndirme ve yükleme hızlarını al
read -p $’\e[34mLütfen atayacağınız indirme hızını Mbit türünden giriniz (Örn: 100): \e[0m’ download_speed
if [ -z "$download_speed" ]; then
download_speed=’100’
fi
read -p $’\e[34mLütfen atayacağınız yükleme hızını Mbit türünden giriniz (Örn: 50): \e[0m’ upload_speed
if [ -z "$upload_speed" ]; then
upload_speed=’50’
fi
# Saniyede indirilen veri boyutunu hesapla
download_size_mb_per_sec=$(echo "$download_speed * 0.125" | bc)
# Kullanıcıya hız bilgilerini göster
echo -e "\e[41;37mDownload Limit : $download_speed MBps\e[0m"
echo -e "\e[41;37mUpload Limit : $upload_speed MBps\e[0m"
echo -e "\e[41;37mSaniyede yaklaşık : $download_size_mb_per_sec MB\e[0m"
# Hız verilerini Kb/s cinsinden hesapla
DSPEED=$(( download_speed * 1024 ))
USPEED=$(( upload_speed * 1024 ))
# Konfigürasyon dosyasını oluştur
echo "[wondershaper]
IFACE=’$intname’
DSPEED=’$DSPEED’
USPEED=’$USPEED’" > $WONDERSHAPER_CONF_PATH
echo
echo
echo
echo
# Daemon reload ve servisi başlat
systemctl daemon-reload >/dev/null 2>&1
systemctl enable --now wondershaper >/dev/null 2>&1
systemctl restart wondershaper >/dev/null 2>&1
echo "...."
# Başarı mesajını göster
echo
echo -e "$SUCCESS_MSG"
echo
echo
Ubuntu
hakkında diğer konular