Category: Tutorial
Cara Drop UDP DNS Flooding pada Router Mikrotik
Hi guys.., :D
Apakabarnya..? semoga dalam keadaaan sehat wal'afiat tentunya.., amin. Baiklah langsung saja pada artikel kali ini ane akan sharing sedikit pengalaman ane mengenai "Cara Drop UDP DNS Fooding pada Mikrotik Router" yang beberapa hari ini sering mengganggu koneksi jaringan dikantor ane. Pada saat pertama kali kejadian sempat bingung, kenapa ya traffict upload belakangan ini terlalu besar...? Padahal client tidak ada satupun melakukan upload ke situs-situs tertentu dalam jumlah besar karena ane dapat pantau langsung ke tkp. Usut demi usut ternyata ada percobaan flooding packet dari luar melalui protocol UDP terhadap port DNS (53) IP Public ISP ane, kasusnya dapat dilihat pada gambar di bawah ini :
Monitoring flooding connection yang mencoba mengirimkan banyak package melalui protocol UDP menggunakan port DNS (53) ke IP Address Public yang kita gunakan pada router mikrotik menggunakan winbox seperti pada tampilan gambar dibawah ini.

Mengakibatkan traffict upload pun seakan-akan besar padahal client yang online hanya beberapa orang, seperti gambar di bawah ini:

Untuk mengatasi kasus seperti ini, langkah-langkah yang harus dilakukan adalah :
Create address list DNS server yang diizinkan dalam penggunaaan nantinya dan beri nama "Allow DNS" atau sesuaikan dengan kebutuhan anda, kemudian isikan alamat IP Address DNS server yang diizinkan dalam penggunaan nantinya, seperti tampilan gambar di bawah ini.

Dalam kasus kali ini nantinya ane akan menggunakan 2 buah DNS Server, dimana DNS server yang kedua dipergunakan sebagai backup untuk mengatasi jika sewaktu-waktu terjadinya downtime atau gangguan teknis lainnya pada DNS 1 dan ototmatis akan beralih ke DNS 2 dalam penggunaannya. Makanya ane meng-create-kan 2 IP address list untuk "Allow DNS" seperti pada tampilan gambar dibawah ini.

Kemudian create Filter Rules pada menu Firewall mikrotik router menggunakan winbox software yang nantinya difungsikan sebagai pemblock / drop packet DNS yang bukan berasal dari DNS yang sudah kita allow kan pada tahap sebelumnya.



Berikut Filter Rules yang telah kita create tadi yang fungsionalnya agar packet melalui port DNS selain IP Address yang telah kita allow kan tadi jika mencoba malakukan request atau flood DNS ke IP Public ISP kita pada router mikrotik, maka packet tersebut akan langsung di drop oleh pengarutan rules tersebut.

Terlihat monitoring penggunaan bandwitdh sudah tidak terlalu besar dan sewajarnya, seperti pada tampilan gambar di bawah ini

Tampilan connection packet telihat tidak begitu rame dan sudah stabil dibandingkan dengan sebelumnya.

