Welcome a trimmed version of OpenSSH-4.1p1 in the tree.
[dragonfly.git] / crypto / openssh-4 / sftp.1
1 .\" $OpenBSD: sftp.1,v 1.61 2005/03/01 17:19:35 jmc Exp $
2 .\"
3 .\" Copyright (c) 2001 Damien Miller.  All rights reserved.
4 .\"
5 .\" Redistribution and use in source and binary forms, with or without
6 .\" modification, are permitted provided that the following conditions
7 .\" are met:
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.
13 .\"
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.
24 .\"
25 .Dd February 4, 2001
26 .Dt SFTP 1
27 .Os
28 .Sh NAME
29 .Nm sftp
30 .Nd secure file transfer program
31 .Sh SYNOPSIS
32 .Nm sftp
33 .Bk -words
34 .Op Fl 1Cv
35 .Op Fl B Ar buffer_size
36 .Op Fl b Ar batchfile
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
41 .Op Fl S Ar program
42 .Op Fl s Ar subsystem | sftp_server
43 .Ar host
44 .Ek
45 .Nm sftp
46 .Oo Oo Ar user Ns @ Oc Ns
47 .Ar host Ns Oo : Ns Ar file Oo
48 .Ar file Oc Oc Oc
49 .Nm sftp
50 .Oo Oo Ar user Ns @ Oc Ns
51 .Ar host Ns Oo : Ns Ar dir Ns
52 .Oo Ar / Oc Oc Oc
53 .Nm sftp
54 .Fl b Ar batchfile
55 .Oo Ar user Ns @ Oc Ns Ar host
56 .Sh DESCRIPTION
57 .Nm
58 is an interactive file transfer program, similar to
59 .Xr ftp 1 ,
60 which performs all operations over an encrypted
61 .Xr ssh 1
62 transport.
63 It may also use many features of ssh, such as public key authentication and
64 compression.
65 .Nm
66 connects and logs into the specified
67 .Ar host ,
68 then enters an interactive command mode.
69 .Pp
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.
73 .Pp
74 The third usage format allows
75 .Nm
76 to start in a remote directory.
77 .Pp
78 The final usage format allows for automated sessions using the
79 .Fl b
80 option.
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
83 .Xr sshd 8
84 and
85 .Xr ssh-keygen 1
86 for details).
87 The options are as follows:
88 .Bl -tag -width Ds
89 .It Fl 1
90 Specify the use of protocol version 1.
91 .It Fl B Ar buffer_size
92 Specify the size of the buffer that
93 .Nm
94 uses when transferring files.
95 Larger buffers require fewer round trips at the cost of higher
96 memory consumption.
97 The default is 32768 bytes.
98 .It Fl b Ar batchfile
99 Batch mode reads a series of commands from an input
100 .Ar batchfile
101 instead of
102 .Em stdin .
103 Since it lacks user interaction it should be used in conjunction with
104 non-interactive authentication.
105 A
106 .Ar batchfile
107 of
108 .Sq \-
109 may be used to indicate standard input.
110 .Nm
111 will abort if any of the following
112 commands fail:
113 .Ic get , put , rename , ln ,
114 .Ic rm , mkdir , chdir , ls ,
115 .Ic lchdir , chmod , chown , chgrp , lpwd
116 and
117 .Ic lmkdir .
118 Termination on error can be suppressed on a command by command basis by
119 prefixing the command with a
120 .Sq \-
121 character (for example,
122 .Ic -rm /tmp/blah* ) .
123 .It Fl C
124 Enables compression (via ssh's
125 .Fl C
126 flag).
127 .It Fl F Ar ssh_config
128 Specifies an alternative
129 per-user configuration file for
130 .Xr ssh 1 .
131 This option is directly passed to
132 .Xr ssh 1 .
133 .It Fl o Ar ssh_option
134 Can be used to pass options to
135 .Nm ssh
136 in the format used in
137 .Xr ssh_config 5 .
138 This is useful for specifying options
139 for which there is no separate
140 .Nm sftp
141 command-line flag.
142 For example, to specify an alternate port use:
143 .Ic sftp -oPort=24 .
144 For full details of the options listed below, and their possible values, see
145 .Xr ssh_config 5 .
146 .Pp
147 .Bl -tag -width Ds -offset indent -compact
148 .It AddressFamily
149 .It BatchMode
150 .It BindAddress
151 .It ChallengeResponseAuthentication
152 .It CheckHostIP
153 .It Cipher
154 .It Ciphers
155 .It Compression
156 .It CompressionLevel
157 .It ConnectionAttempts
158 .It ConnectTimeout
159 .It ControlMaster
160 .It ControlPath
161 .It GlobalKnownHostsFile
162 .It GSSAPIAuthentication
163 .It GSSAPIDelegateCredentials
164 .It HashKnownHosts
165 .It Host
166 .It HostbasedAuthentication
167 .It HostKeyAlgorithms
168 .It HostKeyAlias
169 .It HostName
170 .It IdentityFile
171 .It IdentitiesOnly
172 .It KbdInteractiveDevices
173 .It LogLevel
174 .It MACs
175 .It NoHostAuthenticationForLocalhost
176 .It NumberOfPasswordPrompts
177 .It PasswordAuthentication
178 .It Port
179 .It PreferredAuthentications
180 .It Protocol
181 .It ProxyCommand
182 .It PubkeyAuthentication
183 .It RhostsRSAAuthentication
184 .It RSAAuthentication
185 .It SendEnv
186 .It ServerAliveInterval
187 .It ServerAliveCountMax
188 .It SmartcardDevice
189 .It StrictHostKeyChecking
190 .It TCPKeepAlive
191 .It UsePrivilegedPort
192 .It User
193 .It UserKnownHostsFile
194 .It VerifyHostKeyDNS
195 .El
196 .It Fl P Ar sftp_server_path
197 Connect directly to a local sftp server
198 (rather than via
199 .Xr ssh 1 ) .
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.
206 .It Fl S Ar program
207 Name of the
208 .Ar program
209 to use for the encrypted connection.
210 The program must understand
211 .Xr ssh 1
212 options.
213 .It Fl s Ar subsystem | sftp_server
214 Specifies the SSH2 subsystem or the path for an sftp server
215 on the remote host.
216 A path is useful for using
217 .Nm
218 over protocol version 1, or when the remote
219 .Xr sshd 8
220 does not have an sftp subsystem configured.
221 .It Fl v
222 Raise logging level.
223 This option is also passed to ssh.
224 .El
225 .Sh INTERACTIVE COMMANDS
226 Once in interactive mode,
227 .Nm
228 understands a set of commands similar to those of
229 .Xr ftp 1 .
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
233 .Xr glob 3
234 must be escaped with backslashes
235 .Pq Sq \e .
236 .Bl -tag -width Ds
237 .It Ic bye
238 Quit
239 .Nm sftp .
240 .It Ic cd Ar path
241 Change remote directory to
242 .Ar path .
243 .It Ic chgrp Ar grp Ar path
244 Change group of file
245 .Ar path
246 to
247 .Ar grp .
248 .Ar path
249 may contain
250 .Xr glob 3
251 characters and may match multiple files.
252 .Ar grp
253 must be a numeric GID.
254 .It Ic chmod Ar mode Ar path
255 Change permissions of file
256 .Ar path
257 to
258 .Ar mode .
259 .Ar path
260 may contain
261 .Xr glob 3
262 characters and may match multiple files.
263 .It Ic chown Ar own Ar path
264 Change owner of file
265 .Ar path
266 to
267 .Ar own .
268 .Ar path
269 may contain
270 .Xr glob 3
271 characters and may match multiple files.
272 .Ar own
273 must be a numeric UID.
274 .It Ic exit
275 Quit
276 .Nm sftp .
277 .It Xo Ic get
278 .Op Fl P
279 .Ar remote-path
280 .Op Ar local-path
281 .Xc
282 Retrieve the
283 .Ar remote-path
284 and store it on the local machine.
285 If the local
286 path name is not specified, it is given the same name it has on the
287 remote machine.
288 .Ar remote-path
289 may contain
290 .Xr glob 3
291 characters and may match multiple files.
292 If it does and
293 .Ar local-path
294 is specified, then
295 .Ar local-path
296 must specify a directory.
297 If the
298 .Fl P
299 flag is specified, then full file permissions and access times are
300 copied too.
301 .It Ic help
302 Display help text.
303 .It Ic lcd Ar path
304 Change local directory to
305 .Ar path .
306 .It Ic lls Op Ar ls-options Op Ar path
307 Display local directory listing of either
308 .Ar path
309 or current directory if
310 .Ar path
311 is not specified.
312 .Ar ls-options
313 may contain any flags supported by the local system's
314 .Xr ls 1
315 command.
316 .Ar path
317 may contain
318 .Xr glob 3
319 characters and may match multiple files.
320 .It Ic lmkdir Ar path
321 Create local directory specified by
322 .Ar path .
323 .It Ic ln Ar oldpath Ar newpath
324 Create a symbolic link from
325 .Ar oldpath
326 to
327 .Ar newpath .
328 .It Ic lpwd
329 Print local working directory.
330 .It Xo Ic ls
331 .Op Fl 1aflnrSt
332 .Op Ar path
333 .Xc
334 Display a remote directory listing of either
335 .Ar path
336 or the current directory if
337 .Ar path
338 is not specified.
339 .Ar path
340 may contain
341 .Xr glob 3
342 characters and may match multiple files.
343 .Pp
344 The following flags are recognized and alter the behaviour of
345 .Ic ls
346 accordingly:
347 .Bl -tag -width Ds
348 .It Fl 1
349 Produce single columnar output.
350 .It Fl a
351 List files beginning with a dot
352 .Pq Sq \&. .
353 .It Fl f
354 Do not sort the listing.
355 The default sort order is lexicographical.
356 .It Fl l
357 Display additional details including permissions
358 and ownership information.
359 .It Fl n
360 Produce a long listing with user and group information presented
361 numerically.
362 .It Fl r
363 Reverse the sort order of the listing.
364 .It Fl S
365 Sort the listing by file size.
366 .It Fl t
367 Sort the listing by last modification time.
368 .El
369 .It Ic lumask Ar umask
370 Set local umask to
371 .Ar umask .
372 .It Ic mkdir Ar path
373 Create remote directory specified by
374 .Ar path .
375 .It Ic progress
376 Toggle display of progress meter.
377 .It Xo Ic put
378 .Op Fl P
379 .Ar local-path
380 .Op Ar remote-path
381 .Xc
382 Upload
383 .Ar local-path
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.
387 .Ar local-path
388 may contain
389 .Xr glob 3
390 characters and may match multiple files.
391 If it does and
392 .Ar remote-path
393 is specified, then
394 .Ar remote-path
395 must specify a directory.
396 If the
397 .Fl P
398 flag is specified, then the file's full permission and access time are
399 copied too.
400 .It Ic pwd
401 Display remote working directory.
402 .It Ic quit
403 Quit
404 .Nm sftp .
405 .It Ic rename Ar oldpath Ar newpath
406 Rename remote file from
407 .Ar oldpath
408 to
409 .Ar newpath .
410 .It Ic rm Ar path
411 Delete remote file specified by
412 .Ar path .
413 .It Ic rmdir Ar path
414 Remove remote directory specified by
415 .Ar path .
416 .It Ic symlink Ar oldpath Ar newpath
417 Create a symbolic link from
418 .Ar oldpath
419 to
420 .Ar newpath .
421 .It Ic version
422 Display the
423 .Nm
424 protocol version.
425 .It Ic \&! Ar command
426 Execute
427 .Ar command
428 in local shell.
429 .It Ic \&!
430 Escape to local shell.
431 .It Ic \&?
432 Synonym for help.
433 .El
434 .Sh SEE ALSO
435 .Xr ftp 1 ,
436 .Xr ls 1 ,
437 .Xr scp 1 ,
438 .Xr ssh 1 ,
439 .Xr ssh-add 1 ,
440 .Xr ssh-keygen 1 ,
441 .Xr glob 3 ,
442 .Xr ssh_config 5 ,
443 .Xr sftp-server 8 ,
444 .Xr sshd 8
445 .Rs
446 .%A T. Ylonen
447 .%A S. Lehtinen
448 .%T "SSH File Transfer Protocol"
449 .%N draft-ietf-secsh-filexfer-00.txt
450 .%D January 2001
451 .%O work in progress material
452 .Re