texs mlaku

MENU

stourl pl ori pfsense

#!/usr/bin/perl
# $Rev$
# by chudy_fernandez@yahoo.com
# Youtube updates at http://wiki.squid-cache.org/ConfigExamples/DynamicContent/YouTube/Discussion
$|=1;
while (<>) {
    @X = split;
#    $X[1] =~ s/&sig=.*//;
    $x = $X[0] . " ";
    $_ = $X[1];
    $u = $X[1];

            #photos-X.ak.fbcdn.net where X a-z
if (m/^http:\/\/photos-[a-z]?(.ak.fbcdn.net.*)/) {
    print $x . "http://photos" . $1  . "\n";

            #maps.google.com
} elsif (m/^http:\/\/(khm|mt)[0-9]?(.google.com.*)/) {
    print $x . "http://" . $1  . $2 . "\n";
   
            # compatibility for old cached get_video?video_id
} elsif (m/^http:\/\/([0-9.]{4}|.*\.youtube\.com|.*\.googlevideo\.com|.*\.video\.google\.com).*?(videoplayback\?id=.*?|video_id=.*?)\&(.*?)/) {
    $z = $2; $z =~ s/video_id=/get_video?video_id=/;
    print $x . "http://video-srv.youtube.com.SQUIDINTERNAL/" . $z . "\n";
   
            # youtube 1024p HD itag=37, 720p HD itag=22
} elsif (m/^http:\/\/([0-9.]{4}|.*\.youtube\.com|.*\.googlevideo\.com|.*\.video\.google\.com).*?\&(itag=37|itag=22).*?\&(id=[a-zA-Z0-9]*)/) {
    print $x . "http://video-srv.youtube.com.SQUIDINTERNAL/" . $2 . "&" . $3 . "\n";

            # youtube 360p itag=34 ,480p itag=35 and others
} elsif (m/^http:\/\/([0-9.]{4}|.*\.youtube\.com|.*\.googlevideo\.com|.*\.video\.google\.com).*?\&(itag=[0-9]*).*?\&(id=[a-zA-Z0-9]*)/) {
    print $x . "http://video-srv.youtube.com.SQUIDINTERNAL/" . $3 . "\n";

} elsif (m/^http:\/\/www\.google-analytics\.com\/__utm\.gif\?.*/) {
    print $x . "http://www.google-analytics.com/__utm.gif\n";

            #Cache High Latency Ads
} elsif (m/^http:\/\/([a-z0-9.]*)(\.doubleclick\.net|\.quantserve\.com|\.googlesyndication\.com|yieldmanager|cpxinteractive)(.*)/) {
    $y = $3;$z = $2;
    for ($y) {
    s/pixel;.*/pixel/;
    s/activity;.*/activity/;
    s/(imgad[^&]*).*/\1/;
    s/;ord=[?0-9]*//;
    s/;&timestamp=[0-9]*//;
    s/[&?]correlator=[0-9]*//;
    s/&cookie=[^&]*//;
    s/&ga_hid=[^&]*//;
    s/&ga_vid=[^&]*//;
    s/&ga_sid=[^&]*//;
    # s/&prev_slotnames=[^&]*//
    # s/&u_his=[^&]*//;
    s/&dt=[^&]*//;
    s/&dtd=[^&]*//;
    s/&lmt=[^&]*//;
    s/(&alternate_ad_url=http%3A%2F%2F[^(%2F)]*)[^&]*/\1/;
    s/(&url=http%3A%2F%2F[^(%2F)]*)[^&]*/\1/;
    s/(&ref=http%3A%2F%2F[^(%2F)]*)[^&]*/\1/;
    s/(&cookie=http%3A%2F%2F[^(%2F)]*)[^&]*/\1/;
    s/[;&?]ord=[?0-9]*//;
    s/[;&]mpvid=[^&;]*//;
    s/&xpc=[^&]*//;
    # yieldmanager
    s/\?clickTag=[^&]*//;
    s/&u=[^&]*//;
    s/&slotname=[^&]*//;
    s/&page_slots=[^&]*//;
    }
    print $x . "http://" . $1 . $2 . $y . "\n";

            #cache high latency ads
} elsif (m/^http:\/\/(.*?)\/(ads)\?(.*?)/) {
    print $x . "http://" . $1 . "/" . $2  . "\n";

} elsif (m/^http:\/\/(www\.ziddu\.com.*\.[^\/]{3,4})\/(.*?)/) {
    print $x . "http://" . $1 . "\n";

            #cdn, varialble 1st path
} elsif (($u =~ /filehippo/) && (m/^http:\/\/(.*?)\.(.*?)\/(.*?)\/(.*)\.([a-z0-9]{3,4})(\?.*)?/)) {
    @y = ($1,$2,$4,$5);
    $y[0] =~ s/[a-z0-9]{2,5}/cdn./;
    print $x . "http://" . $y[0] . $y[1] . "/" . $y[2] . "." . $y[3] . "\n";

            #rapidshare
} elsif (($u =~ /rapidshare/) && (m/^http:\/\/(([A-Za-z]+[0-9-.]+)*?)([a-z]*\.[^\/]{3}\/[a-z]*\/[0-9]*)\/(.*?)\/([^\/\?\&]{4,})$/)) {
    print $x . "http://cdn." . $3 . "/SQUIDINTERNAL/" . $5 . "\n";

} elsif (($u =~ /maxporn/) && (m/^http:\/\/([^\/]*?)\/(.*?)\/([^\/]*?)(\?.*)?$/)) {
    print $x . "http://" . $1 . "/SQUIDINTERNAL/" . $3 . "\n";
   
            #domain/path/.*/path/filename
} elsif (($u =~ /fucktube/) && (m/^http:\/\/(.*?)(\.[^\.\-]*?[^\/]*\/[^\/]*)\/(.*)\/([^\/]*)\/([^\/\?\&]*)\.([^\/\?\&]{3,4})(\?.*?)$/)) {
    @y = ($1,$2,$4,$5,$6);
    $y[0] =~ s/(([a-zA-A]+[0-9]+(-[a-zA-Z])?$)|([^\.]*cdn[^\.]*)|([^\.]*cache[^\.]*))/cdn/;
    print $x . "http://" . $y[0] . $y[1] . "/" . $y[2] . "/" . $y[3] . "." . $y[4] . "\n";

            #like porn hub variables url and center part of the path, filename etention 3 or 4 with or without ? at the end
} elsif (($u =~ /tube8|pornhub|xvideos/) && (m/^http:\/\/(([A-Za-z]+[0-9-.]+)*?(\.[a-z]*)?)\.([a-z]*[0-9]?\.[^\/]{3}\/[a-z]*)(.*?)((\/[a-z]*)?(\/[^\/]*){4}\.[^\/\?]{3,4})(\?.*)?$/)) {
    print $x . "http://cdn." . $4 . $6 . "\n";

            #for yimg.com video
} elsif (m/^http:\/\/(.*yimg.com)\/\/(.*)\/([^\/\?\&]*\/[^\/\?\&]*\.[^\/\?\&]{3,4})(\?.*)?$/) {
    print $x . "http://cdn.yimg.com//" . $3 . "\n";
   
            #for yimg.com doubled
} elsif (m/^http:\/\/(.*?)\.yimg\.com\/(.*?)\.yimg\.com\/(.*?)\?(.*)/) {
    print $x . "http://cdn.yimg.com/"  . $3 . "\n";

            #for yimg.com with &sig=
} elsif (m/^http:\/\/([^\.]*)\.yimg\.com\/(.*)/) {
    @y = ($1,$2);
    $y[0] =~ s/[a-z]+([0-9]+)?/cdn/;
    $y[1] =~ s/&sig=.*//;
    print $x . "http://" . $y[0] . ".yimg.com/"  . $y[1] . "\n";
           
            #youjizz. We use only domain and filename
} elsif (($u =~ /media[0-9]{1,5}\.youjizz/) && (m/^http:\/\/(.*?)(\.[^\.\-]*?\.[^\/]*)\/(.*)\/([^\/\?\&]*)\.([^\/\?\&]{3,4})(\?.*?)$/)) {
    @y = ($1,$2,$4,$5);
    $y[0] =~ s/(([a-zA-A]+[0-9]+(-[a-zA-Z])?$)|([^\.]*cdn[^\.]*)|([^\.]*cache[^\.]*))/cdn/;
    print $x . "http://" . $y[0] . $y[1] . "/" . $y[2] . "." . $y[3] . "\n";

            #general purpose for cdn servers. add above your specific servers.
} elsif (m/^http:\/\/([0-9.]*?)\/\/(.*?)\.(.*)\?(.*?)/) {
    print $x . "http://squid-cdn-url//" . $2  . "." . $3 . "\n";

            # spicific extention
# } elsif (m/^http:\/\/(.*?)\.(jp(e?g|e|2)|gif|png|tiff?|bmp|ico|flv|wmv|3gp|mp(4|3)|exe|msi|zip|on2|mar|swf).*?/) {
    # @y = ($1,$2);
    # $y[0] =~ s/((cache|cdn)[-\d]*)|([a-zA-A]+-?[0-9]+(-[a-zA-Z]*)?)/cdn/;
    # print $x . "http://" . $y[0] . "." . $y[1] . "\n";

            #generic http://variable.domain.com/path/filename."ex", "ext" or "exte"
            #http://cdn1-28.projectplaylist.com
            #http://s1sdlod041.bcst.cdn.s1s.yimg.com
} elsif (m/^http:\/\/(.*?)(\.[^\.\-]*?\..*?)\/([^\?\&\=]*)\.([\w\d]{2,4})\??.*$/) {
    @y = ($1,$2,$3,$4);
    $y[0] =~ s/([a-z][0-9][a-z]dlod[\d]{3})|((cache|cdn)[-\d]*)|([a-zA-A]+-?[0-9]+(-[a-zA-Z]*)?)/cdn/;
    print $x . "storeurl://" . $y[0] . $y[1] . "/" . $y[2] . "." . $y[3] . "\n";

            # all that ends with ;
} elsif (m/^http:\/\/(.*?)\/(.*?)\;(.*)/) {
    print $x . "http://" . $1 . "/" . $2  . "\n";

} else {
    print $x . $_ . "\n";
}
}