Demikianlah pembahasan artikel kali mengenai cara "Cara Drop UDP DNS Fooding pada Mikrotik Router". Untuk pembahasan lainnya akan kita bahas pada artikel selanjutnya.
Semoga artikel kali ini bermanfaat bagi kita semua.
Tutorial Cara Cache Konten HTTP/ HTTPS dengan menggunakan Proxy EXTERNAL UBUNTU + Squid 3.5.5 Feat MIKROTIK Marsha Manihuruk
Assalammualaikum pengunjung Blog Sha Malam ini Sha ingin berbagi Tutorial Cara CacheKonten HTTPS dengan menggunakan Proxy External khusunya menggunakan Ubuntu.
Kenapa Ubuntu? nggak ada alasan spesifik sih ya cuma kayaknya banyak para master jaringan yang merekomendasikan Linux ini buat Cache Server, kenapa begitu? ya karena dukungan dan Forumnya jelas dan banyak tutorial yang di bertebaran di Google.
Nah untuk forumnya silahkan berkunjung ke sini, untuk sekedar baca-baca silahkan menuju ke sini atau ke sini, atau ke sini juga boleh.
Silahkan mendaftar dan Login di sana banyak yang anda bisa baca-baca tentang Linux jenis ini :).
Nah disini Sha nggak ngebahas cara Instal Ubuntunya nanti ada Sha share cara instal ulang Linux versi ini.
Yang Sha tekankan di Postingan ini adalah cara membuat Proxy External Ubuntu yang di isi Squid 3.5.5 Kita mampu menyimpan /Caching konten situs HTTPS.
KENAPA HTTPS harus di Cache bukannya itu mode aman biar nggak di Hack/Penyadapan Bla-bla???Bukan apa-apa sih tapi buat pemilik warnet yang masih menggunakan kecepatan yang masih belum menembus 10mb (paket standar Indihome) pasti mengerti bagaimana leletnya membuka situs populer seperti Facebook, Twitter, Youtube atau yang lazim di buka anak-anak muda saat Online di saat jam sibuk, nah kalau situs HTTPS di cache kan lumayan menambah kecepatan Loadingnya :).
Kalau situsnya masih mode HTTP sih saya pikir nggak masalah, masih bisa di cache squid versi 2.7 atau di tambahin addons nya Lusca.
Nah kalau situs yang udah model HTTPS di cache pastinya pemilik senang, pemain bahagia (cepat banget Buka Situs nya), tinggal hitung pendapatan doang hi hi.
Nah untuk versi squidnya Sha memilih versi 3.5.5 yang udah support untuk HTTPS Caching.
Ok tanpa lama-lama ini step by step nya.
Oh Iya lupa Rekomendasi untuk CPU yang akan di gunakan untuk menjadi server proxy di bawah ini:
1. Procecor Core2Duo 2,0 GHz, 2. RAM 2 atau 4 GB DDR2 atau DDR3 3. HDD SATA 500 atau 320 GB
Kok tinggi banget ya speknya??
Bukan bermaksud apa-apa cuma karena kita pengen Cache Konten HTTPS ya wajar kita make Ram segitu :), kita menekankan Performa.
Coba bayangkan sendiri saat anda memiliki mesin server Proxy Ram 512mb, Hdd 150 Gb di set untuk cache HTTPS dan di hajar 30 client?? logika nggak?
Buat Sha pribadi sih nggak kenapa? karena melayani lalu lintas yang gituan harus minimal spek yang lumayan bagus 🙂 agak layanan terasa memuaskan.
Nah disini sha memakai Hdd berkisaran 500Gb Ram 4Gb.
Pembagiannya Sha set seperti ini.
1. Primary Root (/) 100 GB EXT4 2. Logical Swap 4 GB (2X Jumlah RAM) 3. Logical mount point : /Cache1 50 GB btrfs journaling, mount option noatime+nodiratime 4. Logical mount point : /Cache2 50 GB btrfs journaling, mount option noatime+nodiratime 5. Logical mount point : /Cache3 50 GB btrfs journaling, mount option noatime+nodiratime 6. Logical mount point : /Cache4 50 GB btrfs journaling, mount option noatime+nodiratime 7. Logical mount point : /Cache5 50 GB btrfs journaling, mount option noatime+nodiratime
Setelah kamu menyelesaikan instalasi Ubuntu Server, ada beberapa hal yang perlu di seting.
Pertama adalah mengeset SSH di Ubuntu agar Putty dan WinSCP bisa login sebagai Root, tanpa itu bakalan repot (harus ketik manual di Server Ubuntu).
Ketik Perintah ini di ubuntu Servernya tanpa memakai Putty atau WinSCP karena jalur SSH ( untuk Remote ProxyServernya) dari luar belum di buka.
Masuk ke root silahkan masukkan user name Ubuntu kamu dan masukkan passwordnya setelah terbuka/ sukses silahkan ketikkan code di bawah agar jalur SSHnya terbuka.
nano /etc/ssh/sshd_config [tekan enter]
Perhatikan baik-baik cari baris seperti ini.
Authentication: LoginGraceTime 120 PermitRootLogin without-password StrictModes yes
Ubah menjadi seperti ini.
# Authentication: LoginGraceTime 120 #PermitRootLogin without-password PermitRootLogin yes StrictModes yes
Simpan settingannya dengan menekan kombinasi tombol CTRL + X dan tekan tombol enter.
Selanjutnya ketik di Terminal Ubuntunya dengan perintah seperti ini.
service ssh restart [tekan tombol enter] ssh stop/waiting ssh start/running, process 1588
Kemudian kamu akan di perintahkan membuat password Server yang baru J.
#passwd [tekan tombol enter] #enterpassword [tekan tombol enter] #enterpasswdagain [tekan tombol enter]
Proses untuk membuka port SSH Ubuntu selesai.
Selanjutnya memasuki proses yang agak lama karena update servernya hi hi, kalau kamu punya internet yang cepat ya mungkin cepat slesai kalau nggak ya kamu tinggal dulu nonton atau apalah hi -hi.
Buka Putty dari komputer yang bertugas remote Server Proxy nya, setelah terbuka silahkan login, masukkan perintah seperti ini di Putty.
apt-get update [tekan tombol enter]
Kalau Internet kamu kencang ya nggak bakalan memakan waktu lama, kalau lambat ya gitu deh hi hi.
Setelah proses update selesai kemudian ketikkan atau Copy-Paste satu persatu perintah seperti di bawah.
apt-get install devscripts build-essential openssl libssl-dev fakeroot libcppunit-dev libsasl2-dev cdbs ccze libfile-readbackwards-perl libcap2 libcap-dev libcap2-dev -y [tekan tombol enter]
apt-get install sysv-rc-conf -y [tekan tombol enter]
cd [tekan tombol enter]
wget http://www.squid-cache.org/Versions/v3/3.5/squid-3.5.5.tar.gz [tekan tombol enter]
tar xzvf squid-3.5.5.tar.gz [tekan tombol enter]
cd squid-3.5.5 [tekan tombol enter]
Setelah semua proses di atas sukses, Copy-paste perintah di bawah tanpa ada yang kurang di terminal Puttynya.
./configure \ --prefix=/usr \ --bindir=/usr/bin \ --sbindir=/usr/sbin \ --libexecdir=/usr/lib/squid \ --sysconfdir=/etc/squid \ --localstatedir=/var \ --libdir=/usr/lib \ --includedir=/usr/include \ --datadir=/usr/share/squid \ --infodir=/usr/share/info \ --mandir=/usr/share/man \ --disable-dependency-tracking \ --disable-strict-error-checking \ --enable-async-io=32 \ --with-aufs-threads=32 \ --with-pthreads \ --enable-storeio=ufs,aufs,diskd \ --enable-removal-policies=lru,heap \ --with-aio \ --with-dl \ --enable-icmp \ --enable-esi \ --enable-icap-client \ --disable-wccp \ --disable-wccpv2 \ --enable-kill-parent-hack \ --enable-cache-digests \ --disable-select \ --enable-http-violations \ --enable-linux-netfilter \ --enable-follow-x-forwarded-for \ --disable-ident-lookups \ --enable-x-accelerator-vary \ --enable-zph-qos \ --with-default-user=proxy \ --with-logdir=/var/log/squid \ --with-pidfile=/var/run/squid.pid \ --with-swapdir=/var/spool/squid \ --with-large-files \ --with-openssl \ --enable-ltdl-convenience \ --with-filedescriptors=65536 \ --enable-ssl \ --enable-ssl-crtd \ --disable-auth
Lalu kita masukkan perintah.
make && make install && make install-pinger
Mungkin proses pembuatannya agak lama kamu tinggal aja sambil ngapain gitu J.
Setelah semua selesai kamu silahkan download File Squid yang sudah Sha set, di baris squidnya udah Sha kasih komentar dimana yang kamu ganti agar sesuai dengan Kondisi jaringan kamu.
Silahkan download di sini .
Password Rar nya : marsha-manihuruk
Edit File Squid dengan menggunakan Software Notepad++
Isi File winrarnya ada 3 buah yaitu:
- Squid
- Squid.conf
- Store-id.pl
Buka Software WinSCP dan loginkan.
Copy file squid ke direktori /etc/init.d/.
Copy file squid.conf dan store-id.pl ke /etc/squid/.
Buka lagi Puttynya ketik atau copy-paste perintah di bawah satu-persatu.
chmod 755 /etc/init.d/squid update-rc.d squid defaults /etc/init.d/squid stop
Selanjutnya silahkan ketik atau copy-paste perintah di bawah di terminal Putty.
chown -R proxy:proxy /var/log/squid
cd /var/log/squid
touch access.log
touch cache.log
Buka lagi Terminal Puttynya.
Ketik atau copy-paste satu-persatu perintah di bawah.
cd
chown -R proxy:proxy /var/log/squid/access.log
chown -R proxy:proxy /var/log/squid/cache.log
chown -R proxy:proxy /cache1
chown -R proxy:proxy /cache2
chown -R proxy:proxy /cache3
chown -R proxy:proxy /cache4
chown -R proxy:proxy /cache5
chown -R proxy:proxy /etc/squid/store-id.pl
chmod 777 /cache1
chmod 777 /cache2
chmod 777 /cache3
chmod 777 /cache4
chmod 777 /cache5
chmod 777 /etc/squid/store-id.pl
Buka Lagi terminal Putty nya.
Ketik copy-paste kembali Perintah di bawah.
cd /etc/squid
mkdir ssl_cert
cd ssl_cert
openssl req -new -newkey rsa:1024 -days 365 -nodes -x509 -keyout myCA.pem -out myCA.pem
Nah itu proses pembuatan sertifikat SSL untuk cache HTTPS, silahkan masukkan manual ke browser masing-masing iyah :).
Selanjutnya.
Buka lagi Puttynya
openssl x509 -in myCA.pem -outform DER -out myCA.der
cd /
mkdir /var/squid
cd /var/squid
mkdir ssl_db
cd ssl_db
chown -R nobody /var/squid/ssl_db/
/usr/lib/squid/ssl_crtd -c -s /var/squid/ssl_db/certs
chown -R proxy:proxy /var/squid/ssl_db/
squid -k parse
squid -z
/etc/init.d/squid restart
Langkah berikutnya adalah mengatur IP Table server Ubuntu,
Buka WinSCP nya dan Buka File /etc/rc.local
Copy-paste semua Scrip di bawah ini di atas baris “exit.0” di file rc.local
modprobe xt_TPROXY modprobe xt_socket modprobe nf_tproxy_core modprobe xt_mark modprobe nf_nat modprobe nf_conntrack_ipv4 modprobe nf_conntrack modprobe nf_defrag_ipv4 modprobe ipt_REDIRECT modprobe iptable_nat iptables -t mangle -F iptables -t mangle -X iptables -t mangle -N DIVERT iptables -t mangle -A DIVERT -j MARK --set-mark 1 iptables -t mangle -A DIVERT -j ACCEPT iptables -t mangle -A INPUT -j ACCEPT iptables -t mangle -A PREROUTING -p tcp -m socket -j DIVERT iptables -t mangle -A PREROUTING ! -d xxx.xxx.xxx.xxx/24 -p tcp --dport 80 -j TPROXY --tproxy-mark 0x1/0x1 --on-port 3129 iptables -t mangle -A PREROUTING ! -d xxx.xxx.xxx.xxx/24 -p tcp --dport 443 -j TPROXY --tproxy-mark 0x1/0x1 --on-port 3127 /sbin/ip rule add fwmark 1 lookup 100 /sbin/ip route add local 0.0.0.0/0 dev lo table 100 echo 0 > /proc/sys/net/ipv4/conf/lo/rp_filter echo 1 > /proc/sys/net/ipv4/ip_forward
Ket:
xxx.xxx.xxx.xxx/24 itu ganti dengan IP server Ubuntu kamu.
Selanjutnya buka Puttynya ketik perintah.
reboot
Itu perintah untuk Merestart server Ubuntunya.
Setelah proses Rebootnya Selesai silahkan lakukan cek ulang Konfigurasi.
squid –k reconfigure
Jika sukses selamat!! kamu udah berhasil membuat server yang mampu mencaching situs HTTPS :).
Tapi jika masih ada Error silahkan lakukan langkah ini.
Error yang mungkin ada kemungkinan karena terkait dengan file store-id.pl
Hapus atau Timpa File store-id.pl yang ada di /etc/squid/ dengan yang baru (File Download yang tadi).
Lakukan lagi Perintah. di terminalPutty .
chown -R proxy:proxy /etc/squid/store-id.pl
Dan lakukan Perintah.
squid –k reconfigure
Jika semua beres tanpa ada yang error selamat kamu udah berhasil membuat server yang mampu mencache konten HTTPS.
Nah untuk mangle Mikrotik agar bisa menerima settingan Proxy Externalnya silahkan ketik atau copasscrip di bawah.
Di Firewall Mangle Mikrotik, scrip ini harus berada paling atas agar efektif.
Ket:
192.168.3.2 adalah IP Ubuntu Server.
192.168.2.0/24 adalah Network Lan.
BC-AE-C5-5C-15-61 adalah Mac-Address Proxy External Ubuntu.
Kode yang di masukkan ke Mangle Mikrotik.
/ip firewall mangle add action=mark-connection chain=prerouting comment="HTTP + HTTPS TO PROXY HIT BOOSTER" dst-port=80,8080,443 new-connection-mark=to_proxy protocol=tcp src-address=192.168.2.0/24 add chain=prerouting src-mac-address=BC-AE-C5-5C-15-61 add action=mark-routing chain=prerouting connection-mark=to_proxy new-routing-mark=tproxy_route passthrough=no /ip route add distance=1 gateway=192.168.3.2 routing-mark=tproxy_route
Selesai!!
Terimaksih sudah mau berkunjung ke blog sederhana Sha :).
Jika ada pertanyaan silahkan layangkan ke kotak komentar dengan senang hati saya akan membalas nya.
Walaikumsalam.
Source Code untuk Mengirim Pesan Lewat Telegram
Setelah kita tahu bagaimana cara bot Telegram mengirim pesan ke kita, kita dapat memulai membuat skrip sederhana untuk mengirimkan pesan ke akun Telegram kita. Adapun skrip untuk melakukan ini dalam bahasa pemrograman PHP adalah sebagai berikut :
<?php
$token_bot=”<token_bot>”;
$data[‘chat_id’]=<ID_penerima>;
$data[‘text’]=”<isi teks>”;
function kirimperintah($perintah,$token_bot,array $keterangan=null){
$url=”https://api.telegram.org/bot”.$token_bot.”/”;
$url.=$perintah.”?”;
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch,CURLOPT_POSTFIELDS,$keterangan);
$output = curl_exec($ch);
curl_close($ch);
return $output;
}
kirimperintah(“sendMessage”,$token_bot,$data);
echo ‘done’;
?>
di mana <token_bot> adalah token yang didapat ketika membuat bot, <ID_Penerima> adalah ID temen-temen sendiri dan <isi_teks> adalah pesan yang ingin dikirimkan. Adapun untuk di Windows, saya pernah coba tapi CURL-nya eror walaupun sudah diinstal. Solusinya adalah mengganti curl dengan file_get_contents, sehingga skrip-nya menjadi :
<?php
$token_bot=”<token_bot>”;
$data[‘chat_id’]=<ID_penerima>;
$data[‘text’]=”<isi teks>”;
function kirimperintah($perintah,$token_bot,array $keterangan=null){
$url=”https://api.telegram.org/bot”.$token_bot.”/”;
$url.=$perintah.”?”;
foreach ($keterangan as $k => $v) {
$url.=$k.”=”.$v.”&”;
}
$url=rtrim($url,”&”);
$result=file_get_contents($url);
return $output;
}
kirimperintah(“sendMessage”,$token_bot,$data);
echo ‘done’;
?>
Tutorial Kirim pesan telegram dengan PHP
Sebenarnya bingung mau diberi judul apa tulisan kali ini. Intinya kita akan mengirimkan pesan dengan Telegram bot menggunakan form HTML dan bahasa pemrograman PHP. Hmm daripada bingung, lebih baik lanjut nulis 😃.
Form merupakan salah satu elemen HTML yang digunakan untuk melakukan interaksi dengan pengguna, baik untuk menerima inputan ataupun mendapatkan informasi pengguna yang selanjutnya akan diproses ke dalam server aplikasi. Biasanya form ini berisi field-field yang harus diisi oleh pengguna. Selengkapnya mengenai form silahkan baca disini.
Untuk lebih jelas mengenai maksud dari tulisan ini, silahkan lihat gambar di bawah ini.

