![]() | ![]() |
Some systems use normal file transfer protocols to do synchronization -- for instance, to synchronize laptops to servers when they are present on a network. To figure out how to use such systems with a firewall, first figure out what file transfer protocol they're using and then look up the details of that protocol in Chapter 17, "File Transfer, File Sharing, and Printing".
rsync may either be run like rdist on top of a remote shell protocol (preferably ssh but rsh is also possible), or use its own daemon, rsyncd. rsyncd does authentication but does not encrypt the data being transferred. rsyncd is useful if you are interested in using rsync to distribute publicly available files; it allows you to use rsync like FTP, without allowing remote shell access to the Internet. It is arguably more secure than FTP (it provides less functionality) and will certainly be more efficient in situations where people need to transfer updated files repeatedly. If you are transferring confidential data, you should use rsync over SSH instead of using rsyncd.
Direction | SourceAddr. | Dest.Addr. | Protocol | SourcePort | Dest.Port | ACKSet | Notes |
---|---|---|---|---|---|---|---|
In | Ext | Int | TCP | >1023 | 873 |
[162]
|
Request, external client to internal server |
Out | Int | Ext | TCP | 873 | >1023 | Yes | Response, internal server to external client |
Out | Int | Ext | TCP | >1023 | 873 | [162] | Request, internal client to external server |
In | Ext | Int | TCP | 873 | >1023 | Yes | Response, external server to internal client |
[162]ACK will not be set on the first packet (establishing connection) but will be set on the rest.
In Directory Replication, there is an exporting computer and at least one importing computer. Each machine has a special account that is used for replication. These accounts have the permissions for the "Backup Operators" group, which will allow them to read and write any file on the computer, regardless of its permissions. Furthermore, the accounts have to be effectively equivalent on the exporting and importing computer (either by having them actually be the same account, as part of a domain, or by giving them the same username and password). This means that two machines that replicate directories effectively trust each other completely; if either one of them is compromised, the other one will be too.
Windows NT Directory Replication is based on SMB transactions; see Chapter 14, "Intermediary Protocols", for a discussion of the packet filtering, proxying, and network address translation characteristics of SMB.
Because Directory Replication is based on SMB transactions, it is difficult to allow it securely through a firewall. Because it involves extensive trust, it is a bad idea to use it to or from machines that make up part of a firewall.
Directory replication is a single master system, where one machine maintains the master copy and propagates it to other machines. Files can be changed only on the machine with the master copy. FRS is a multiple master system, where files can be changed on any machine, and the changes will be propagated to the other systems.
FRS uses authenticated RPC calls to distribute information between replicas. For more information about the firewall characteristics of RPC, see Chapter 14, "Intermediary Protocols".