Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Rsync Encryption

Tags:

rsync

I know that rsync can enable / disable the ssh encryption protocol during the file transfer. So, if the ssh encryption protocol has been disabled, does it mean that rsync does not do any encryption at all?

Also, the reason why I asked the above question is we use the rsync module as part of our file transfer and there is nothing in the module that specifies that ssh encryption will be used.

If rsync does not use any encryption, then I can theoretically open a port on both source and destination machines and push the file from source to destination.

like image 385
bichonfrise74 Avatar asked Nov 30 '09 18:11

bichonfrise74


People also ask

Does rsync have encryption?

When rsync is used on the command line, a separate protocol, usually SSH, must be specified for the transfer. However, the rsync daemon does not encrypt traffic. This means that an rsync process can potentially be sniffed in transit by a third party, granting them access to whatever information is being transferred.

Does rsync use SSL?

The rsync-ssl script helps you to run an rsync copy to/from an rsync daemon that requires ssl connections.

Does rsync always use ssh?

rsync uses ssh as transport by default, but can use any remote shell (with a couple restrictions*), it doesn't care how it connects to a remote server.

What is the advantage of rsync?

Rsync is a tool for copying files between volumes in the same or separate servers. The advantage of rsync is that instead of copying data blindly, it compares the source and destination directories, so that only the difference between the two is sent through the network (or between volumes).


1 Answers

If you use the rsync:// protocol scheme (i.e. when you connect to a rsyncd daemon) then no encryption will be used (although password authentication is done using a MD4-based challenge-response system and is probably still reasonably secure).

If you use the hostname:/some/path scheme then rsync transparently calls SSH, which encrypts everything, and uses SSH's native authentication mechanisms. As far as I can tell, some OpenSSH versions supported an option Ciphers null in the configuration file, but this has been removed in later versions.

Generally you shouldn't worry about encryption overhead, unless you are working in a 1 Gbit network or you have old computers.

like image 72
intgr Avatar answered Oct 14 '22 05:10

intgr