Dapat dilihat pada gambar diatas merupakan sebuah form yang akan kita gunakan untuk mengirimkan pesan Telegram. Sebenarnya tanpa form sekalipun, kita tetap bisa mengirimkan custom message atau komentar kepada pengguna dengan metode API yang disediakan oleh pihak Telegram. Jadi form ini sengaja Saya buat untuk memudahkan hal tersebut.
Langsung saja, mari kita mulai cara membuat form tersebut.
Hal-hal yang harus dipersiapkan:
- Koneksi Internet
- Web server
- Bot Telegram
- Sedikit pemahaman tentang bahasa pemrograman PHP
- Coffee
Tulisan Terkait:
– Membuat Bot Telegram untuk Personal Notifikasi
– Install LAMP pada Ubuntu 16.04 (Xenial Xerus)
Membuat Form
Buat folder di dalam root direktori web server dengan nama bots orwhatever. Pada tulisan kali ini Saya menggunakan nama bots untuk folder proyeknya. Silahkan salin kode HTML berikut ini dan simpan dengan nama index.html.
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<title>wadagizig Telegram bots</title>
<!--link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"-->
</head>
<body>
<div class="content">
<section class="content-header">
<i class="fa fa-home"></i> Home / <i class="fa fa-dashboard"></i> Dashboard / <b>wadagizig</b>
</section>
<div class="col-md-4">
<div class="box box-solid box-primary">
<div class="box-header">
<h4 class="box-title"><b>Telegram Message <i class="fa fa-send"></i></b></h4>
</div>
<div class="box-body">
<form method="post" action="sendMessage.php">
<div class="form-group row">
<label class="col-md-4 col-form-label">Telegram ID</label>
<div class="col-md-8">
<input type="text" class="form-control" name="telegram_id" placeholder="Telegram ID">
</div>
</div>
<div class="form-group row">
<label class="col-md-4 col-form-label">Messages</label>
<div class="col-md-8">
<input type="text" class="form-control" name="message_text" placeholder="Custom Text Message">
</div>
</div>
<button type="submit" class="btn btn-primary pull-right">Send <i class="fa fa-send"></i></button>
</form>
</div>
</div>
</div>
</div>
</body>
</html>
<form method=”post” action=”sendMessage.php”>
<?php
/* -----------------------------------------------------
Simple PHP script for Sending Telegram Bot Message
~ Iky | https://www.wadagizig.com
------------------------------------------------------ */
function sendMessage($telegram_id, $message_text, $secret_token) {
$url = "https://api.telegram.org/bot" . $secret_token . "/sendMessage?parse_mode=markdown&chat_id=" . $telegram_id;
$url = $url . "&text=" . urlencode($message_text);
$ch = curl_init();
$optArray = array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true
);
curl_setopt_array($ch, $optArray);
$result = curl_exec($ch);
curl_close($ch);
}
/*----------------------
only basic POST method :
-----------------------*/
$telegram_id = $_POST ['telegram_id'];
$message_text = $_POST ['message_text'];
/*--------------------------------
Isi TOKEN dibawah ini:
--------------------------------*/
$secret_token = "Isi TOKEN disini";
sendMessage($telegram_id, $message_text, $secret_token);
echo "<script>alert('Pesan berhasil terkirim!'); window.location.href = './';</script>";
?>
Pada baris tersebut, kita lihat metode yang digunakan yaitu POST yang berarti semua variabel inputan yang diisikan pada formulir ini akan diteruskan ke file sendMessage.php untuk dieksekusi.
<input type="text" class="form-control" name="telegram_id" placeholder="Telegram ID">
<input type="text" class="form-control" name="message_text" placeholder="Custom Text Message">
Huruf yang diberi warna merah diatas merupakan variabel yang akan dikirimkan ke file sendMessage.php. Jangan lupa untuk mengisi TOKEN bot pada file sendMessage.php.
Mengirimkan Pesan
Oke setelah semuanya siap, kita akan coba lakukan pengujian. Pada skrip PHP diatas dapat kita lihat parse_mode=Markdown. Ini berarti kita mengirimkan pesan dengan gaya Markdown style. Sejauh ini bot API Telegram mendukung dua style untuk mengirimkan pesan yaitu Markdown style dan HTML style.
Buka alamat proyek, dalam contoh ini: http://localhost/bots/, lalu isi Telegram ID target pada field Telegram ID. Cara untuk mengetahui Telegram ID sama seperti pada postingan sebelumnya disini.