forum  http://forum.pfsense.org/index.php/topic,46536.45.html

ganti local domain

pfSense 2.0 RC1 - Sesuaikan Halaman Portal Captive dan menerapkan HTTPS

Pengantar
Dalam posting sebelumnya pfSense 2.0 RC1 Konfigurasi Captive Portal untuk tamu dengan Manajemen Pengguna Lokal kami dikonfigurasi Portal Captive dasar. Sekarang saya ingin sedikit menyesuaikan halaman web yang disajikan kepada para tamu. Pengguna akan mengirimkan identitasnya, dan lebih baik untuk menggunakan HTTPS, itu sebabnya akan akan mengkonfigurasi juga.
Skenario
Saya ingin menyesuaikan halaman menempatkan warna kustom dan logo. Apalagi halaman default tidak memiliki bidang voucher yang tersedia, dan saya ingin ini juga. Pemberian akses untuk tamu, harus mengikuti beberapa aturan, Kebijakan Penggunaan Acceptable sehingga yang harus diakui sangat cocok untuk halaman tersebut
Anda dapat melihat halaman default di bawah ini


Konfigurasi
Sertifikat untuk HTTPS / SSL
Pergi ke System> Cert Manajer

Pada daun CAs, pilih Create dan Otoritas Sertifikat internal. Isi formulir untuk likings Anda. Membuat catatan dari nama umum dan nama deskriptif.

