Trasnport entire discs/mount mounts/folders to remote systems securely (SSL/MD5/Hyper Threaded compression enabled)
If you are looking to transport data to remote systems and need following features
-Smallest transfer size of the archive
-Maximum compression which your CPU supports
-Secured SSL Transfer (Mostly clients ask for it)
-Tamper proof Transfer with Hash checks to prevent MITM
-Dont want to install any agents or target system
-Dont have access/admin rights on target system
-Want some thing quick and secured to transfer disc
-Want to know the BW for uplink and time to transfer first
Architecture
📜 How to get Started
You can do a Pre Flight Test to see how much of compression your
cpu will be able to do and how fast you can encrypt the data.
Clone it
===============
git clone https://github.com/bhishekarora/secure_data_transporter.git
===============
$ chmod +x *
$./preflight_checklist.sh
$ cd secure_data_transporter/sender
$chmod +x *
============================
$ sender/PaylodSender.sh // Sender side simple mode
$ sender/PaylodSender.sh -b // Sender side BW Test mode
===========================
## Go to receiver system and cd
$ cd secure_data_transporter/receiver
$ chmod +x *
$ receiver/PayloadReceiver.sh // Receiver side
$ receiver/PayloadReceiver.sh -b // Receiver side BW Test mode
Follow prompts after the tool starts .
** Please note that if using bandwidth mode, port 9000 need to be allowed through firewall, bandwidth server need this port to give up-link statistics.
Modes
There are two modes to run ?
-
Simple Mode Lets you send data without testing the Bandwidth between two systems
-
Bandwidth Test mode Will let you send data but also perform a bandwidth test between two systems to estimate the time required to complete the transfer.
Simple Mode
BW Test Mode
Demo Stats
2 GB uncompressed to ⇒ 1.2 GB in 95 seconds
Reduction in size 40%
CPU info -
Intel i3@2 Ghz Dell system
4 CPU * 2 cores (8 Threads) utilized while compression
Encryption duration on above hardware 20 Sec
Transfer time will vary with BW
You can use the bandwidth mode by enabling the -b option
to send the payload in bandwidth mode.
if ( target system inside L2/L3 switch)
BW will be more and Time taken will be less e.g size of archive/bw
if (target is remote and need ISP/External routing)
BW will be less and time taken will be more
To transfer 1 GB on 10 Mbytes/s connection will take 100s
** Please note your ISP uplink speed is in bits, divide by 8
before doing the above calculations