Membangun Proxy Server menggunakan Privoxy
Sebelum melakukan langkah-langkah membangun proxy server, ada beberapa alat dan bahan yang harus sobat sediakan. Setelah semuanya sudah tersedia gak perlu nunggu lama lagi, langsung aja deh sobat membangun proxy server sesuai dengan tutorial yang mas dyon sharing ini. Kali ini privoxy 3.0.19 yang Babang Herman gunakan buat membangun proxy server pada sebuah jaringan LAN di sekolah.
Langkah-langkah membangun proxy server
o Terlebih dahulu sobat harus menstting ip forwading atau NAT:
stat - regedit- pilih HKEY LOCAL MACHINE -system- current control set - servis- tcpip- parameters - pilih ip enable router ganti nominal menjadi 1
o Kemudian instalasi privoxy 3.0.19
Klik ganda pada software privoxy maka akan muncul gambar berikut
o ikuti langkah instalasi hingga muncul gambar berikut
o sekarang waktunya untuk menstting/ mengkonfiurasi privoxy, langkah pertama adalah meminta perizinan atau hak akses privoxy yaitu dengan cara:
· apabila dalam instalasi privoxy sebelumnya sobat tidah mengubah letak kita menginstalnya, pastinya folder instalasi berada pada drive C-program file-privoxy.
· Kemdian klik kanan pada folder privoxy-properties-security-edit-ceklis (allaw)pada semua group or user name-ok
o Setelah hak akses selesai sekarang sobat perlu mensetting ICS(internet conections sharing) startup type menjadi automatic.
o Langkah selanjutnya adalah mengubah konfigurasi pada privoxy, ganti script conf dengan script dibawah ini:
#user-manual ./doc/user-manual/
#user-manual /Program Files/Privoxy/doc/user-manual
#admin-address [hermantoyulistio@gmail.com]
#confdir .
#logdir .
#
actionsfile match-all.action # Actions that are applied to all sites and maybe overruled later on.
actionsfile default.action # Main actions file
actionsfile user.action # User customizations
#
#
#
#filterfile default.filter
#filterfile user.filter # User customizations
#
#
#logfile privoxy.log
#enable-edit-actions 0
#enforce-blocks 0
#buffer-limit 4096
#forwarded-connect-retries 0
#accept-intercepted-requests 0
#allow-cgi-request-crunching 0
#split-large-forms 0
#socket-timeout 300
user-manual /Program Files/Privoxy/doc/user-manual
admin-address [hermantoyulistio@gmail.com]
confdir .
logdir .
debug 1 #menampilkan seluruh log ke server
logfile privoxy.log #memberikan nama file log
log-messages 1 #seluruh koneksi akan di catat di file log server
listen-address 192.168.12.1:3218 #ip server dan port yang akan listen (diset di client).
permit-access 192.168.12.0/24 #ip network yang diijinkan menggunakan server proxy ini
toggle 0
enable-remote-toggle 0
enable-remote-http-toggle 0
enable-edit-actions 0
enforce-blocks 1
buffer-limit 4096
forwarded-connect-retries 20
accept-intercepted-requests 1
allow-cgi-request-crunching 0
split-large-forms 0
keep-alive-timeout 300
socket-timeout 300
activity-animation 1
log-max-lines 2000
log-highlight-messages 1
log-font-name Comic Sans MS
log-font-size 10
o Kemudian save
o Langkah selanjutnya dalah mengganti scrip user menjadi seperti di bawah ini:
######################################################################
#
# File : $Source: /cvsroot/ijbswa/current/user.action,v $
#
# $Id: user.action,v 1.13 2011/11/06 11:36:01 fabiankeil Exp $
#
# Purpose : User-maintained actions file, see
# http://www.privoxy.org/user-manual/actions-file.html
#
######################################################################
# This is the place to add your personal exceptions and additions to
# the general policies as defined in default.action. (Here they will be
# safe from updates to default.action.) Later defined actions always
# take precedence, so anything defined here should have the last word.
# See http://www.privoxy.org/user-manual/actions-file.html, or the
# comments in default.action, for an explanation of what an "action" is
# and what each action does.
# The examples included here either use bogus sites, or have the actual
# rules commented out (with the '#' character). Useful aliases are
# included in the top section as a convenience.
#############################################################################
# Aliases
#############################################################################
{{alias}}
#############################################################################
#
# You can define a short form for a list of permissions - e.g., instead
# of "-crunch-incoming-cookies -crunch-outgoing-cookies -filter -fast-redirects",
# you can just write "shop". This is called an alias.
#
# Currently, an alias can contain any character except space, tab, '=', '{'
# or '}'.
# But please use only 'a'-'z', '0'-'9', '+', and '-'.
#
# Alias names are not case sensitive.
#
# Aliases beginning with '+' or '-' may be used for system action names
# in future releases - so try to avoid alias names like this. (e.g.
# "+crunch-all-cookies" below is not a good name)
#
# Aliases must be defined before they are used.
#
# These aliases just save typing later:
#
+crunch-all-cookies = +crunch-incoming-cookies +crunch-outgoing-cookies
-crunch-all-cookies = -crunch-incoming-cookies -crunch-outgoing-cookies
allow-all-cookies = -crunch-all-cookies -session-cookies-only -filter{content-cookies}
allow-popups = -filter{all-popups} -filter{unsolicited-popups}
+block-as-image = +block{Blocked image request.} +handle-as-image
-block-as-image = -block
# These aliases define combinations of actions
# that are useful for certain types of sites:
#
fragile = -block -crunch-all-cookies -filter -fast-redirects -hide-referer -prevent-compression
shop = -crunch-all-cookies allow-popups
# Your favourite blend of filters:
#
myfilters = +filter{html-annoyances} +filter{js-annoyances} +filter{all-popups}\
+filter{webbugs} +filter{banners-by-size}
# Allow ads for selected useful free sites:
#
allow-ads = -block -filter{banners-by-size} -filter{banners-by-link}
#... etc. Customize to your heart's content.
## end aliases ########################################################
#######################################################################
# Begin examples: #####################################################
# Say you have accounts on some sites that you visit regularly, and you
# don't want to have to log in manually each time. So you'd like to allow
# persistent cookies for these sites. The allow-all-cookies alias defined
# above does exactly that, i.e. it disables crunching of cookies in any
# direction, and the processing of cookies to make them only temporary.
#
{ allow-all-cookies }
#.sourceforge.net
#sunsolve.sun.com
#slashdot.org
#.yahoo.com
#.msdn.microsoft.com
#.redhat.com
# Say the site where you do your homebanking needs to open popup
# windows, but you have chosen to kill popups uncoditionally by default.
# This will allow it for your-example-bank.com:
#
{ -filter{all-popups} }
.banking.example.com
# Some hosts and some file types you may not want to filter for
# various reasons:
#
{ -filter }
# Technical documentation is likely to contain strings that might
# erroneously get altered by the JavaScript-oriented filters:
#
#.tldp.org
#/(.*/)?selfhtml/
# And this stupid host sends streaming video with a wrong MIME type,
# so that Privoxy thinks it is getting HTML and starts filtering:
#
stupid-server.example.com/
# Example of a simple "block" action. Say you've seen an ad on your
# favourite page on example.com that you want to get rid of. You have
# right-clicked the image, selected "copy image location" and pasted
# the URL below while removing the leading http://, into a { +block{reason} }
# section. Note that { +handle-as-image } need not be specified, since
# all URLs ending in .gif will be tagged as images by the general rules
# as set in default.action anyway:
#
{ +block{Nasty ads.} }
www.example.com/nasty-ads/sponsor.gif
# The URLs of dynamically generated banners, especially from large banner
# farms, often don't use the well-known image file name extensions, which
# makes it impossible for Privoxy to guess the file type just by looking
# at the URL.
# You can use the +block-as-image alias defined above for these cases.
# Note that objects which match this rule but then turn out NOT to be an
# image are typically rendered as a "broken image" icon by the browser.
# Use cautiously.
#
{ +block-as-image }
#.facebook.com
#.doubleclick.net
#/Realmedia/ads/
#ar.atwola.com/
# Now you noticed that the default configuration breaks Forbes
# Magazine, but you were too lazy to find out which action is the
# culprit, and you were again too lazy to give feedback, so you just
# used the fragile alias on the site, and -- whoa! -- it worked. The
# 'fragile' aliases disables those actions that are most likely to break
# a site. Also, good for testing purposes to see if it is Privoxy that
# is causing the problem or not.
#
{ fragile }
#.forbes.com
# Here are some sites we wish to support, and we will allow their ads
# through.
#
{ allow-ads }
#.sourceforge.net
#.slashdot.org
#.osdn.net
# user.action is generally the best place to define exceptions and
# additions to the default policies of default.action. Some actions are
# safe to have their default policies set here though. So let's set a
# default policy to have a 'blank' image as opposed to the checkerboard
# pattern for ALL sites. '/' of course matches all URLs.
# patterns:
#
{ +set-image-blocker{blank} }
#/
# Enable the following section (not the regression-test directives)
# to rewrite and redirect click-tracking URLs on news.google.com.
# Disabling JavaScript should work as well and probably works more reliably.
#
# Redirected URL = http://news.google.com/news/url?ct2=us%2F0_0_s_1_1_a&sa=t&usg=AFQjCNHJWPc7ffoSXPSqBRz55jDA0KgxOQ&cid=8797762374160&url=http%3A%2F%2Fonline.wsj.com%2Farticle%2FSB10001424052970204485304576640791304008536.html&ei=YcqeTsymCIjxggf8uQE&rt=HOMEPAGE&vm=STANDARD&bvm=section&did=-6537064229385238098
# Redirect Destination = http://online.wsj.com/article/SB10001424052970204485304576640791304008536.html
# Ignore = Yes
#
#{+fast-redirects{check-decoded-url}}
#news.google.com/news/url.*&url=http.*&
# Enable the following section (not the regression-test directives)
# to block various Facebook "like" and similar tracking URLs. At the
# time this section was added it was reported to not break Facebook
# itself but this may have changed by the time you read this. This URL
# list is probably incomplete and if you don't have an account anyway,
# you may prefer to block the whole domain.
#
# Blocked URL = http://www.facebook.com/plugins/likebox.php?href=http%3A%2F%2Ffacebook.com%2Farstechnica&width=300&colorscheme=light&show_faces=false&stream=false&header=false&height=62&border_color=%23FFFFFF
# Ignore = Yes
# Blocked URL = http://www.facebook.com/plugins/activity.php?site=arstechnica.com&width=300&height=370&header=false&colorscheme=light&recommendations=false&border_color=%23FFFFFF
# Ignore = Yes
# Blocked URL = http://www.facebook.com/plugins/fan.php?api_key=368513495882&connections=10&height=250&id=8304333127&locale=en_US&sdk=joey&stream=false&width=377
# Ignore = Yes
# Blocked URL = http://www.facebook.com/plugins/like.php?api_key=368513495882&channel_url=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D3%23cb%3Df13997452c%26origin%3Dhttp%253A%252F%252Fonline.wsj.com%252Ff1b037e354%26relation%3Dparent.parent%26transport%3Dpostmessage&extended_social_context=false&href=http%3A%2F%2Fonline.wsj.com%2Farticle%2FSB10001424052970204485304576640791304008536.html&layout=button_count&locale=en_US&node_type=link&ref=wsj_share_FB&sdk=joey&send=false&show_faces=false&width=90
# Ignore = Yes
#
{+block{Facebook "like" and similar tracking URLs.}}
#www.facebook.com/(extern|plugins)/(login_status|like(box)?|activity|fan)\.php
{ +block }
.yahoo.com
.facebook.com
.blogspot.com
(KETIKKAN NAMA SITUS YANG INGIN DI BLOK) dan diawali tanda TITIK
ad.advisor.net
ad.yieldmanager.com
ads.revsci.net
.adultsingles.com
ad.xplusone.com
.doubleclick.net
scr.kliksaya.com
scr1.kliksaya.com
o Save kembali.
o Kemudian setting ip pada komputer kita,
pada NIC 1
isikan pada ip addres ex; 192.168.12.1
subnesmuskex: 255.255.255.0
defaulgateway ex; 192.168.12.6
kemudian ok-klik sharing berikan ceklis pada kedua kotak dialog- close,
maka secara otomatis NIC 2 akan di berikan settingan ip nya. Selesai sudah setting ip, di komputer server. Sekarang sobat tinggal mensetting proxy nya di browser client.
Selamat mencoba.......
Jgn lupa ya shob. inpite PIN ane : 7E5EE76C
Read More ...
Sebelum melakukan langkah-langkah membangun proxy server, ada beberapa alat dan bahan yang harus sobat sediakan. Setelah semuanya sudah tersedia gak perlu nunggu lama lagi, langsung aja deh sobat membangun proxy server sesuai dengan tutorial yang mas dyon sharing ini. Kali ini privoxy 3.0.19 yang Babang Herman gunakan buat membangun proxy server pada sebuah jaringan LAN di sekolah.
Langkah-langkah membangun proxy server
o Terlebih dahulu sobat harus menstting ip forwading atau NAT:
stat - regedit- pilih HKEY LOCAL MACHINE -system- current control set - servis- tcpip- parameters - pilih ip enable router ganti nominal menjadi 1
o Kemudian instalasi privoxy 3.0.19
Klik ganda pada software privoxy maka akan muncul gambar berikut
o ikuti langkah instalasi hingga muncul gambar berikut
o sekarang waktunya untuk menstting/ mengkonfiurasi privoxy, langkah pertama adalah meminta perizinan atau hak akses privoxy yaitu dengan cara:
· apabila dalam instalasi privoxy sebelumnya sobat tidah mengubah letak kita menginstalnya, pastinya folder instalasi berada pada drive C-program file-privoxy.
· Kemdian klik kanan pada folder privoxy-properties-security-edit-ceklis (allaw)pada semua group or user name-ok
o Setelah hak akses selesai sekarang sobat perlu mensetting ICS(internet conections sharing) startup type menjadi automatic.
o Langkah selanjutnya adalah mengubah konfigurasi pada privoxy, ganti script conf dengan script dibawah ini:
#user-manual ./doc/user-manual/
#user-manual /Program Files/Privoxy/doc/user-manual
#admin-address [hermantoyulistio@gmail.com]
#confdir .
#logdir .
#
actionsfile match-all.action # Actions that are applied to all sites and maybe overruled later on.
actionsfile default.action # Main actions file
actionsfile user.action # User customizations
#
#
#
#filterfile default.filter
#filterfile user.filter # User customizations
#
#
#logfile privoxy.log
#enable-edit-actions 0
#enforce-blocks 0
#buffer-limit 4096
#forwarded-connect-retries 0
#accept-intercepted-requests 0
#allow-cgi-request-crunching 0
#split-large-forms 0
#socket-timeout 300
user-manual /Program Files/Privoxy/doc/user-manual
admin-address [hermantoyulistio@gmail.com]
confdir .
logdir .
debug 1 #menampilkan seluruh log ke server
logfile privoxy.log #memberikan nama file log
log-messages 1 #seluruh koneksi akan di catat di file log server
listen-address 192.168.12.1:3218 #ip server dan port yang akan listen (diset di client).
permit-access 192.168.12.0/24 #ip network yang diijinkan menggunakan server proxy ini
toggle 0
enable-remote-toggle 0
enable-remote-http-toggle 0
enable-edit-actions 0
enforce-blocks 1
buffer-limit 4096
forwarded-connect-retries 20
accept-intercepted-requests 1
allow-cgi-request-crunching 0
split-large-forms 0
keep-alive-timeout 300
socket-timeout 300
activity-animation 1
log-max-lines 2000
log-highlight-messages 1
log-font-name Comic Sans MS
log-font-size 10
o Kemudian save
o Langkah selanjutnya dalah mengganti scrip user menjadi seperti di bawah ini:
######################################################################
#
# File : $Source: /cvsroot/ijbswa/current/user.action,v $
#
# $Id: user.action,v 1.13 2011/11/06 11:36:01 fabiankeil Exp $
#
# Purpose : User-maintained actions file, see
# http://www.privoxy.org/user-manual/actions-file.html
#
######################################################################
# This is the place to add your personal exceptions and additions to
# the general policies as defined in default.action. (Here they will be
# safe from updates to default.action.) Later defined actions always
# take precedence, so anything defined here should have the last word.
# See http://www.privoxy.org/user-manual/actions-file.html, or the
# comments in default.action, for an explanation of what an "action" is
# and what each action does.
# The examples included here either use bogus sites, or have the actual
# rules commented out (with the '#' character). Useful aliases are
# included in the top section as a convenience.
#############################################################################
# Aliases
#############################################################################
{{alias}}
#############################################################################
#
# You can define a short form for a list of permissions - e.g., instead
# of "-crunch-incoming-cookies -crunch-outgoing-cookies -filter -fast-redirects",
# you can just write "shop". This is called an alias.
#
# Currently, an alias can contain any character except space, tab, '=', '{'
# or '}'.
# But please use only 'a'-'z', '0'-'9', '+', and '-'.
#
# Alias names are not case sensitive.
#
# Aliases beginning with '+' or '-' may be used for system action names
# in future releases - so try to avoid alias names like this. (e.g.
# "+crunch-all-cookies" below is not a good name)
#
# Aliases must be defined before they are used.
#
# These aliases just save typing later:
#
+crunch-all-cookies = +crunch-incoming-cookies +crunch-outgoing-cookies
-crunch-all-cookies = -crunch-incoming-cookies -crunch-outgoing-cookies
allow-all-cookies = -crunch-all-cookies -session-cookies-only -filter{content-cookies}
allow-popups = -filter{all-popups} -filter{unsolicited-popups}
+block-as-image = +block{Blocked image request.} +handle-as-image
-block-as-image = -block
# These aliases define combinations of actions
# that are useful for certain types of sites:
#
fragile = -block -crunch-all-cookies -filter -fast-redirects -hide-referer -prevent-compression
shop = -crunch-all-cookies allow-popups
# Your favourite blend of filters:
#
myfilters = +filter{html-annoyances} +filter{js-annoyances} +filter{all-popups}\
+filter{webbugs} +filter{banners-by-size}
# Allow ads for selected useful free sites:
#
allow-ads = -block -filter{banners-by-size} -filter{banners-by-link}
#... etc. Customize to your heart's content.
## end aliases ########################################################
#######################################################################
# Begin examples: #####################################################
# Say you have accounts on some sites that you visit regularly, and you
# don't want to have to log in manually each time. So you'd like to allow
# persistent cookies for these sites. The allow-all-cookies alias defined
# above does exactly that, i.e. it disables crunching of cookies in any
# direction, and the processing of cookies to make them only temporary.
#
{ allow-all-cookies }
#.sourceforge.net
#sunsolve.sun.com
#slashdot.org
#.yahoo.com
#.msdn.microsoft.com
#.redhat.com
# Say the site where you do your homebanking needs to open popup
# windows, but you have chosen to kill popups uncoditionally by default.
# This will allow it for your-example-bank.com:
#
{ -filter{all-popups} }
.banking.example.com
# Some hosts and some file types you may not want to filter for
# various reasons:
#
{ -filter }
# Technical documentation is likely to contain strings that might
# erroneously get altered by the JavaScript-oriented filters:
#
#.tldp.org
#/(.*/)?selfhtml/
# And this stupid host sends streaming video with a wrong MIME type,
# so that Privoxy thinks it is getting HTML and starts filtering:
#
stupid-server.example.com/
# Example of a simple "block" action. Say you've seen an ad on your
# favourite page on example.com that you want to get rid of. You have
# right-clicked the image, selected "copy image location" and pasted
# the URL below while removing the leading http://, into a { +block{reason} }
# section. Note that { +handle-as-image } need not be specified, since
# all URLs ending in .gif will be tagged as images by the general rules
# as set in default.action anyway:
#
{ +block{Nasty ads.} }
www.example.com/nasty-ads/sponsor.gif
# The URLs of dynamically generated banners, especially from large banner
# farms, often don't use the well-known image file name extensions, which
# makes it impossible for Privoxy to guess the file type just by looking
# at the URL.
# You can use the +block-as-image alias defined above for these cases.
# Note that objects which match this rule but then turn out NOT to be an
# image are typically rendered as a "broken image" icon by the browser.
# Use cautiously.
#
{ +block-as-image }
#.facebook.com
#.doubleclick.net
#/Realmedia/ads/
#ar.atwola.com/
# Now you noticed that the default configuration breaks Forbes
# Magazine, but you were too lazy to find out which action is the
# culprit, and you were again too lazy to give feedback, so you just
# used the fragile alias on the site, and -- whoa! -- it worked. The
# 'fragile' aliases disables those actions that are most likely to break
# a site. Also, good for testing purposes to see if it is Privoxy that
# is causing the problem or not.
#
{ fragile }
#.forbes.com
# Here are some sites we wish to support, and we will allow their ads
# through.
#
{ allow-ads }
#.sourceforge.net
#.slashdot.org
#.osdn.net
# user.action is generally the best place to define exceptions and
# additions to the default policies of default.action. Some actions are
# safe to have their default policies set here though. So let's set a
# default policy to have a 'blank' image as opposed to the checkerboard
# pattern for ALL sites. '/' of course matches all URLs.
# patterns:
#
{ +set-image-blocker{blank} }
#/
# Enable the following section (not the regression-test directives)
# to rewrite and redirect click-tracking URLs on news.google.com.
# Disabling JavaScript should work as well and probably works more reliably.
#
# Redirected URL = http://news.google.com/news/url?ct2=us%2F0_0_s_1_1_a&sa=t&usg=AFQjCNHJWPc7ffoSXPSqBRz55jDA0KgxOQ&cid=8797762374160&url=http%3A%2F%2Fonline.wsj.com%2Farticle%2FSB10001424052970204485304576640791304008536.html&ei=YcqeTsymCIjxggf8uQE&rt=HOMEPAGE&vm=STANDARD&bvm=section&did=-6537064229385238098
# Redirect Destination = http://online.wsj.com/article/SB10001424052970204485304576640791304008536.html
# Ignore = Yes
#
#{+fast-redirects{check-decoded-url}}
#news.google.com/news/url.*&url=http.*&
# Enable the following section (not the regression-test directives)
# to block various Facebook "like" and similar tracking URLs. At the
# time this section was added it was reported to not break Facebook
# itself but this may have changed by the time you read this. This URL
# list is probably incomplete and if you don't have an account anyway,
# you may prefer to block the whole domain.
#
# Blocked URL = http://www.facebook.com/plugins/likebox.php?href=http%3A%2F%2Ffacebook.com%2Farstechnica&width=300&colorscheme=light&show_faces=false&stream=false&header=false&height=62&border_color=%23FFFFFF
# Ignore = Yes
# Blocked URL = http://www.facebook.com/plugins/activity.php?site=arstechnica.com&width=300&height=370&header=false&colorscheme=light&recommendations=false&border_color=%23FFFFFF
# Ignore = Yes
# Blocked URL = http://www.facebook.com/plugins/fan.php?api_key=368513495882&connections=10&height=250&id=8304333127&locale=en_US&sdk=joey&stream=false&width=377
# Ignore = Yes
# Blocked URL = http://www.facebook.com/plugins/like.php?api_key=368513495882&channel_url=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D3%23cb%3Df13997452c%26origin%3Dhttp%253A%252F%252Fonline.wsj.com%252Ff1b037e354%26relation%3Dparent.parent%26transport%3Dpostmessage&extended_social_context=false&href=http%3A%2F%2Fonline.wsj.com%2Farticle%2FSB10001424052970204485304576640791304008536.html&layout=button_count&locale=en_US&node_type=link&ref=wsj_share_FB&sdk=joey&send=false&show_faces=false&width=90
# Ignore = Yes
#
{+block{Facebook "like" and similar tracking URLs.}}
#www.facebook.com/(extern|plugins)/(login_status|like(box)?|activity|fan)\.php
{ +block }
.yahoo.com
.facebook.com
.blogspot.com
(KETIKKAN NAMA SITUS YANG INGIN DI BLOK) dan diawali tanda TITIK
ad.advisor.net
ad.yieldmanager.com
ads.revsci.net
.adultsingles.com
ad.xplusone.com
.doubleclick.net
scr.kliksaya.com
scr1.kliksaya.com
o Save kembali.
o Kemudian setting ip pada komputer kita,
pada NIC 1
isikan pada ip addres ex; 192.168.12.1
subnesmuskex: 255.255.255.0
defaulgateway ex; 192.168.12.6
kemudian ok-klik sharing berikan ceklis pada kedua kotak dialog- close,
maka secara otomatis NIC 2 akan di berikan settingan ip nya. Selesai sudah setting ip, di komputer server. Sekarang sobat tinggal mensetting proxy nya di browser client.
Selamat mencoba.......
Jgn lupa ya shob. inpite PIN ane : 7E5EE76C