Pergi ke daun Sertifikat, dan Buat Sertifikat internal, mengisi formulir. Nama umum untuk sertifikat harus sesuai dengan nama firewall. Dalam kasus saya itu pfSense.localdomain. Juga perhatikan nama deskriptif sertifikat.

Ekspor Sertifikat
Pada daun CA klik pada segitiga menunjuk ke bawah dengan rollover Info ekspor ca.

Pada daun Sertifikat, klik pada kedua segitiga menunjuk ke bawah untuk Cert Portal Captivate.

Anda akan berakhir dengan tiga file dengan nama yang mirip dengan ini

Rekam DNS
Pergi ke Layanan> Forwarder DNS

Menambahkan catatan baru yang akan menggantikan hasil dari forwarder

Masukkan Host, Domain, Alamat IP dan Deskripsi. Dalam kasus saya host adalah pfSense, domain adalah localdomain, alamat IP adalah IP yang digunakan oleh pfSense untuk jaringan Guest dan saya telah memasukkan beberapa deskripsi yang berguna.

Masukan data Sertifikat di bidang
Sekarang buka sertifikat di editor teks favorit Anda. Saya telah menggunakan Notepad + +, dan copy dan paste konten dalam Layanan> halaman Portal Captive.

Tempel Captive Portal + + Cert.crt di bagian sertifikat HTTPS
Tempel Captive Portal + + Cert.key di bagian kunci HTTPS swasta
Tempel Captive Portal + + CA.cert di bagian sertifikat antara HTTPS

Simpan konfigurasi Anda.
Upload logo
Pergi ke daun Manajer file dari portal Captive. Klik pada tanda +. Dan pilih gambar logo Anda.
Kemudian klik pada tombol Upload.
Ambil catatan dari nama gambar, jika berbeda dari yang digunakan dalam halaman Anda memperbaruinya sebelum upload.


Upload halaman
Kembali ke daun Captive portal, dan gulir ke bawah ke bagian isi halaman Portal.
Klik tombol Pilih File dan pilih file halaman Anda. Lakukan hal yang sama untuk Otentikasi halaman kesalahan isi halaman dengan halaman index_error.html. Simpan konfigurasi Anda.

