1 .\" $NetBSD: sftp.1,v 1.2 2009/06/07 22:38:47 christos Exp $
2 .\" $OpenBSD: sftp.1,v 1.69 2008/12/09 15:35:00 sobrado Exp $
4 .\" Copyright (c) 2001 Damien Miller. All rights reserved.
6 .\" Redistribution and use in source and binary forms, with or without
7 .\" modification, are permitted provided that the following conditions
9 .\" 1. Redistributions of source code must retain the above copyright
10 .\" notice, this list of conditions and the following disclaimer.
11 .\" 2. Redistributions in binary form must reproduce the above copyright
12 .\" notice, this list of conditions and the following disclaimer in the
13 .\" documentation and/or other materials provided with the distribution.
15 .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
16 .\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
17 .\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
18 .\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
19 .\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
20 .\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
21 .\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
22 .\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
23 .\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
24 .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 .Nd secure file transfer program
36 .Op Fl B Ar buffer_size
38 .Op Fl F Ar ssh_config
39 .Op Fl o Ar ssh_option
40 .Op Fl P Ar sftp_server_path
41 .Op Fl R Ar num_requests
43 .Op Fl s Ar subsystem | sftp_server
47 .Oo Ar user Ns @ Oc Ns
48 .Ar host Ns Op : Ns Ar
50 .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 necessary to configure non-interactive 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 ,
116 .Ic chgrp , lpwd , df ,
119 Termination on error can be suppressed on a command by command basis by
120 prefixing the command with a
122 character (for example,
123 .Ic -rm /tmp/blah* ) .
125 Enables compression (via ssh's
128 .It Fl F Ar ssh_config
129 Specifies an alternative
130 per-user configuration file for
132 This option is directly passed to
134 .It Fl o Ar ssh_option
135 Can be used to pass options to
137 in the format used in
139 This is useful for specifying options
140 for which there is no separate
143 For example, to specify an alternate port use:
145 For full details of the options listed below, and their possible values, see
148 .Bl -tag -width Ds -offset indent -compact
152 .It ChallengeResponseAuthentication
158 .It ConnectionAttempts
162 .It GlobalKnownHostsFile
163 .It GSSAPIAuthentication
164 .It GSSAPIDelegateCredentials
167 .It HostbasedAuthentication
168 .It HostKeyAlgorithms
173 .It KbdInteractiveDevices
176 .It NoHostAuthenticationForLocalhost
177 .It NumberOfPasswordPrompts
178 .It PasswordAuthentication
180 .It PreferredAuthentications
183 .It PubkeyAuthentication
185 .It RhostsRSAAuthentication
186 .It RSAAuthentication
188 .It ServerAliveInterval
189 .It ServerAliveCountMax
191 .It StrictHostKeyChecking
193 .It UsePrivilegedPort
195 .It UserKnownHostsFile
198 .It Fl P Ar sftp_server_path
199 Connect directly to a local sftp server
202 This option may be useful in debugging the client and server.
203 .It Fl R Ar num_requests
204 Specify how many requests may be outstanding at any one time.
205 Increasing this may slightly improve file transfer speed
206 but will increase memory usage.
207 The default is 256 outstanding requests providing for 8MB
208 of outstanding data with a 32KB buffer.
212 to use for the encrypted connection.
213 The program must understand
216 .It Fl s Ar subsystem | sftp_server
217 Specifies the SSH2 subsystem or the path for an sftp server
219 A path is useful for using
221 over protocol version 1, or when the remote
223 does not have an sftp subsystem configured.
226 This option is also passed to ssh.
228 .Sh INTERACTIVE COMMANDS
229 Once in interactive mode,
231 understands a set of commands similar to those of
233 Commands are case insensitive.
234 Pathnames that contain spaces must be enclosed in quotes.
235 Any special characters contained within pathnames that are recognized by
237 must be escaped with backslashes
244 Change remote directory to
246 .It Ic chgrp Ar grp Ar path
254 characters and may match multiple files.
256 must be a numeric GID.
257 .It Ic chmod Ar mode Ar path
258 Change permissions of file
265 characters and may match multiple files.
266 .It Ic chown Ar own Ar path
274 characters and may match multiple files.
276 must be a numeric UID.
277 .It Ic df Oo Fl hi Oc Oo Ar path Oc
278 Display usage information for the filesystem holding the current directory
284 flag is specified, the capacity information will be displayed using
285 "human-readable" suffixes.
288 flag requests display of inode information in addition to capacity information.
289 This command is only supported on servers that implement the
290 .Dq statvfs@openssh.com
295 .It Ic get Oo Fl P Oc Ar remote-path Oo Ar local-path Oc
298 and store it on the local machine.
300 path name is not specified, it is given the same name it has on the
305 characters and may match multiple files.
310 must specify a directory.
313 flag is specified, then full file permissions and access times are
318 Change local directory to
320 .It Ic lls Op Ar ls-options Op Ar path
321 Display local directory listing of either
323 or current directory if
327 may contain any flags supported by the local system's
333 characters and may match multiple files.
334 .It Ic lmkdir Ar path
335 Create local directory specified by
337 .It Ic ln Ar oldpath Ar newpath
338 Create a symbolic link from
343 Print local working directory.
344 .It Ic ls Oo Fl 1aflnrSt Oc Oo Ar path Oc
345 Display a remote directory listing of either
347 or the current directory if
353 characters and may match multiple files.
355 The following flags are recognized and alter the behaviour of
360 Produce single columnar output.
362 List files beginning with a dot
365 Do not sort the listing.
366 The default sort order is lexicographical.
368 Display additional details including permissions
369 and ownership information.
371 Produce a long listing with user and group information presented
374 Reverse the sort order of the listing.
376 Sort the listing by file size.
378 Sort the listing by last modification time.
380 .It Ic lumask Ar umask
384 Create remote directory specified by
387 Toggle display of progress meter.
388 .It Ic put Oo Fl P Oc Ar local-path Oo Ar remote-path Oc
391 and store it on the remote machine.
392 If the remote path name is not specified, it is given the same name it has
393 on the local machine.
397 characters and may match multiple files.
402 must specify a directory.
405 flag is specified, then the file's full permission and access time are
408 Display remote working directory.
412 .It Ic rename Ar oldpath Ar newpath
413 Rename remote file from
418 Delete remote file specified by
421 Remove remote directory specified by
423 .It Ic symlink Ar oldpath Ar newpath
424 Create a symbolic link from
432 .It Ic \&! Ns Ar command
437 Escape to local shell.
455 .%T "SSH File Transfer Protocol"
456 .%N draft-ietf-secsh-filexfer-00.txt
458 .%O work in progress material