Hasilnya:

Demikianlah postingan kali ini mengenai Membuat Form untuk Mengirim Pesan dengan Telegram Bot, jika ada hal yang kurang dari Saya atau belum jelas silahkan kirim masukkan pada komentar dibawah.
Terima kasih 😊
Tutorial Xibo Digital Signage

“Digital signs rely on a variety of hardware to deliver the content. The components of a typical digital sign installation include one or more display screens, one or more client players, and a content management server. Typically there is a display screen, a client player, and a content management server that is connected to the client player over a network. One content management server may support multiple client players and one client player may support multiple screens.”(BACA DAN ULANG SAMPAI FAHAM)
Diagram
xibo server —> clients player(tv-dekat belakang tv ini akan ada satu pc ,contoh compute stick . jika tv tu takda hdmi port anda mungkin perlukan hdmi port converter). xibo server akan hantar content ke xibo client yang kita akan installkan kedalam tu. itula konsep Asas yang diterapkan pada xibo dan content yang dihantar ke xibo client akan disimpan pada galery “content client” jadi jika internet terputus xibo masih boleh berfungsi secara normal.
Bahan-bahan yang diperlukam dalam projek ini:
-Xammp versi 5 download disini
- http://xibo.org.uk/
- http://www.impallari.com/dancing
- https://fontlibrary.org/en/font/linear-regular
- https://www.flickr.com/photos/7692/16538187400/in/photostream/
Minimum Requirements
- A network connection to the CMS (possibly over the Internet)
- Microsoft Windows XP SP3 / Windows Vista / Windows 7 (recommended Windows 7)
- .NET Framework v3.5 SP1
- Internet Explorer 7+ (recommended IE10 or higher)
- Flash Player Version 9 or later
- Windows Media Player 11 or later
- For PowerPoint support, Microsoft PowerPoint 2003 or later. PowerPoint viewer is not suitable.