Penjelasan
Saya telah menggunakan membangun di Certificate Manager, karena ia bekerja untuk saya. Alternatifnya adalah dengan menggunakan OpenSSL seperti yang dijelaskan dalam forum pfSense. Hal ini berkaitan erat dengan catatan DNS.
Dengan menyesuaikan laman bisa merek mereka dan pada saat yang sama membuat tampilan perusahaan yang lebih dan merasa. Membuka lapangan voucher pertama kali melangkah ke pos berikutnya. Ada topik utama akan konfigurasi voucher dan otentikasi RADIUS.
Tentang kode halaman:
Index.html
<style type="text/css"> membuat latar belakang hitam.
<img src="captiveportal-logo.png" alt="logo"/> menambahkan Image
align="right"> Voucher <td: </ td> <td align="left"> <input type="text" name="auth_voucher" style="border: 1px dashed;"> menambahkan bidang Vaucher
<textarea Id="aup" name="aup" rows="15" cols="50"> menambahkan Acceptable Use Policy, saya sudah meminjam ini dari Cara: Menggunakan m0n0wall untuk membuat Portal Captive Wireless - Langkah 4: Buat Page Portal Captive .
Anda dapat melihat halaman asli di sini: http://www.smallnetbuilder.com/images_old/myimages/howto/captiveportal/portal.htm
<script type="text/javascript"> - memaksa tamu untuk menerima kebijakan penggunaan. Saya telah meminjam kode ini dari Hanya menyerahkan jika setidaknya satu kotak centang dicentang contoh, dan dengan sedikit bantuan dari seorang teman terintegrasi ke dalam formulir ini.
<html>
<style type="text/css">
body {
background-color: # 000;
}
tubuh, td, th {
color: # 090;
}
</ Style>
<body>
<form method="post" action="$PORTAL_ACTION$" onsubmit="return CheckBoxesValidations() ;">
<input type="hidden" name="redirurl" value="$PORTAL_REDIRURL$">
<center>
<center>
<img src="captiveportal-logo.png" alt="logo"/>
</ Center>
<table cellpadding="6" cellspacing="0" width="550" height="380" style="border:1px padat #000000">
<tr height="10" bgcolor="#990000">
<td bgcolor="#663366" style="border-bottom:1px #000000"> padat
<font color='white'>
<b>
Stefcho yang captive Portal
</ B>
</ Font>
</ Td>
</ Tr>
<tr>
<td>
<div id="mainlevel">
<center>
<table width="100%" border="0" cellpadding="5" cellspacing="0">
<tr>
<td>
<center>
<div id="mainarea">
<center>
<table width="100%" border="0" cellpadding="5" cellspacing="5">
<tr>
<td>
<div id="maindivarea">
<center>
<div id='statusbox'>
color='red' <font face='arial' size='+1'>
<b>
</ B>
</ Font>
</ Div>
<br/>
<div id='loginbox'>
<table>
<tr> <td colspan="2"> <center> Selamat Datang Portal Jaringan Wireless Captive yang Stefcho itu </ td>! </ tr>
<tr> <td colspan="2"> <center> Masukkan Kredensial Pengguna, atau Kode Voucher untuk mendapatkan akses </ td>. </ tr>
<tr> <td> </ td> </ tr>
<tr> <td align="right"> Username: </ td> <td align="left"> <input type="text" name="auth_user" style="border: 1px dashed;"> </ td > </ tr>
<tr> <td align="right"> Password: </ td> <td align="left"> <input name="auth_pass" type="password" style="border: 1px dashed;"> </ td > </ tr>
<tr> <td> </ td> </ tr>
<tr> <td Voucher align="right">: </ td> <td align="left"> <input type="text" name="auth_voucher" style="border: 1px dashed;"> </ td > </ tr>
<tr> <td> </ td> <td> <tr> <td> </ td> <td>
<tr> <td> </ td> <td> <tr> <td> </ td> <td>
<P Align="center"> <textarea id="aup" name="aup" rows="15" cols="50"> Acceptable Use Policy (AUP).
</ TEXTAREA>
</ Td> </ tr>
</ Tr>
</ Table>
<input id="iagree" type="checkbox" name="CHKBOX1" value="1"> Terima </ p>
<input type="submit" name="accept" value="Continue">
</ Div>
</ Center>
</ Div>
</ Td>
</ Tr>
</ Table>
</ Center>
</ Div>
</ Center>
</ Td>
</ Tr>
</ Table>
</ Center>
</ Div>
</ Td>
</ Tr>
</ Table>
</ Center>
</ Form>
<script type="text/javascript">
Fungsi CheckBoxesValidations ()
{
if (document.getElementById ('iagree'). diperiksa == false)
{
alert ("Silahkan membaca dan menerima perjanjian Pengguna untuk melanjutkan!");
return false;
}
lain
return true;
}
</ Script>
</ Body>
</ Html>
Index_error.html - Satu-satunya perubahan di sini adalah penambahan "kredensial tidak valid.". Saya tidak menambahkan "$ $ PORTAL_MESSAGE", karena itu untuk RADIUS saja.
Isi dari file HTML / PHP yang Anda upload di sini ditampilkan bila kesalahan otentikasi terjadi. Anda mungkin termasuk "$ $ PORTAL_MESSAGE", yang akan digantikan oleh pesan kesalahan atau balasan dari server RADIUS, jika ada.
<tr>
<td>
<div id="mainlevel">
<center>
<table width="100%" border="0" cellpadding="5" cellspacing="0">
<tr>
<td>
<center>
<div id="mainarea">
<center>
<table width="100%" border="0" cellpadding="5" cellspacing="5">
<tr>
<td>
<div id="maindivarea">
<center>
<div id='statusbox'>
color='red' <font face='arial' size='+1'>
<b>
Valid kredensial ditentukan.
</ B>
</ Font>
</ Div>
<br/>
Anda dapat men-download halaman saya dari sini:

