1 .\" $OpenBSD: sftp.1,v 1.61 2005/03/01 17:19:35 jmc Exp $
3 .\" Copyright (c) 2001 Damien Miller. All rights reserved.
5 .\" Redistribution and use in source and binary forms, with or without
6 .\" modification, are permitted provided that the following conditions
8 .\" 1. Redistributions of source code must retain the above copyright
9 .\" notice, this list of conditions and the following disclaimer.
10 .\" 2. Redistributions in binary form must reproduce the above copyright
11 .\" notice, this list of conditions and the following disclaimer in the
12 .\" documentation and/or other materials provided with the distribution.
14 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
15 .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
16 .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
17 .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
18 .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
19 .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
20 .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
21 .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
23 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 .Nd secure file transfer program
35 .Op Fl B Ar buffer_size
37 .Op Fl F Ar ssh_config
38 .Op Fl o Ar ssh_option
39 .Op Fl P Ar sftp_server_path
40 .Op Fl R Ar num_requests
42 .Op Fl s Ar subsystem | sftp_server
46 .Oo Oo Ar user Ns @ Oc Ns
47 .Ar host Ns Oo : Ns Ar file Oo
50 .Oo Oo Ar user Ns @ Oc Ns
51 .Ar host Ns Oo : Ns Ar dir Ns
55 .Oo Ar user Ns @ Oc Ns Ar host
58 is an interactive file transfer program, similar to
60 which performs all operations over an encrypted
63 It may also use many features of ssh, such as public key authentication and
66 connects and logs into the specified
68 then enters an interactive command mode.
70 The second usage format will retrieve files automatically if a non-interactive
71 authentication method is used; otherwise it will do so after
72 successful interactive authentication.
74 The third usage format allows
76 to start in a remote directory.
78 The final usage format allows for automated sessions using the
81 In such cases, it is usually necessary to configure public key authentication
82 to obviate the need to enter a password at connection time (see
87 The options are as follows:
90 Specify the use of protocol version 1.
91 .It Fl B Ar buffer_size
92 Specify the size of the buffer that
94 uses when transferring files.
95 Larger buffers require fewer round trips at the cost of higher
97 The default is 32768 bytes.
99 Batch mode reads a series of commands from an input
103 Since it lacks user interaction it should be used in conjunction with
104 non-interactive authentication.
109 may be used to indicate standard input.
111 will abort if any of the following
113 .Ic get , put , rename , ln ,
114 .Ic rm , mkdir , chdir , ls ,
115 .Ic lchdir , chmod , chown , chgrp , lpwd
118 Termination on error can be suppressed on a command by command basis by
119 prefixing the command with a
121 character (for example,
122 .Ic -rm /tmp/blah* ) .
124 Enables compression (via ssh's
127 .It Fl F Ar ssh_config
128 Specifies an alternative
129 per-user configuration file for
131 This option is directly passed to
133 .It Fl o Ar ssh_option
134 Can be used to pass options to
136 in the format used in
138 This is useful for specifying options
139 for which there is no separate
142 For example, to specify an alternate port use:
144 For full details of the options listed below, and their possible values, see
147 .Bl -tag -width Ds -offset indent -compact
151 .It ChallengeResponseAuthentication
157 .It ConnectionAttempts
161 .It GlobalKnownHostsFile
162 .It GSSAPIAuthentication
163 .It GSSAPIDelegateCredentials
166 .It HostbasedAuthentication
167 .It HostKeyAlgorithms
172 .It KbdInteractiveDevices
175 .It NoHostAuthenticationForLocalhost
176 .It NumberOfPasswordPrompts
177 .It PasswordAuthentication
179 .It PreferredAuthentications
182 .It PubkeyAuthentication
183 .It RhostsRSAAuthentication
184 .It RSAAuthentication
186 .It ServerAliveInterval
187 .It ServerAliveCountMax
189 .It StrictHostKeyChecking
191 .It UsePrivilegedPort
193 .It UserKnownHostsFile
196 .It Fl P Ar sftp_server_path
197 Connect directly to a local sftp server
200 This option may be useful in debugging the client and server.
201 .It Fl R Ar num_requests
202 Specify how many requests may be outstanding at any one time.
203 Increasing this may slightly improve file transfer speed
204 but will increase memory usage.
205 The default is 16 outstanding requests.
209 to use for the encrypted connection.
210 The program must understand
213 .It Fl s Ar subsystem | sftp_server
214 Specifies the SSH2 subsystem or the path for an sftp server
216 A path is useful for using
218 over protocol version 1, or when the remote
220 does not have an sftp subsystem configured.
223 This option is also passed to ssh.
225 .Sh INTERACTIVE COMMANDS
226 Once in interactive mode,
228 understands a set of commands similar to those of
230 Commands are case insensitive.
231 Pathnames that contain spaces must be enclosed in quotes.
232 Any special characters contained within pathnames that are recognized by
234 must be escaped with backslashes
241 Change remote directory to
243 .It Ic chgrp Ar grp Ar path
251 characters and may match multiple files.
253 must be a numeric GID.
254 .It Ic chmod Ar mode Ar path
255 Change permissions of file
262 characters and may match multiple files.
263 .It Ic chown Ar own Ar path
271 characters and may match multiple files.
273 must be a numeric UID.
284 and store it on the local machine.
286 path name is not specified, it is given the same name it has on the
291 characters and may match multiple files.
296 must specify a directory.
299 flag is specified, then full file permissions and access times are
304 Change local directory to
306 .It Ic lls Op Ar ls-options Op Ar path
307 Display local directory listing of either
309 or current directory if
313 may contain any flags supported by the local system's
319 characters and may match multiple files.
320 .It Ic lmkdir Ar path
321 Create local directory specified by
323 .It Ic ln Ar oldpath Ar newpath
324 Create a symbolic link from
329 Print local working directory.
334 Display a remote directory listing of either
336 or the current directory if
342 characters and may match multiple files.
344 The following flags are recognized and alter the behaviour of
349 Produce single columnar output.
351 List files beginning with a dot
354 Do not sort the listing.
355 The default sort order is lexicographical.
357 Display additional details including permissions
358 and ownership information.
360 Produce a long listing with user and group information presented
363 Reverse the sort order of the listing.
365 Sort the listing by file size.
367 Sort the listing by last modification time.
369 .It Ic lumask Ar umask
373 Create remote directory specified by
376 Toggle display of progress meter.
384 and store it on the remote machine.
385 If the remote path name is not specified, it is given the same name it has
386 on the local machine.
390 characters and may match multiple files.
395 must specify a directory.
398 flag is specified, then the file's full permission and access time are
401 Display remote working directory.
405 .It Ic rename Ar oldpath Ar newpath
406 Rename remote file from
411 Delete remote file specified by
414 Remove remote directory specified by
416 .It Ic symlink Ar oldpath Ar newpath
417 Create a symbolic link from
425 .It Ic \&! Ar command
430 Escape to local shell.
448 .%T "SSH File Transfer Protocol"
449 .%N draft-ietf-secsh-filexfer-00.txt
451 .%O work in progress material