baca sini untuk hardware detail
| apa itu xammp & Bitnami modules |


xibo tidak support versi 7 jadi perlu pasang versi 5. baca disini isu PHP 7.X.XX




| Drop dan drag fail index.php |
| muka depan xibo |
| Perlu enablekan PHP support dan MYSQL support .. untuk ini anda perlukan GOOOGLE tapi untuk jawapan pantas anda perlu enablekan fail php.ini.. Dimana fail php.ini? lihat gambar dibawah |


| Add caption |
max_execution_time = 120 |
| upload_max_filesize = 128M |

CMS Address This is the fully qualified address of your CMS installation. For example http://your.domain/cms/.Key The secret CMS Key that will authenticate this display with the CMS.Local Library The location for the display client to store its local files. Files are downloaded from the CMS so that the client will still function if it looses connection with the CMS.Display ID The unique ID for this display. An automatically generated unique ID will be assigned at installation but can be modified if appropriate.Splash Screen Optionally override the splash screen with an image stored locally on the client PC. |
Referensi Bot Telegram
Setting up WhatsApp Telegram Bridge
- First, create a Telegram bot by using @botfather. i.e. send /newsbot command to @botfather and then the botfather bot will give you a token numberBotfather
- Clone the wat-bridge repository at https://github.com/rmed/wat-bridge.git.
git clone https://github.com/rmed/wat-bridge.git- Enter the cloned directory
cd wat-bridge- Setup python virtual environment
virtualenv -p python3 venv . venv/bin/activate- Install the required packages from requirements.txt
pip install -r requirements.txt- Install latest yowsup
git clone https://github.com/tgalal/yowsup.git cd yowsup # Install dependencies to build yowsup sudo apt-get install ncurses-dev python3-dev python setup.py install
Registering a number with yowsup
Now that we have installed yowsup, let’s register a phone number using yowsup.
NB: This number may get banned by WhatsApp, so use at your own risk! Also, don’t use your primary WhatsApp number for this, use a number which isn’t registered with WhatsApp yet.
Register a number
yowsup-cli registration --request sms --phone 49XXXXXXXX --cc 49 --mcc 123 --mnc 456- Provide phone number, CC, MCC & MCN. CC is the Country pre, you can know more about MCC and MNC from here. Now you will get an OTP to your number. Use that OTP in the next step for registration.
yowsup-cli registration --register 123456 --phone 49XXXXXXXX --cc 49- Now you will receive a password. Store this password anywhere securely.
- Now let’s go to wat-bridge directory. Copy development.conf into another file
cp development.conf config.conf- Open config.conf in any text editor and change the parameters
[tg] owner = ONWER_ID - this is the bot creatorID token = TOKEN - Token got from @botfather- (WA) phone = PHONE_NUMBER – registred phone number password = PASSWORD – password obtained from yowsup registration
- (DATABASE) path = PATH_TO_DB – create a .db file in wat-bridge folder and give its path
WAT_CONF=config.conf python watbridge.py
Yes, you are done! The bridge will be running now.
Bridge WhatsApp and Telegram groups
- Add the Whatsapp number to required WhatsApp group and send any message
- Add telegram bot in required telegram group send /me and copy the message get from bot
- Go to your bot now you will get a message from the added Whatsapp group with a number in it (that number is WhatsApp group id)
/add <group name> <that number from step3>
/bind <group name> <number get from 2 step>
Now both groups are linked.