indeks

index_error

Pengujian
Hubungkan ke jaringan tamu dan mencoba untuk membuka halaman web. Anda akan melihat peringatan tentang sertifikat Anda, pergi di atasnya. Sekarang Anda seharusnya melihat halaman baru kustom Anda. Masukkan username dan password, melihat Acceptable Use Policy dan Klik pada kotak centang Terima. Kemudian pada tombol Continue. Jika Anda tidak mencentang kotak centang Terima pesan peringatan akan muncul jendela, yang akan memberitahu Anda bahwa Anda harus menerima kebijakan yang pertama.

Dalam hal ini Anda sengaja atau tidak mistype nama pengguna dan / atau sandi, Anda akan melihat di kredensial tidak valid merah ditentukan. Sekarang Anda dapat mencoba untuk memasukkan sekali lagi.

Setelah log sukses dalam Anda akan memiliki akses internet, dan pada Status> halaman portal Captive Anda akan dapat melihat saat ini login pengguna.

Isu
DNS record mengejutkan saya karena saya belum menggunakannya sampai sekarang.
Referensi
Berikut adalah beberapa bahan yang bisa membantu Anda mengembangkan Pages Captive Portal:
http://doc.pfsense.org/index.php/Category:Captive_Portal
Gratis, dingin, dan mudah Captive Portal (Guest Portal)
Cara: Menggunakan m0n0wall untuk membuat Portal Captive Wireless - Langkah 4: Buat Page Portal Captive
pfSense: Sunting Portal Captive Logo
Как в pfsense 2.0 сделать Captive portal доступным из разных сетей
Установка и настройка Wi-FI HOT-SPOT системы на примере программного роутера pfSense 2.0. (Часть 1)
Dasar yang baik untuk Acceptable Use Policy:
Acceptable Use Policy untuk Jaringan Wireless
Acceptable Use Policy untuk Wireless Access
Acceptable Use Policy

Kesimpulan
Sekarang kita telah lebih baik mencari halaman ditampilkan kepada tamu kami, dan dikomunikasikan dengan baik Acceptable Use Policy dari Jaringan Guest. Mandat dari pengguna kami yang ditransfer menggunakan cannel SSL dan tidak dalam teks biasa.

/usr/local/etc/squid/refresh.conf

Ringkasan ini tidak tersedia. Harap klik di sini untuk melihat postingan.

/usr/local/etc/squid/include.conf

Ringkasan ini tidak tersedia. Harap klik di sini untuk melihat postingan.

rincian delay pool

Latar Belakang

Bandwidth merupakan barang yang mahal. Untuk saat ini kisaran 64 kps dihargai sekitar 4 jt perbulan. Permasalahnnya bandwith 64 kbits itu bukan nilai yang besar. Rata-rata yang didapat pelanggan adalah 64 1:2. Artinya 1 jalur 64 kbits digunakan untuk 2 pelanggan sekaligus.
Sudah bandwidthnya dibatasi terkadang pula disisi user ada yang bertingkah seenaknya. Merasa ada koneksi internet gratis, beberapa user mulai menggunakannya untuk membuka situs-situs tertentu atau mengkoleksi file-file tertentu. Tentu saja alokasi bandwidth yang tersedia semakin menyusut. Yang merasakan adalah golongan user yang biasa-biasa saja (bukan mania internet), mereka hanya bisa mengelus dada.
Untuk mengatasi hal diatas, agar setiap user mendapat bandwidth yang cukup, bisa digunakan aplikasi squid proxy server.

Pelaksanaan

