Kamis, 30 April 2015

Cara Membuat Tunnel Open VPN Sendiri Dengan Delphi 7 Terbaru 2015

Kali ini Saya mau berbagi Info Cara Membuat Open VPN Sendiri Dengan Delphi 7 Terbaru 2015, open artinya buka dan VPN artinya Virtual Private Network,, Vpn secara garis besarnya berada pada satu layer dengan SSH jadi saya tidak akan jelaskan kembali , banyak yang mengatakan open vpn tidak bisa digunakan untuk SC Non Jatim Tanpa pulsa tanpa kuota itu salah besar disini saya membuat atau mencoba mengembangkan aplikasi open vpn agar bisa digunakan kartu apa saja yang non pulsa dan non kuota,,, dan sebelumnya juga saya sudah share seputar Cara Membuat Payload Redirect 301 ok kita lanjut kembali open vpn disini yang akan dibuat cara kerjanya akan hampir sama dengan bitvise atau plink yang pernah saya share atau lihat DISINI atau DISINI ,, dan kelebihan open vpn yang akan dibuat disini adalah aplikasi open vpn yang bersifat portable dan untuk kekurangannnya adalah terletak masalah pada sertifikat crt dan mari kita sama2 untuk memecahkan masalah ini agar aplikasi ini bisa digunakan untuk all vpn seperti halnnya all ssh ok dan untuk http proxy menggunakan tap adapter jadi sahabat tidak menggunakan lagi yang namanya proxifier karena secara umumnya open vpn pakai tap adapter sebagai pengatur proxy keluar masuknya pada komputer sobat, diaplikasi ini disediakan No Prpxy dan Use Proxy petunjuk tersebut ditujukan jika sobat dan sahabat semuanya menggunakan use proxy berarti saudara menggunakan injek sebagai alat bantunya semoga anda dan sahabat paham maksudnya, ya udah tanpa panjang lebar lagi bagi sobat dan sahabat semuanya yang ingin mencobanya bisa langsung disimak,

1. Langkah pertama Buka Delphi 7 andalan anda lalu siapkan: memo (1) , button (1), edit text (6) , label (6), radiobutton (2), timer (1), doscommand (1) jika anda ingin menggunakan multi open vpn berarti anda hanya menyiapkan timer dan doscommand sesuai jumlah yang login yang ingin anda buat. jika anda jeli tampilannya tidak jauh berbeda dengan tutorial plink yang pernah saya share,,, untuk memo jika anda tidak mau reconnect berulang-ulang ubah ke sboth kalau fungsi open vpn ini agar bisa digunakan untuk all sc non pulsa diseluruh dunia anda harus membuat reconnect automatisnya (Tutorial Auto Recconect Open VPN Akan dibahas pada postingan selanjutnya);

Cara Buat Open VPN sendiri

2. Langkah yang kedua tambahkan uses TlHelp32, ShellAPI ,, shellapi berfungsi untuk memanggil program luar installer adapternya... didalam folder download nanti ada beberapa installer tap adapter yang bisa anda sesuaikan dengan adapter yang ingin anda gunakan.

Cara Buat Open VPN sendiri

3. Langkah yang ketiga masukan kode ini dibawah var dan diatas implementation:

 zonksel1,zonksel2,zonksel3,zonksel4,zonksel5,zonksel6,server_vpn,port_vpn,user_vpn,pass_vpn,proxyhost,proxyport : String;
 
Cara Buat Open VPN sendiri

4. Langkah yang keempat masukan fugsi baru kill task ini digunakan untuk prossse kill open vpn dan tap adapter baik in maupun out.

function KillTask(ExeFileName: string): Integer;
const
  PROCESS_TERMINATE = $0001;
var
  ContinueLoop: BOOL;
  FSnapshotHandle: THandle;
  FProcessEntry32: TProcessEntry32;
begin
  Result := 0;
  FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
  FProcessEntry32.dwSize := SizeOf(FProcessEntry32);
  ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);
  while Integer(ContinueLoop) <> 0 do
  begin
  if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) =
  UpperCase(ExeFileName)) or (UpperCase(FProcessEntry32.szExeFile) =
  UpperCase(ExeFileName))) then
  Result := Integer(TerminateProcess(
  OpenProcess(PROCESS_TERMINATE,BOOL(0),FProcessEntry32.th32ProcessID),0));
  ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);
  end;
  CloseHandle(FSnapshotHandle);
end;

function processExists(exeFileName: string): Boolean;
var
  ContinueLoop: BOOL;
  FSnapshotHandle: THandle;
  FProcessEntry32: TProcessEntry32;
begin
  FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
  FProcessEntry32.dwSize := SizeOf(FProcessEntry32);
  ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32);
  Result := False;
  while Integer(ContinueLoop) <> 0 do
  begin
  if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) =
  UpperCase(ExeFileName)) or (UpperCase(FProcessEntry32.szExeFile) =
  UpperCase(ExeFileName))) then
  begin
  Result := True;
  end;
  ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32);
  end;
  CloseHandle(FSnapshotHandle);
end;

Cara Buat Open VPN sendiri

5. Yang kelima lalu double klik Button1, lalu masukan coding:

