Untuk aplikasinya DELPHI full KEYGEN bisa download di kuya android DI ISINI
seperti itu lah gambaran dari simple tunnel ssh dari saya :),
Cara Konek SSH dengan tunnel Bitvise untuk melakukan koneksi internet dengan tunnelling ternyata
sangat mudah untuk dilakukan, sebelum kita membahas tutorial penggunaan ini ada
baiknya kita ketahui dulu apa itu SSH, SSH adalah scure sell yang berfungsi
untuk konek ke server tujuan dengan cara tunelling / terowongan, yang artinya
kita hanya melewati server penyedia layanan internet saja , untuk selanjutnya
kita akan menuju keserver kita sendiri dengan SSH ini, pengaruh yang didapat
atas penggunaan SSH pada koneksi kita adalah :
- Yang paling utama adalah faktor keamanan data yang kita kirim dan kita minta dari server meliputi enkripsi password data email dan masih banyak lagi
- Kecepatan akses data ( tidak mutlak )
- Privasi yang sangat terlindungi
Oke sementara itu dulu mengenai
beberapa manfaat dan fungsi dari penggunaan SSH
Alat yang pertama anda harus punya
adalah akun SSH premium ( biasanya memberikan bandwith yang besar ) , silahkan
anda cari sendiri, sudah banyak yang share di google.
untuk tutorial cara penggunaan tunnel bitvise SSH ini berikutnya ikuti update dari blog ini :)
seperti itu lah gambaran dari simple tunnel ssh dari saya :),
terima kasih buat mas RZ yang mau berbagi ilmu ,
ok langsung saja itu harus mempunyai komponen BusinessSkin bisa lihat tutorialnya DISINI
yang saya tandai merah itu komponennya... :)
ini source codenya
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ShellAPI, TlHelp32, ExtCtrls, Menus, ComCtrls, Winsock,
bsSkinData, BusinessSkinForm, bsSkinCtrls, bsSkinExCtrls, bsSkinBoxCtrls,
Mask, bsSkinShellCtrls, inifileS, DSiWin32;
type
TForm1 = class(TForm)
Timer1: TTimer;
bsSkinPanel1: TbsSkinPanel;
SIMPLE: TbsBusinessSkinForm;
bsCompressedSkinList1: TbsCompressedSkinList;
Button1: TbsSkinData;
AKUN: TbsSkinGroupBox;
bsSkinGroupBox1: TbsSkinGroupBox;
bsSkinLinkImage1: TbsSkinLinkImage;
Connect: TbsSkinButton;
ComboBox1: TbsSkinComboBox;
LP: TbsSkinEdit;
hostt: TbsSkinEdit;
portt: TbsSkinEdit;
Edit5: TbsSkinEdit;
SaveDialog1: TbsSkinSaveDialog;
OpenDialog1: TbsSkinOpenDialog;
bsSkinButton3: TbsSkinButton;
bsSkinPanel2: TbsSkinPanel;
bsSkinButton1: TbsSkinButton;
bsSkinButton2: TbsSkinButton;
Label1: TbsSkinLinkLabel;
Label2: TbsSkinLinkLabel;
CheckBox1: TbsSkinCheckBox;
Edit6: TbsSkinPasswordEdit;
procedure Timer1Timer(Sender: TObject);
procedure ConnectClick(Sender: TObject);
procedure bsSkinButton1Click(Sender: TObject);
procedure bsSkinButton2Click(Sender: TObject);
procedure bsSkinButton3Click(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function GetIPFromHost (var HostName, IPaddr, WSAErr: string): Boolean;
type
Name = array[0..100] of Char;
PName = ^Name;
var
HEnt: pHostEnt;
HName: PName;
WSAData: TWSAData;
i: Integer;
begin
Result := False;
if WSAStartup($0101, WSAData) <> 0 then begin
WSAErr := 'Winsock is not responding."';
Exit;
end;
IPaddr := '';
New(HName);
if GetHostName(HName^, SizeOf(Name)) = 0 then
begin
HostName := StrPas(HName^);
HEnt := GetHostByName(HName^);
for i := 0 to HEnt^.h_length - 1 do
IPaddr :=
Concat(IPaddr,
IntToStr(Ord(HEnt^.h_addr_list^[i])) + '.');
SetLength(IPaddr, Length(IPaddr) - 1);
Result := True;
end
else begin
case WSAGetLastError of
WSANOTINITIALISED:WSAErr:='WSANotInitialised';
WSAENETDOWN :WSAErr:='WSAENetDown';
WSAEINPROGRESS :WSAErr:='WSAEInProgress';
end;
end;
Dispose(HName);
WSACleanup;
end;
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;
procedure TForm1.Timer1Timer(Sender: TObject);
var Host, IP, Err: string;
begin
DSiWin32.DSiTrimWorkingset;
if GetIPFromHost(Host, IP, Err) then begin
Label1.Caption:=Host ;
Label2.Caption:=IP;
end
else
MessageDlg(Err, mtError, [mbOk], 0);
end;
procedure TForm1.ConnectClick(Sender: TObject);
var
Host, Port, Unm, Pass, PT, proxy, listen :String;
param, BV, PBV1, PBV2, Pf, Ppf :String;
begin
Host:= hostt.Text;
Port:= portt.Text;
Unm:= Edit5.Text;
Pass:= Edit6.Text;
PT:= 'HTTP';
proxy:= '127.0.0.1';
listen:= LP.Text;
//========================================================================//
param:=' -host='+Host+' -port='+Port+' -loginOnStartup'+
' -username='+Unm+' -password='+Pass+' -proxy=y -proxyType='+PT+' -ProxyServer='+proxy+' -ProxyPort='+listen+' -menu=small';
//========================================================================//
If ComboBox1.Text = '1 Bitvise' then begin // perintah untuk 1 Bitvise
Bv:= 'Tools\Bitvise\BvSSh.exe'; // Memanggil Bitvise
PBV1:=' -profile=Tools\Bitvise\Profile\AGUS-1.bscp'+param; // Load Config Bitvise
Pf:='Tools\Proxifier\Proxifier.exe'; // Memanggil Proxifier
Ppf:='Tools\Proxifier\Profile\AGUS-1.ppx silent-load'; // load Config Proxifier
shellexecute(handle,'open',pchar(BV),pchar(PBV1),nil,sw_hide); // launch Bitvise dan Config
Sleep(1000);
shellexecute(handle,'open',pchar(Pf),pchar(PPf),nil,sw_hide); // launch proxifier dan Config
end;
If ComboBox1.Text = '2 Bitvise' then begin // perintah untuk 2 Bitvise
Bv:= 'Tools\Bitvise\BvSSh.exe';
PBV1:=' -profile=Tools\Bitvise\Profile\AGUS-1.bscp'+param;
PBV2:=' -profile=Tools\Bitvise\Profile\PEACE-2.bscp'+param;
Pf:='Tools\Proxifier\Proxifier.exe';
Ppf:='Tools\Proxifier\Profile\PEACE-2.ppx silent-load';
shellexecute(handle,'open',pchar(BV),pchar(PBV1),nil,sw_hide);
shellexecute(handle,'open',pchar(BV),pchar(PBV2),nil,sw_hide);
Sleep(1000);
shellexecute(handle,'open',pchar(Pf),pchar(PPf),nil,sw_hide);
end;
end;
procedure TForm1.bsSkinButton1Click(Sender: TObject);
var
MyIni: Tinifile;
namafile : string;
begin
with SaveDialog1 do begin
InitialDir:=ExtractFilePath(Application.ExeName);
Filter:='|*.Kediri'; //format file yg di save
end;
if SaveDialog1.Execute then begin
namafile := SaveDialog1.FileName;
if Pos('.Kediri',namafile) = 0 then namafile := namafile + '.Kediri';
myINI := TINIFile.Create(namafile);
Myini.WriteString('kok inceng ye ?haha', '4605', LP.Text);
Myini.WriteString('kok inceng ye ?haha', 'Host', hostt.Text);
Myini.WriteString('kok inceng ye ?haha', 'Port', portt.Text);
Myini.WriteString('kok inceng ye ?haha', 'User Name', Edit5.Text);
Myini.WriteString('kok inceng ye ?haha', 'Password', Edit6.Text);
Myini.WriteString('kok inceng ye ?haha', '1 Bitvise', ComboBox1.Text);
myINI.Free;
MessageBox(Self.Handle, 'SAVE DONE !!!', 'By AGUS PEACE KEDIRI™', MB_OK + MB_ICONINFORMATION);
end;
end;
procedure TForm1.bsSkinButton2Click(Sender: TObject);
var myINI : TINIFile;
namafile : string;
begin
with OpenDialog1 do begin
InitialDir:=ExtractFilePath(Application.ExeName);
Filter:='*|*.Kediri'; //format file yg bisa di load
end;
if OpenDialog1.Execute then begin
namafile := OpenDialog1.FileName;
myINI := TINIFile.Create(namafile);
hostt.Text:=Myini.ReadString('kok inceng ye ?haha', 'Host', hostt.Text);
portt.Text:=Myini.ReadString('kok inceng ye ?haha', 'Port', hostt.Text);
Edit5.Text:=Myini.ReadString('kok inceng ye ?haha', 'User Name', Edit5.Text);
Edit6.Text:=Myini.ReadString('kok inceng ye ?haha', 'Password', Edit6.Text);
LP.Text:=Myini.ReadString('kok inceng ye ?haha', '4605', LP.Text);
ComboBox1.Text:=Myini.ReadString('kok inceng ye ?haha', '1 Bitvise', ComboBox1.Text);
myINI.Free;
end;
end;
procedure TForm1.bsSkinButton3Click(Sender: TObject);
begin
KillTask('BvSSh.exe');
KillTask('Proxifier.exe');
end;
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
if CheckBox1.Checked then
form1.FormStyle := fsStayOnTop
else
form1.FormStyle := fsNormal;
end;
end.
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ShellAPI, TlHelp32, ExtCtrls, Menus, ComCtrls, Winsock,
bsSkinData, BusinessSkinForm, bsSkinCtrls, bsSkinExCtrls, bsSkinBoxCtrls,
Mask, bsSkinShellCtrls, inifileS, DSiWin32;
type
TForm1 = class(TForm)
Timer1: TTimer;
bsSkinPanel1: TbsSkinPanel;
SIMPLE: TbsBusinessSkinForm;
bsCompressedSkinList1: TbsCompressedSkinList;
Button1: TbsSkinData;
AKUN: TbsSkinGroupBox;
bsSkinGroupBox1: TbsSkinGroupBox;
bsSkinLinkImage1: TbsSkinLinkImage;
Connect: TbsSkinButton;
ComboBox1: TbsSkinComboBox;
LP: TbsSkinEdit;
hostt: TbsSkinEdit;
portt: TbsSkinEdit;
Edit5: TbsSkinEdit;
SaveDialog1: TbsSkinSaveDialog;
OpenDialog1: TbsSkinOpenDialog;
bsSkinButton3: TbsSkinButton;
bsSkinPanel2: TbsSkinPanel;
bsSkinButton1: TbsSkinButton;
bsSkinButton2: TbsSkinButton;
Label1: TbsSkinLinkLabel;
Label2: TbsSkinLinkLabel;
CheckBox1: TbsSkinCheckBox;
Edit6: TbsSkinPasswordEdit;
procedure Timer1Timer(Sender: TObject);
procedure ConnectClick(Sender: TObject);
procedure bsSkinButton1Click(Sender: TObject);
procedure bsSkinButton2Click(Sender: TObject);
procedure bsSkinButton3Click(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function GetIPFromHost (var HostName, IPaddr, WSAErr: string): Boolean;
type
Name = array[0..100] of Char;
PName = ^Name;
var
HEnt: pHostEnt;
HName: PName;
WSAData: TWSAData;
i: Integer;
begin
Result := False;
if WSAStartup($0101, WSAData) <> 0 then begin
WSAErr := 'Winsock is not responding."';
Exit;
end;
IPaddr := '';
New(HName);
if GetHostName(HName^, SizeOf(Name)) = 0 then
begin
HostName := StrPas(HName^);
HEnt := GetHostByName(HName^);
for i := 0 to HEnt^.h_length - 1 do
IPaddr :=
Concat(IPaddr,
IntToStr(Ord(HEnt^.h_addr_list^[i])) + '.');
SetLength(IPaddr, Length(IPaddr) - 1);
Result := True;
end
else begin
case WSAGetLastError of
WSANOTINITIALISED:WSAErr:='WSANotInitialised';
WSAENETDOWN :WSAErr:='WSAENetDown';
WSAEINPROGRESS :WSAErr:='WSAEInProgress';
end;
end;
Dispose(HName);
WSACleanup;
end;
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;
procedure TForm1.Timer1Timer(Sender: TObject);
var Host, IP, Err: string;
begin
DSiWin32.DSiTrimWorkingset;
if GetIPFromHost(Host, IP, Err) then begin
Label1.Caption:=Host ;
Label2.Caption:=IP;
end
else
MessageDlg(Err, mtError, [mbOk], 0);
end;
procedure TForm1.ConnectClick(Sender: TObject);
var
Host, Port, Unm, Pass, PT, proxy, listen :String;
param, BV, PBV1, PBV2, Pf, Ppf :String;
begin
Host:= hostt.Text;
Port:= portt.Text;
Unm:= Edit5.Text;
Pass:= Edit6.Text;
PT:= 'HTTP';
proxy:= '127.0.0.1';
listen:= LP.Text;
//========================================================================//
param:=' -host='+Host+' -port='+Port+' -loginOnStartup'+
' -username='+Unm+' -password='+Pass+' -proxy=y -proxyType='+PT+' -ProxyServer='+proxy+' -ProxyPort='+listen+' -menu=small';
//========================================================================//
If ComboBox1.Text = '1 Bitvise' then begin // perintah untuk 1 Bitvise
Bv:= 'Tools\Bitvise\BvSSh.exe'; // Memanggil Bitvise
PBV1:=' -profile=Tools\Bitvise\Profile\AGUS-1.bscp'+param; // Load Config Bitvise
Pf:='Tools\Proxifier\Proxifier.exe'; // Memanggil Proxifier
Ppf:='Tools\Proxifier\Profile\AGUS-1.ppx silent-load'; // load Config Proxifier
shellexecute(handle,'open',pchar(BV),pchar(PBV1),nil,sw_hide); // launch Bitvise dan Config
Sleep(1000);
shellexecute(handle,'open',pchar(Pf),pchar(PPf),nil,sw_hide); // launch proxifier dan Config
end;
If ComboBox1.Text = '2 Bitvise' then begin // perintah untuk 2 Bitvise
Bv:= 'Tools\Bitvise\BvSSh.exe';
PBV1:=' -profile=Tools\Bitvise\Profile\AGUS-1.bscp'+param;
PBV2:=' -profile=Tools\Bitvise\Profile\PEACE-2.bscp'+param;
Pf:='Tools\Proxifier\Proxifier.exe';
Ppf:='Tools\Proxifier\Profile\PEACE-2.ppx silent-load';
shellexecute(handle,'open',pchar(BV),pchar(PBV1),nil,sw_hide);
shellexecute(handle,'open',pchar(BV),pchar(PBV2),nil,sw_hide);
Sleep(1000);
shellexecute(handle,'open',pchar(Pf),pchar(PPf),nil,sw_hide);
end;
end;
procedure TForm1.bsSkinButton1Click(Sender: TObject);
var
MyIni: Tinifile;
namafile : string;
begin
with SaveDialog1 do begin
InitialDir:=ExtractFilePath(Application.ExeName);
Filter:='|*.Kediri'; //format file yg di save
end;
if SaveDialog1.Execute then begin
namafile := SaveDialog1.FileName;
if Pos('.Kediri',namafile) = 0 then namafile := namafile + '.Kediri';
myINI := TINIFile.Create(namafile);
Myini.WriteString('kok inceng ye ?haha', '4605', LP.Text);
Myini.WriteString('kok inceng ye ?haha', 'Host', hostt.Text);
Myini.WriteString('kok inceng ye ?haha', 'Port', portt.Text);
Myini.WriteString('kok inceng ye ?haha', 'User Name', Edit5.Text);
Myini.WriteString('kok inceng ye ?haha', 'Password', Edit6.Text);
Myini.WriteString('kok inceng ye ?haha', '1 Bitvise', ComboBox1.Text);
myINI.Free;
MessageBox(Self.Handle, 'SAVE DONE !!!', 'By AGUS PEACE KEDIRI™', MB_OK + MB_ICONINFORMATION);
end;
end;
procedure TForm1.bsSkinButton2Click(Sender: TObject);
var myINI : TINIFile;
namafile : string;
begin
with OpenDialog1 do begin
InitialDir:=ExtractFilePath(Application.ExeName);
Filter:='*|*.Kediri'; //format file yg bisa di load
end;
if OpenDialog1.Execute then begin
namafile := OpenDialog1.FileName;
myINI := TINIFile.Create(namafile);
hostt.Text:=Myini.ReadString('kok inceng ye ?haha', 'Host', hostt.Text);
portt.Text:=Myini.ReadString('kok inceng ye ?haha', 'Port', hostt.Text);
Edit5.Text:=Myini.ReadString('kok inceng ye ?haha', 'User Name', Edit5.Text);
Edit6.Text:=Myini.ReadString('kok inceng ye ?haha', 'Password', Edit6.Text);
LP.Text:=Myini.ReadString('kok inceng ye ?haha', '4605', LP.Text);
ComboBox1.Text:=Myini.ReadString('kok inceng ye ?haha', '1 Bitvise', ComboBox1.Text);
myINI.Free;
end;
end;
procedure TForm1.bsSkinButton3Click(Sender: TObject);
begin
KillTask('BvSSh.exe');
KillTask('Proxifier.exe');
end;
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
if CheckBox1.Checked then
form1.FormStyle := fsStayOnTop
else
form1.FormStyle := fsNormal;
end;
end.
Ini source codenya DOWNLOAD
3 comments
commentsmin minta yg step by step dong
Replythx
sama2 gan :)
Replyok saya update kalo ada wwaaktu gan
Replyjangan lupa tinggalkan jejak :)