Sebelum mulai mengkonfigurasi delay pools, harus dipersiapkan terlebih dahulu aplikasi squid yang sudah dikompilasi dengn support delay pools. Beberapa distro besar seperti RedHat/Mandrake biasanya sudah di atur support delay pools.
Bila tidak dapat dikompilasi sendiri sebagai berikut
./configure --enable-delay-pools
make
make install

konfigurasi

File konfigurasi squid adalah squid.conf
ada beberapa tag konfigurasi untuk delay pools di squid.conf.
  1. delay_pools <jumlah>
    menyatakan berapa banyak bagian/pool yang akan dibuat
    misal delay_pools 2
  2. delay_class <bagian tipe/class>
    menentukan klas/tipe pembagian bandwith dari setiap pool. 1 pool hanya boleh memiliki 1 clas, tidak lebih atau kurang.
    bagian merupakan nomer urut dari jumlah pool didelay pool, jadi ada 1 s/d n bagian dimana n merupakan angka jumlah pada delay_pools
    tipe merupakan tipe class delay yang dipakai.
    Secara umum tipe menyatakan bagaimana cara membagi bandwidth, ada 3 tipe:
  3. tipe/class keterangan
    1 semua bandwidth yang ada akan dibagi sama rata untuk semua user squidex ada bandwidth 128 dan semua bandwith dipakai untuk browsing
    2 membatasi pemakaian bandwith dari total bandwidth yang ada, dan bandwith yang diperuntukan squid akan dibagi semua user dengan sama rata.ex ada bandwidth 128 dimana 28 kbit dipakai untuk email dan sisanya (128-28) 100 kbit dipakai untuk browsing
    3 membatasi pemakaian bandwidth dari total bandwidth yang ada, setiap network class C akan mendapat bandwidth sama besar, setiap user pernetwork akan mendapat bandwidth yang sama besar dari total bandwidth per networkex: bandwidth tersedia 512 kb, untuk browsing disediakan bandwidth 384 kb, sisanya untuk aktifitas lain. Di jaringan tersebut ada 3 departement dengan network yang berbeda misal lab (192.168.1.0/24), manajer(192.168.2.0/24), sales(192.168.3.0/24).
    nah misah oleh admin di set bahwa pernetwork mendapat jatah 128 kb/s.
    maka user di sales akan mendapat pembagian bandwidth sama besar dari total 128 kb/s.
    maka user di lab akan mendapat pembagian bandwidth sama besar dari total 128 kb/s.
    maka user di manajer akan mendapat pembagian bandwidth sama besar dari total 128 kb/s.
    misal:
    delay_class 1 2    # pool 1 memakai clas tipe 2
    delay_class 2 3    # pool 2 memakai clas tipe 3
  4. delay_access <bagian acl>
    Memberi batasan siapa saja yang boleh mempergunakan delay pools ini.
    Penting untuk diingat sebaiknya setelah menetukan batasan jangan lupa di akhiri dengan deny all.
    misal:
    delay_access 1 allow manajer
    delay_access 1 deny all
    delay_access 2 allow sales
    delay_access 2 deny all
  5. delay_parameters
    Ini adalah bagian terpenting dari delay pools memberikan aturan main setiap delay pools yang dibentuk.
    delay parameter mempunyai format yang disesuaikan dengan tipe/class yang dipakai.Tapi disetiap tipe yang dipakai ada 1 format baku yaitu restore/max.restore menunjukkan maksimum kecepatan data yang dapat dilewatkan bila harga max sudah terlampaui, dalam satuan bytes/second
    max menunjukkan besar-nya file atau bucket yang dapat dilewatkan tanpa melalui proses delay. dalam satuan bytes.
    Yang perlu diperhatikan dari satuan diatas adalah harga restore dimana kita sering menerima/menyewa/membeli bandwidth dari provider dalam satuan bits/second bukan bytes/second. Sedangkan satuan kecepatan yang ditunjukkan oleh Microsoft pada saat mendonlot file adalah bytes/sec.
    Sedangkan satuan dari harga max sudah sesuai dengan kebiasaan sehari-hari, dimana kita memberi besaran bytes pada file-file.
    1 byte = 8 bit.
    SpesialCase: -1/-1 berarti unlimited atau tidak dibatasi pada nilai restore/max
    ex: 1000/64000 harga restore sama dengan 8000 bits/sec atau 8 kbits/sec.
    Yang artinya user akan mendapat donlot brustable selama file yang akan dibuka lebih kecil dari 64 kbytes, jadi kecepatan bisa diatas 8 kbit/sec.
    Bila ternyata file yang dibuka melebihi 64 bytes, maka proses limitasi akan segera dimulai dengan membatasi kecepatan maksimal 8 kbits/s.
    class 1
    delay_parameters <#pool individual> ex: delay_parameters 1 1000/64000 Berarti semua network akan mendapat bandwidth yang sama di pool no 1. Sebesar 1 kbytes/sec (8 kbits/sec), dengan burstable file 64 kb.
    class 2
    delay_parameters <#pool agregate individual> ex: delay_parameters 1 32000/32000 1000/64000 Berarti squid akan memakai bandwidth maksimum (32000*8) 256kbits dari semua bandwidth. Bila terdapat lebih dari 1 network class C, maka total yang dihabiskan tetap 256 kbit/sec dan tiap user akan mendapat bandwidth maksimum 1 kbytes/sec (8 kbits/sec), dengan burstable file 64 kb.
    class 3
    delay_parameters <#pool agregate network individual> ex: delay_parameters 1 32000/32000 8000/8000 1000/64000 Berarti squid akan memakai bandwidth maksimum (32000*8) 256kbits dari semua bandwidth. Bila terdapat lebih dari 1 network class C, maka setiap network akan dipaksa maksimum sebesar (8000*8) 64 kbits/sec dan tiap user pada satu network akan mendapat bandwidth maksimum 1 kbytes/sec (8 kbits/sec), dengan burstable file 64 kb.