Binding groups
Bridge WhatsApp and Telegram groups using forked bot
- Add the WhatsApp number to required WhatsApp group and send /getID
- Now you will receive a message with random numbers starting with /link, copy that entire message
- Add Telegram bot in respective Telegram group
- Send the message received from WhatsApp group to Telegram group
- Now both the groups should be linked and you are all done!
Video Player00:0000:18
Cons of wat-bridge forked bot
- Receiving messages from Telegram to large WhatsApp groups having more than 200 people will crash the bot
- Latest pre contains media support which needs to be documented, for developers I suggest to checkout to previous commits for better results.
sumber : https://ibcomputing.com/category/telegram/ &
http://mcc-mnc.com/
Install Squid 3.1 Via Webmin dan Limit Access IP | CentOS
CentOS | Squid di port 80 dan limit koneksi ke IP tertentu
Inti dari tutor berikut adalah
- install squid di CentOS 5 32bit
- install squid di CentOS 6 32bit ada 1 perintah tambahan
- install squid di Debian 6 32bit step 6 dan 7 dilewati
- installasi dan konfigurasi full menggunakan webmin
- Squid di install di port 80
- Squid dapat diakses dari sembarang IP
- Squid dibatasi hanya dapat koneksi ke IP tertentu
TUTORIAL BERGAMBAR
1. login ke webmin
2. cari “squid”
3. pilih “Squid Proxy Server”
4. install Squid via Webmin
5. Refresh Modules (dan refresh browser anda)
6. Masuk ke Module “Squid Proxy Server”
7. Bikin cache foldernya
untuk Debian 6 langkah berikut ini di skip /di lewati. Sedangkan untuk CentOs 6, sebelum membuat cache folder, jalankan command berikut diterminal:
sed -i 's/#cache_dir/cache_dir/g' /etc/squid/squid.conf
kemudian kembali ke webmin, klik “initialize Cache“:
8. Kembali ke module “Squid Proxy Server”
9. Masuk ke “Ports and Networking”
10. Ganti Port ke 80 (atau port yang di inginkan) kemudian “Save”
11. Masuk ke “Access Control”
12. Buat ACL baru, pilih yg “Web Server Address”
13. “ACL name” di isi bebas, From IP/To IP di isi IP server VPS anda atau IP ssh anda (kalo beda server),
Netmask isi: 32
14. Pindah ke tab “Proxy restrictions” dan pilih “ Add proxy restriction.”
15. Pilih Allow dan Nama ACL yg sebelumnya telah dibuat
16. Pindahkan ACL name yang sebelumnya dibuat menjadi urutan pertama dan hapus ACL: !Safe_ports dan CONNECT !SSL_ports
17. Jalankan Squid nya
18. kalau start gagal, biasanya ada service httpd yang sudah running, matikan service tersebut terlebih dahulu
service httpd stop chkconfig httpd off
19. Done
credit to: blog.jualssh; dengan beberapa editing seperlunya termasuk screenshot
Install Squid sebagai Elite / High-Anonymous Proxy pada VPS
CentOS – update file support / dependencies
yum groupinstall "Development Tools" -y yum install libxml2-devel libcap-devel -y yum install kernel-devel kernel-headers -y yum httpd nano -y yum update -y
untuk debian atau ubuntu
apt-get install build-essential libssl-dev
Install Squid
CentOS
yum install squid -y
Debian atau Ubuntu
apt-get install squid
hapus config aslinya, jangan khawatir karena config defaultnya masih ada dengan nama file squid.conf.def
rm -rf /etc/squid/squid.conf
Kemudian buat file config nya
touch /etc/squid/squid.conf nano /etc/squid/squid.conf
Konfigurasi untuk versi 3.xx
dns_nameservers 8.8.8.8 8.8.4.4 4.2.2.1 4.2.2.6 198.6.1.3 204.117.214.10 207.172.11.73 dns_defnames on dns_retransmit_interval 2 seconds dns_timeout 5 minutes balance_on_multiple_ip on cache_mgr not_to_be_disturbed client_db on detect_broken_pconn on half_closed_clients off httpd_suppress_version_string on ignore_unknown_nameservers on pipeline_prefetch on prefer_direct on query_icmp on range_offset_limit -1 retry_on_error on server_persistent_connections on strip_query_terms off uri_whitespace strip ## untuk password untuk versi 32bit, lokasi file ganti seperti di bawah ini : ## /usr/lib/squid/ncsa_auth /etc/squid/squid_passwd auth_param basic program /usr/lib64/squid/ncsa_auth /etc/squid/squid_passwd auth_param basic children 5 auth_param basic realm Squid proxy-caching web server auth_param basic credentialsttl 2 hour # ACCESS CONTROLS ###################### #Recommended minimum configuration: acl manager proto cache_object acl localhost src 127.0.0.1/32 ::1 acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1 # local networks. acl localnet src 10.0.0.0/8 # RFC1918 possible internal network acl localnet src 172.16.0.0/12 # RFC1918 possible internal network acl localnet src 192.168.0.0/16 # RFC1918 possible internal network acl SSL_ports port 21 22 25 53 109 143 443 554 563 993 21976 acl Safe_ports port 53 80 136 137 182 acl Safe_ports port 22 25 70 210 280 acl Safe_ports port 143 443 554 563 993 acl Safe_ports port 1025-65535 acl Safe_ports port 8000-8090 acl Safe_ports port 67-68 acl Safe_ports port 123 465 488 587 591 777 6667 acl Safe_ports port 9000-9091 acl Safe_ports port 110 119 995 2030 2401 3306 3690 6881 8443 8843 acl ncsa_users proxy_auth REQUIRED acl CONNECT method CONNECT # #Recommended minimum configuration: ###################### ## Only allow cachemgr access from localhost http_access allow manager localhost http_access deny manager ## http_access allow localhost http_access allow ncsa_users http_access deny to_localhost http_access deny !Safe_ports http_access deny CONNECT !SSL_ports ## ## disable multicast icp miss_access allow all ident_lookup_access deny all # NETWORK OPTIONS ###################### http_port 143 # Leave coredumps in the first cache dir access_log /var/log/squid/access.log cache_log /var/log/squid/cache.log cache_access_log none cache_store_log none # hierarchy_stoplist cgi-bin ? acl apache rep_header Server ^Apache ipcache_size 8192 ipcache_low 90 ipcache_high 95 #cache_dir null /tmp cache_mem 16 MB cache_dir ufs /var/spool/squid/cache0 1000 16 256 cache_dir ufs /var/spool/squid/cache1 1000 16 256 cache_dir ufs /var/spool/squid/cache2 1000 16 256 cache_dir ufs /var/spool/squid/cache3 1000 16 256 deny_info ::0 all # Add any of your own refresh_pattern entries above these. refresh_pattern ^ftp: 1440 20% 10080 refresh_pattern ^gopher: 1440 0% 1440 refresh_pattern -i (/cgi-bin/|\?) 0 0% 0 refresh_pattern . 0 20% 4320 visible_hostname google.com
Konfigurasi untuk versi 2.6xx dan 2.7xx
dns_nameservers 8.8.8.8 8.8.4.4 4.2.2.1 4.2.2.6 198.6.1.3 204.117.214.10 207.172.11.73 cache_mgr not_to_be_disturbed client_db on detect_broken_pconn on dns_defnames on dns_retransmit_interval 2 seconds dns_timeout 5 minutes half_closed_clients off httpd_suppress_version_string on ignore_unknown_nameservers on pipeline_prefetch on prefer_direct on query_icmp on range_offset_limit -1 retry_on_error on server_persistent_connections on strip_query_terms off uri_whitespace strip ## untuk password untuk versi 32bit, lokasi file ganti seperti di bawah ini : ## /usr/lib/squid/ncsa_auth /etc/squid/squid_passwd auth_param basic program /usr/lib64/squid/ncsa_auth /etc/squid/squid_passwd auth_param basic children 5 auth_param basic realm Squid proxy-caching web server auth_param basic credentialsttl 2 hour # ACCESS CONTROLS ###################### #Recommended minimum configuration: acl all src 0.0.0.0/0.0.0.0 acl manager proto cache_object acl localhost src 127.0.0.1/255.255.255.255 acl to_localhost dst 127.0.0.0/8 acl SSL_ports port 21 22 25 53 109 143 443 554 563 993 21976 acl Safe_ports port 53 80 136 137 182 acl Safe_ports port 22 25 70 210 280 acl Safe_ports port 143 443 554 563 993 acl Safe_ports port 67-68 acl Safe_ports port 1025-65535 acl Safe_ports port 8000-8090 acl Safe_ports port 123 465 488 587 591 777 6667 acl Safe_ports port 9000-9091 acl Safe_ports port 110 119 995 2030 2401 3306 3690 6881 8443 8843 acl ncsa_users proxy_auth REQUIRED acl CONNECT method CONNECT # #Recommended minimum configuration: ###################### ## Only allow cachemgr access from localhost http_access allow manager localhost http_access deny manager ## http_access allow localhost http_access allow ncsa_users http_access deny to_localhost http_access deny !Safe_ports http_access deny CONNECT !SSL_ports ## disable multicast icp miss_access allow all ident_lookup_access deny all # NETWORK OPTIONS ## open-port ########### http_port 143 ###################### cache_mem 16 MB cache_dir ufs /var/spool/squid/cache0 1000 16 256 cache_dir ufs /var/spool/squid/cache1 1000 16 256 cache_dir ufs /var/spool/squid/cache2 1000 16 256 cache_dir ufs /var/spool/squid/cache3 1000 16 256 # Leave coredumps in the first cache dir access_log /var/log/squid/access.log cache_log /var/log/squid/cache.log cache_access_log none cache_store_log none # hierarchy_stoplist cgi-bin ? acl apache rep_header Server ^Apache # Add any of your own refresh_pattern entries above these. refresh_pattern ^ftp: 1440 20% 10080 refresh_pattern ^gopher: 1440 0% 1440 refresh_pattern -i (/cgi-bin/|\?) 0 0% 0 refresh_pattern . 0 20% 4320 visible_hostname Google.com
Setting password
Buat file-nya dulu:
touch /etc/squid/squid_passwd
ubah permission filenya, agar tidak permission denied
chown root.root /etc/squid/squid_passwd
isikan user name dan passwd ke file
htpasswd -b /etc/squid/squid_passwd [user_1] [passwd_1]
Buat cache file dan test jalankan
cd /var/spool chmod 775 squid chmod g+w squid squid -z squid -d 1 -D # tekan CTRL+C service squid restart
start on boot dan start/stop/restart/status squid
chkconfig --add squid chkconfig squid on service squid status
all credits: john6000 – bugs4u.info















