]> andersk Git - openssh.git/blame - sftp.1
- jmc@cvs.openbsd.org 2009/08/13 13:39:54
[openssh.git] / sftp.1
CommitLineData
5aa0f160 1.\" $OpenBSD: sftp.1,v 1.73 2009/08/13 13:39:54 jmc Exp $
61e96248 2.\"
f3c7c613 3.\" Copyright (c) 2001 Damien Miller. All rights reserved.
61e96248 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.\"
e473dcd1 25.Dd $Mdocdate$
61e96248 26.Dt SFTP 1
27.Os
28.Sh NAME
29.Nm sftp
bd47824b 30.Nd secure file transfer program
61e96248 31.Sh SYNOPSIS
72c5fe79 32.Nm sftp
a4e5acef 33.Bk -words
3496b8d4 34.Op Fl 1246Cqv
7d5e8c46 35.Op Fl B Ar buffer_size
433e60ac 36.Op Fl b Ar batchfile
3496b8d4 37.Op Fl c Ar cipher
97658f13 38.Op Fl D Ar sftp_server_path
7d5e8c46 39.Op Fl F Ar ssh_config
5aa0f160 40.Op Fl i Ar identity_file
433e60ac 41.Op Fl o Ar ssh_option
97658f13 42.Op Fl P Ar port
c25d3df7 43.Op Fl R Ar num_requests
e3c1c3e6 44.Op Fl S Ar program
433e60ac 45.Op Fl s Ar subsystem | sftp_server
e3c1c3e6 46.Ar host
a4e5acef 47.Ek
72c5fe79 48.Nm sftp
83cd8c39 49.Oo Ar user Ns @ Oc Ns
50.Ar host Ns Op : Ns Ar
72c5fe79 51.Nm sftp
83cd8c39 52.Oo Ar user Ns @ Oc Ns
a4e5acef 53.Ar host Ns Oo : Ns Ar dir Ns
d3cd4016 54.Op Ar / Oc
72c5fe79 55.Nm sftp
81466908 56.Fl b Ar batchfile
d0445371 57.Oo Ar user Ns @ Oc Ns Ar host
61e96248 58.Sh DESCRIPTION
59.Nm
60is an interactive file transfer program, similar to
61.Xr ftp 1 ,
62which performs all operations over an encrypted
63.Xr ssh 1
64transport.
65It may also use many features of ssh, such as public key authentication and
66compression.
67.Nm
68connects and logs into the specified
cf7ff074 69.Ar host ,
61e96248 70then enters an interactive command mode.
71.Pp
3730bb22 72The second usage format will retrieve files automatically if a non-interactive
cf7ff074 73authentication method is used; otherwise it will do so after
74successful interactive authentication.
edeeab1e 75.Pp
f9d52dd1 76The third usage format allows
77.Nm
78to start in a remote directory.
edeeab1e 79.Pp
bd47824b 80The final usage format allows for automated sessions using the
81466908 81.Fl b
bd47824b 82option.
3da242db 83In such cases, it is necessary to configure non-interactive authentication
bd47824b 84to obviate the need to enter a password at connection time (see
81466908 85.Xr sshd 8
72c5fe79 86and
81466908 87.Xr ssh-keygen 1
bd47824b 88for details).
61e96248 89The options are as follows:
90.Bl -tag -width Ds
433e60ac 91.It Fl 1
92Specify the use of protocol version 1.
3496b8d4 93.It Fl 2
94Specify the use of protocol version 2.
95.It Fl 4
96Forces
97.Nm
98to use IPv4 addresses only.
99.It Fl 6
100Forces
101.Nm
102to use IPv6 addresses only.
433e60ac 103.It Fl B Ar buffer_size
104Specify the size of the buffer that
105.Nm
106uses when transferring files.
107Larger buffers require fewer round trips at the cost of higher
108memory consumption.
109The default is 32768 bytes.
a5ec8a3d 110.It Fl b Ar batchfile
111Batch mode reads a series of commands from an input
acf06a60 112.Ar batchfile
a5ec8a3d 113instead of
acf06a60 114.Em stdin .
115Since it lacks user interaction it should be used in conjunction with
f74de0d7 116non-interactive authentication.
a8b64bb8 117A
f74de0d7 118.Ar batchfile
119of
120.Sq \-
a8b64bb8 121may be used to indicate standard input.
acf06a60 122.Nm
3730bb22 123will abort if any of the following
124commands fail:
7e35f994 125.Ic get , put , rename , ln ,
a4e5acef 126.Ic rm , mkdir , chdir , ls ,
ea530517 127.Ic lchdir , chmod , chown ,
128.Ic chgrp , lpwd , df ,
a5ec8a3d 129and
acf06a60 130.Ic lmkdir .
a4e5acef 131Termination on error can be suppressed on a command by command basis by
132prefixing the command with a
f74de0d7 133.Sq \-
bd47824b 134character (for example,
135.Ic -rm /tmp/blah* ) .
433e60ac 136.It Fl C
137Enables compression (via ssh's
138.Fl C
139flag).
b68241c3 140.It Fl c Ar cipher
141Selects the cipher to use for encrypting the data transfers.
142This option is directly passed to
143.Xr ssh 1 .
97658f13 144.It Fl D Ar sftp_server_path
145Connect directly to a local sftp server
146(rather than via
147.Xr ssh 1 ) .
148This option may be useful in debugging the client and server.
433e60ac 149.It Fl F Ar ssh_config
150Specifies an alternative
151per-user configuration file for
152.Xr ssh 1 .
153This option is directly passed to
154.Xr ssh 1 .
3496b8d4 155.It Fl i Ar identity_file
156Selects the file from which the identity (private key) for public key
157authentication is read.
158This option is directly passed to
159.Xr ssh 1 .
61e96248 160.It Fl o Ar ssh_option
38539909 161Can be used to pass options to
162.Nm ssh
c21a7c4a 163in the format used in
164.Xr ssh_config 5 .
165This is useful for specifying options
38539909 166for which there is no separate
167.Nm sftp
bd47824b 168command-line flag.
169For example, to specify an alternate port use:
e3c1c3e6 170.Ic sftp -oPort=24 .
433e60ac 171For full details of the options listed below, and their possible values, see
172.Xr ssh_config 5 .
173.Pp
174.Bl -tag -width Ds -offset indent -compact
175.It AddressFamily
176.It BatchMode
177.It BindAddress
178.It ChallengeResponseAuthentication
179.It CheckHostIP
180.It Cipher
181.It Ciphers
433e60ac 182.It Compression
183.It CompressionLevel
184.It ConnectionAttempts
927fcba2 185.It ConnectTimeout
5e96b616 186.It ControlMaster
187.It ControlPath
433e60ac 188.It GlobalKnownHostsFile
189.It GSSAPIAuthentication
190.It GSSAPIDelegateCredentials
ba9d1100 191.It HashKnownHosts
433e60ac 192.It Host
193.It HostbasedAuthentication
194.It HostKeyAlgorithms
195.It HostKeyAlias
196.It HostName
197.It IdentityFile
3a065ed0 198.It IdentitiesOnly
396070f8 199.It KbdInteractiveDevices
433e60ac 200.It LogLevel
201.It MACs
202.It NoHostAuthenticationForLocalhost
203.It NumberOfPasswordPrompts
204.It PasswordAuthentication
205.It Port
206.It PreferredAuthentications
207.It Protocol
208.It ProxyCommand
209.It PubkeyAuthentication
db175906 210.It RekeyLimit
433e60ac 211.It RhostsRSAAuthentication
212.It RSAAuthentication
8e99a198 213.It SendEnv
5d8d32a3 214.It ServerAliveInterval
215.It ServerAliveCountMax
433e60ac 216.It SmartcardDevice
217.It StrictHostKeyChecking
fd573618 218.It TCPKeepAlive
433e60ac 219.It UsePrivilegedPort
220.It User
221.It UserKnownHostsFile
222.It VerifyHostKeyDNS
433e60ac 223.El
97658f13 224.It Fl P Ar port
225Specifies the port to connect to on the remote host.
3496b8d4 226.It Fl q
227Quiet mode: disables the progress meter as well as warning and
228diagnostic messages from
229.Xr ssh 1 .
c25d3df7 230.It Fl R Ar num_requests
bd47824b 231Specify how many requests may be outstanding at any one time.
232Increasing this may slightly improve file transfer speed
233but will increase memory usage.
b8c9ea19 234The default is 64 outstanding requests.
e3c1c3e6 235.It Fl S Ar program
236Name of the
237.Ar program
238to use for the encrypted connection.
239The program must understand
240.Xr ssh 1
241options.
433e60ac 242.It Fl s Ar subsystem | sftp_server
243Specifies the SSH2 subsystem or the path for an sftp server
244on the remote host.
245A path is useful for using
246.Nm
247over protocol version 1, or when the remote
248.Xr sshd 8
249does not have an sftp subsystem configured.
250.It Fl v
251Raise logging level.
252This option is also passed to ssh.
61e96248 253.El
254.Sh INTERACTIVE COMMANDS
0426a3b4 255Once in interactive mode,
256.Nm
3730bb22 257understands a set of commands similar to those of
61e96248 258.Xr ftp 1 .
f9d52dd1 259Commands are case insensitive.
260Pathnames that contain spaces must be enclosed in quotes.
261Any special characters contained within pathnames that are recognized by
262.Xr glob 3
263must be escaped with backslashes
264.Pq Sq \e .
265.Bl -tag -width Ds
68874d2b 266.It Ic bye
bd47824b 267Quit
268.Nm sftp .
0426a3b4 269.It Ic cd Ar path
3730bb22 270Change remote directory to
0426a3b4 271.Ar path .
0426a3b4 272.It Ic chgrp Ar grp Ar path
3730bb22 273Change group of file
0426a3b4 274.Ar path
275to
61e96248 276.Ar grp .
f9d52dd1 277.Ar path
278may contain
279.Xr glob 3
280characters and may match multiple files.
61e96248 281.Ar grp
0426a3b4 282must be a numeric GID.
283.It Ic chmod Ar mode Ar path
3730bb22 284Change permissions of file
0426a3b4 285.Ar path
286to
287.Ar mode .
f9d52dd1 288.Ar path
289may contain
290.Xr glob 3
291characters and may match multiple files.
0426a3b4 292.It Ic chown Ar own Ar path
3730bb22 293Change owner of file
0426a3b4 294.Ar path
295to
61e96248 296.Ar own .
f9d52dd1 297.Ar path
298may contain
299.Xr glob 3
300characters and may match multiple files.
61e96248 301.Ar own
302must be a numeric UID.
360b43ab 303.It Xo Ic df
304.Op Fl hi
305.Op Ar path
306.Xc
307Display usage information for the filesystem holding the current directory
308(or
309.Ar path
310if specified).
311If the
312.Fl h
313flag is specified, the capacity information will be displayed using
314"human-readable" suffixes.
315The
316.Fl i
317flag requests display of inode information in addition to capacity information.
318This command is only supported on servers that implement the
319.Dq statvfs@openssh.com
320extension.
17910dce 321.It Ic exit
bd47824b 322Quit
323.Nm sftp .
58c54a79 324.It Xo Ic get
f9d52dd1 325.Op Fl P
58c54a79 326.Ar remote-path
327.Op Ar local-path
328.Xc
61e96248 329Retrieve the
0426a3b4 330.Ar remote-path
61e96248 331and store it on the local machine.
332If the local
3730bb22 333path name is not specified, it is given the same name it has on the
bd47824b 334remote machine.
f9d52dd1 335.Ar remote-path
336may contain
337.Xr glob 3
338characters and may match multiple files.
339If it does and
340.Ar local-path
341is specified, then
342.Ar local-path
343must specify a directory.
bd47824b 344If the
58c54a79 345.Fl P
f9d52dd1 346flag is specified, then full file permissions and access times are
58c54a79 347copied too.
17910dce 348.It Ic help
349Display help text.
433e60ac 350.It Ic lcd Ar path
351Change local directory to
352.Ar path .
0426a3b4 353.It Ic lls Op Ar ls-options Op Ar path
3730bb22 354Display local directory listing of either
61e96248 355.Ar path
356or current directory if
357.Ar path
0426a3b4 358is not specified.
f9d52dd1 359.Ar ls-options
360may contain any flags supported by the local system's
361.Xr ls 1
362command.
363.Ar path
364may contain
365.Xr glob 3
366characters and may match multiple files.
0426a3b4 367.It Ic lmkdir Ar path
61e96248 368Create local directory specified by
0426a3b4 369.Ar path .
3a7fe5ba 370.It Ic ln Ar oldpath Ar newpath
3730bb22 371Create a symbolic link from
3a7fe5ba 372.Ar oldpath
373to
374.Ar newpath .
0426a3b4 375.It Ic lpwd
376Print local working directory.
00b3ad3e 377.It Xo Ic ls
f9d52dd1 378.Op Fl 1aflnrSt
00b3ad3e 379.Op Ar path
380.Xc
f9d52dd1 381Display a remote directory listing of either
61e96248 382.Ar path
f9d52dd1 383or the current directory if
0426a3b4 384.Ar path
bd47824b 385is not specified.
f9d52dd1 386.Ar path
387may contain
388.Xr glob 3
389characters and may match multiple files.
c4c84934 390.Pp
f9d52dd1 391The following flags are recognized and alter the behaviour of
c4c84934 392.Ic ls
f9d52dd1 393accordingly:
394.Bl -tag -width Ds
395.It Fl 1
396Produce single columnar output.
397.It Fl a
398List files beginning with a dot
399.Pq Sq \&. .
400.It Fl f
401Do not sort the listing.
402The default sort order is lexicographical.
403.It Fl l
404Display additional details including permissions
405and ownership information.
406.It Fl n
407Produce a long listing with user and group information presented
408numerically.
409.It Fl r
410Reverse the sort order of the listing.
411.It Fl S
412Sort the listing by file size.
413.It Fl t
414Sort the listing by last modification time.
415.El
0426a3b4 416.It Ic lumask Ar umask
3730bb22 417Set local umask to
0426a3b4 418.Ar umask .
419.It Ic mkdir Ar path
61e96248 420Create remote directory specified by
0426a3b4 421.Ar path .
b65c3807 422.It Ic progress
423Toggle display of progress meter.
58c54a79 424.It Xo Ic put
f9d52dd1 425.Op Fl P
58c54a79 426.Ar local-path
2ea16b0b 427.Op Ar remote-path
58c54a79 428.Xc
61e96248 429Upload
0426a3b4 430.Ar local-path
bd47824b 431and store it on the remote machine.
432If the remote path name is not specified, it is given the same name it has
433on the local machine.
f9d52dd1 434.Ar local-path
435may contain
436.Xr glob 3
437characters and may match multiple files.
438If it does and
439.Ar remote-path
440is specified, then
441.Ar remote-path
442must specify a directory.
bd47824b 443If the
58c54a79 444.Fl P
445flag is specified, then the file's full permission and access time are
446copied too.
0426a3b4 447.It Ic pwd
448Display remote working directory.
0426a3b4 449.It Ic quit
bd47824b 450Quit
451.Nm sftp .
0426a3b4 452.It Ic rename Ar oldpath Ar newpath
61e96248 453Rename remote file from
454.Ar oldpath
455to
0426a3b4 456.Ar newpath .
0426a3b4 457.It Ic rm Ar path
61e96248 458Delete remote file specified by
0426a3b4 459.Ar path .
433e60ac 460.It Ic rmdir Ar path
461Remove remote directory specified by
462.Ar path .
3a7fe5ba 463.It Ic symlink Ar oldpath Ar newpath
3730bb22 464Create a symbolic link from
3a7fe5ba 465.Ar oldpath
466to
467.Ar newpath .
048ff12c 468.It Ic version
469Display the
470.Nm
471protocol version.
d3cd4016 472.It Ic \&! Ns Ar command
3730bb22 473Execute
61e96248 474.Ar command
0426a3b4 475in local shell.
d0445371 476.It Ic \&!
0426a3b4 477Escape to local shell.
d0445371 478.It Ic \&?
0426a3b4 479Synonym for help.
480.El
61e96248 481.Sh SEE ALSO
433e60ac 482.Xr ftp 1 ,
f9d52dd1 483.Xr ls 1 ,
2cad6cef 484.Xr scp 1 ,
61e96248 485.Xr ssh 1 ,
486.Xr ssh-add 1 ,
487.Xr ssh-keygen 1 ,
f9d52dd1 488.Xr glob 3 ,
c21a7c4a 489.Xr ssh_config 5 ,
2cad6cef 490.Xr sftp-server 8 ,
491.Xr sshd 8
492.Rs
7b518233 493.%A T. Ylonen
494.%A S. Lehtinen
2cad6cef 495.%T "SSH File Transfer Protocol"
496.%N draft-ietf-secsh-filexfer-00.txt
497.%D January 2001
498.%O work in progress material
499.Re
This page took 0.33673 seconds and 5 git commands to generate.