Contoh 1

dalam 1 network dengan penggunaan bandwidth total tidak dibatasi terdapat beberapa komputer dengan klasifikasi sebagai berikut
  • admin, server dengan bandwidth unlimited
  • staff dengan bandwidth 1,5 kbytes/sec, bila file yang diakses melebihi 64Kbte
  • umum dengan bandwidth 1 kbytes/sec, bila file yang diakses melebihi 32 Kbyte
acl all src 0.0.0.0/0.0.0.0
acl admin src 192.168.1.250/255.255.255.255
acl server src 192.168.1.251/255.255.255.255
acl umum src 192.168.1.0/255.255.255.0
acl staff src 192.168.1.1 192.168.1.111 192.168.1.2 192.168.1.4 192.168.1.71

delay_pools 3

delay_class 1 1
delay_parameters 1 -1/-1
delay_access 1 allow admin
delay_access 1 allow server
delay_access 1 deny all

delay_class  2 1
delay_parameters 2 1500/64000
delay_access 2 allow staf
delay_access 2 deny all

delay_class  3 1
delay_parameters 3 1000/32000
delay_access 3 allow umum
delay_access 3 deny all
Cara mencobanya paling mudah adalah dengan menggunakan donlot manajer semacam DAP, GetRight maka akan terlihat bandwidth sudah dibatasi.

Contoh 2

Delay pools juga dapat digunakan untuk membatasi donlot file untuk extensi tertentu.
Gunakan ACL url_regex untuk mengatasi hal ini.
Contoh dibawah digunakan untuk membatasi donlot file multimedia hingga 1 kByte/sec.
acl multimedia url_regex -i .mp3$ .rm$ .mpg$ .mpeg$ .avi$ .dat$
delay_pools 1
delay_class 1 1
delay_parameters 1 1000/16000
delay_access 1 allow multimedia
delay_access 1 deny ALL
Bila masih ada file yang lolos dari delaypools, coba ubah regex menjadi
acl multimedia url_regex -i \.mp3 \.rm \.mpg \.mpeg \.avi \.dat

Contoh 3 dari forum.linux.or.id

bagaimana caranya membuat delay pools untuk membatasi download di siang hari untuk 15 klient sedangkan malam harinya lost asumsi jamnya ( 10:00 – 21:00)
acl LTIME time SMTWHFA 10:00-21:00

acl download url_regex -i ftp .exe$ .mp3$ .mp4$ .tar.gz$ .gz$ .tar.bz2$ .rpm$ .zip$ .rar$
acl download url_regex -i .avi$ .mpg$ .mpeg$ .rm$ .iso$ .wav$ .mov$ .dat$ .mpe$ .mid$
acl download url_regex -i .midi$ .rmi$ .wma$ .wmv$ .ogg$ .ogm$ .m1v$ .mp2$ .mpa$ .wax$
acl download url_regex -i .m3u$ .asx$ .wpl$ .wmx$ .dvr-ms$ .snd$ .au$ .aif$ .asf$ .m2v$
acl download url_regex -i .m2p$ .ts$ .tp$ .trp$ .div$ .divx$ .mod$ .vob$ .aob$ .dts$
acl download url_regex -i .ac3$ .cda$ .vro$ .deb$

delay_pools 1

delay_class 1 1
delay_parameters 1 3000/3000
delay_access 1 allow download TIME
delay_access 1 deny all

Contoh 4

Bagaimana caranya membuat delay pools untuk membatasi download di siang hari dengan speed … dan malam hari dengan speed …, abis si bozz malem-nya mau pakai buat dolot.
Jadi pengennya pas malam bw buat user makin kecil, bukan malah di loss
acl JAM_KANTOR time SMTWHFA 07:00-18:00