if Button1.Caption = 'Connect' then
begin
proxyhost := edit1.text;
proxyport := edit2.text;
server_vpn := edit3.text;
port_vpn := edit4.text;
user_vpn := edit5.text;
pass_vpn := edit6.text;
zonksel1 := ' --client --dev tun --proto tcp-client --remote '+server_vpn+' '+port_vpn+' --resolv-retry infinite --nobind';
zonksel2 := ' --ca ca.crt --cert cert.crt --key key.key --persist-key --persist-tun';
zonksel3 := ' --auth-user-pass '+user_vpn+' '+pass_vpn+' --comp-lzo --verb 3 --cipher AES-128-CBC';
zonksel4 := ' --fast-io --pull --route-delay 2 --redirect-gateway --push "route 0.0.0.0.0.0.0.0 255.255.255.0"';
zonksel5 := ' --http-proxy '+proxyhost+' '+proxyport+'';
if RadioButton1.Checked then
begin
DosCommand1.CommandLine := 'zonksel\openvpn.exe' +zonksel1+zonksel2+zonksel3+zonksel4;
end
else
if RadioButton2.Checked then
begin
DosCommand1.CommandLine := 'zonksel\openvpn.exe' +zonksel1+zonksel2+zonksel3+zonksel4+zonksel5;
end;
DosCommand1.Execute;
DosCommand1.OutputLines := Memo1.Lines;
if not processExists('zonksel\tapinstall.exe') then
begin
ShellExecute(Application.Handle,'open','zonksel\tapinstall.exe',PChar('install "zonksel\OemWin2k.inf"tap0901'),nil,SW_HIDE);
 end;
Button1.Caption := 'Disconnect';
RadioButton1.Enabled := False;
RadioButton2.Enabled := False;
if RadioButton2.Checked then
edit1.Enabled := False;
edit2.Enabled := False;
end else
begin
DosCommand1.Stop;
KillTask('zonksel\openvpn.exe');
KillTask('zonksel\tapinstall.exe');
ShellExecute(Application.Handle,'close','zonksel\tapinstall.exe',PChar('uninstall "zonksel\OemWin2k.inf"tap0901'),nil,SW_HIDE);
Timer1.Enabled:= False;
Memo1.Text:='';
Button1.Caption := 'Connect';
RadioButton1.Enabled := True;
RadioButton2.Enabled := True;
if RadioButton2.Checked then
edit1.Enabled := True;
edit2.Enabled := True;
end;

Cara Buat Open VPN sendiri

6. Yang keenam double klik timmernya lalu masukan kode:

if processExists('zonksel\openvpn.exe')= False then
begin
proxyhost := edit1.text;
proxyport := edit2.text;
server_vpn := edit3.text;
port_vpn := edit4.text;
user_vpn := edit5.text;
pass_vpn := edit6.text;
zonksel1 := ' --client --dev tun --proto tcp-client --remote '+server_vpn+' '+port_vpn+' --resolv-retry infinite --nobind';
zonksel2 := ' --ca ca.crt --cert cert.crt --key key.key --persist-key --persist-tun';
zonksel3 := ' --auth-user-pass '+user_vpn+' '+pass_vpn+' --comp-lzo --verb 3 --cipher AES-128-CBC';
zonksel4 := ' --fast-io --pull --route-delay 2 --redirect-gateway --push "route 0.0.0.0.0.0.0.0 255.255.255.0"';
zonksel5 := ' --http-proxy '+proxyhost+' '+proxyport+'';
if RadioButton1.Checked then
begin
DosCommand1.CommandLine := 'zonksel\openvpn.exe' +zonksel1+zonksel2+zonksel3+zonksel4;
end
else
if RadioButton2.Checked then
begin
DosCommand1.CommandLine := 'zonksel\openvpn.exe' +zonksel1+zonksel2+zonksel3+zonksel4+zonksel5;
end;
DosCommand1.Execute;
DosCommand1.OutputLines := Memo1.Lines;
Timer1.Enabled:= True;
end;

Cara Buat Open VPN sendiri

7. Yang ketujuh double klik RadioButton1 atau bisa via tab event on click masukan kode:

edit1.Enabled := False;
edit2.Enabled := False;

Cara Buat Open VPN sendiri

8. yang kedelapan double klik RadioButton2 atau bisa via tab event on click masukan kode:

edit.Enabled := True;
edit2.Enabled := True;

Cara Buat Open VPN sendiri

Dan selesai dan dibawah ini adalah contoh penampakan yang sudah saya buat dan sudah siap digunakan,, dan karena coding di postingan ini masih dalam tahap perkembangan jadi sewaktu waktu halaman postingan ini akan di edit kembali dan sudah pasti.

Cara Buat Open VPN sendiri

Untuk Autoreconnect otomatisnya silahkan Lihat DISINI, untuk folder zonkselnya silahkan download DISINI ,Dan hanya itu Saja informasi seputar Cara Membuat Tunnel Open VPN Sendiri Dengan Delphi 7 Terbaru 2015 semoga bermanfaat dan membantu terima kasih.

Jika Sahabat kesulitan membuatnya silahkan lihat; Video Tutorial Cara Buat Tunnel Open VPN Sendiri Lengkap 2015