delay_pools 2 delay_class 1 2
delay_parameters 1 24000/32000 -1/-1
delay_access 1 allow riset JAM_KANTOR
delay_access 1 deny all

delay_class 1 2
delay_parameters 2 8000/8000 -1/-1
delay_access 2 allow riset !JAM_KANTOR
delay_access 2 deny all

Contoh 5

Saya ada bandwidth besar, 1mbps.
Ingin membatasi yang donlot file besar di atas 5mbyte, di beri speed 32kbps.
Misal bila ada 3 user yang donlot, tiap-tiap user akan mendapat bw maximal 32kbps.
acl user src 192.168.1.0/24

delay_pools 1
delay_class 1 2
delay_parameters 1 40000/10000000 4000/5000000
delay_access 1 allow user download
delay_access 1 deny ALL

Contoh 6 limit youtube untuk memaksa caching terhadap youtube ( sesuai wiki.squid-cache.org )

acl youtube dstdomain -i .youtube.com
acl striming url_regex -i get_video?video_id videodownload?
cache allow youtube
cache allow striming
dan harap di ingat untuk posisi tsb di atas sebaiknya diletakkan sebelum hierarchy_stoplist
kemudian bisa di gabung ke delay_pool juga
delay_class 2 3
delay_access 2 allow warnet striming
delay_access 2 deny all
delay_parameters 2 -1/-1 -1/-1 3000/200000
hasilnya :
Connection: 0x7f1da510
FD 149, read 555, wrote 6508975
FD desc: http://ash-v97.ash.youtube.com/get_video?video_id=YXF72VCyt5M
in: buf 0x7fe65000, offset 0, size 4096
peer: 192.168.0.111:3317
me: 127.0.0.1:3127
nrequests: 1
defer: n 0, until 0
uri http://ash-v97.ash.youtube.com/get_video?video_id=YXF72VCyt5M
log_type TCP_MISS
out.offset 6508872, out.size 6508975
req_sz 555
entry 0x7d24e240/599CDB16D8D8DCB1395E960CD807BD8B
old_entry 0x0/N/A
start 1193286572.113589 (2131.525289 seconds ago)
username -
delay_pool 2 <= terkena delay
untuk delay_pool saya tidak menggunakan domain youtube.com, karena ternyata untuk url streaming nya sebagian hanya menggunakan ip address biasa, sehingga menggunakan regex spt di atas saya rasa lebih efektif.
silakan di eksperimen sendiri untuk regex nya, bisa dg menganalisa access.log atau kalau yg gampang menggunakan sqstat spt yg pernah di post di thread sebelah.

Contoh 7 dari forum.linux.or.id

rekans,
untuk policy yang diharapkan adalah,
download file mp3 dan 3gp sebesar 1KBps baik pada jam kerja maupun di luar jam kerja
akses dmz baik pada jam kerja maupun di luar jam kerja 64KBps
akses internet pada jam kerja 32KBps
akses internet di luar jam kerja 4KBps
acl download urlpath_regex -i .mp3$ .3gp$
acl localnet src 192.168.0.0/24
acl dmz dst 202.202.202.0/24
acl onpeak time MTWHF 08:00-18:00
delay_pools 4
delay_class 1 1
delay_parameters 1 1000/1000
delay_access 1 allow download
delay_access 1 allow localnet
delay_access 1 deny all
delay_class 2 1
delay_parameters 2 4000/4000
delay_access 2 allow localnet
delay_access 2 allow !dmz
delay_access 2 allow !onpeak
delay_access 2 deny all
delay_class 3 1
delay_parameters 3 64000/64000
delay_access 2 allow localnet
delay_access 3 allow dmz
delay_access 3 deny all
delay_class 4 1
delay_parameters 4 320000/320000
delay_access 4 allow localnet
delay_access 4 deny all

sepertinya nested policy tersebut urutannya ngga beres atau ada parameter yang kurang jadi sekarang dapet default 4KBps
mohon pencerahannya
Jawab :
delay_pools 4

delay_class 1 1
delay_parameters 1 1000/1000
delay_access 1 allow download
delay_access 1 deny all

delay_class 2 1
delay_parameters 2 64000/64000
delay_access 2 allow dmz
delay_access 2 deny all

delay_class 3 1
delay_parameters 3 4000/4000
delay_access 3 allow !dmz !onpeak
delay_access 3 deny all

delay_class 4 1
delay_parameters 4 320000/320000
delay_access 4 allow localnet
delay_access 4 deny all

Sumber

www.google.com
www.squid-cache.org
No related posts.

youtube no range

Ringkasan ini tidak tersedia. Harap klik di sini untuk melihat postingan.