3.\" 4.\" Copyright (c) 2001 Damien Miller. All rights reserved. 5.\" 6.\" Redistribution and use in source and binary forms, with or without 7.\" modification, are permitted provided that the following conditions 8.\" are met: 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. 14.\" 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. 25.\"
| 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.\"
|
27.Dt SFTP 1 28.Os 29.Sh NAME 30.Nm sftp 31.Nd secure file transfer program 32.Sh SYNOPSIS 33.Nm sftp 34.Bk -words 35.Op Fl 1246aCfpqrv 36.Op Fl B Ar buffer_size 37.Op Fl b Ar batchfile 38.Op Fl c Ar cipher 39.Op Fl D Ar sftp_server_path 40.Op Fl F Ar ssh_config 41.Op Fl i Ar identity_file 42.Op Fl l Ar limit 43.Op Fl o Ar ssh_option 44.Op Fl P Ar port 45.Op Fl R Ar num_requests 46.Op Fl S Ar program 47.Op Fl s Ar subsystem | sftp_server 48.Ar host 49.Ek 50.Nm sftp 51.Oo Ar user Ns @ Oc Ns 52.Ar host Ns Op : Ns Ar 53.Nm sftp 54.Oo 55.Ar user Ns @ Oc Ns 56.Ar host Ns Oo : Ns Ar dir Ns 57.Op Ar / 58.Oc 59.Nm sftp 60.Fl b Ar batchfile 61.Oo Ar user Ns @ Oc Ns Ar host 62.Sh DESCRIPTION 63.Nm 64is an interactive file transfer program, similar to 65.Xr ftp 1 , 66which performs all operations over an encrypted 67.Xr ssh 1 68transport. 69It may also use many features of ssh, such as public key authentication and 70compression. 71.Nm 72connects and logs into the specified 73.Ar host , 74then enters an interactive command mode. 75.Pp 76The second usage format will retrieve files automatically if a non-interactive 77authentication method is used; otherwise it will do so after 78successful interactive authentication. 79.Pp 80The third usage format allows 81.Nm 82to start in a remote directory. 83.Pp 84The final usage format allows for automated sessions using the 85.Fl b 86option. 87In such cases, it is necessary to configure non-interactive authentication 88to obviate the need to enter a password at connection time (see 89.Xr sshd 8 90and 91.Xr ssh-keygen 1 92for details). 93.Pp 94Since some usage formats use colon characters to delimit host names from path 95names, IPv6 addresses must be enclosed in square brackets to avoid ambiguity. 96.Pp 97The options are as follows: 98.Bl -tag -width Ds 99.It Fl 1 100Specify the use of protocol version 1. 101.It Fl 2 102Specify the use of protocol version 2. 103.It Fl 4 104Forces 105.Nm 106to use IPv4 addresses only. 107.It Fl 6 108Forces 109.Nm 110to use IPv6 addresses only. 111.It Fl a 112Attempt to continue interrupted downloads rather than overwriting existing 113partial or complete copies of files. 114If the remote file contents differ from the partial local copy then the 115resultant file is likely to be corrupt. 116.It Fl B Ar buffer_size 117Specify the size of the buffer that 118.Nm 119uses when transferring files. 120Larger buffers require fewer round trips at the cost of higher 121memory consumption. 122The default is 32768 bytes. 123.It Fl b Ar batchfile 124Batch mode reads a series of commands from an input 125.Ar batchfile 126instead of 127.Em stdin . 128Since it lacks user interaction it should be used in conjunction with 129non-interactive authentication. 130A 131.Ar batchfile 132of 133.Sq \- 134may be used to indicate standard input. 135.Nm 136will abort if any of the following 137commands fail: 138.Ic get , put , reget , rename , ln , 139.Ic rm , mkdir , chdir , ls , 140.Ic lchdir , chmod , chown , 141.Ic chgrp , lpwd , df , symlink , 142and 143.Ic lmkdir . 144Termination on error can be suppressed on a command by command basis by 145prefixing the command with a 146.Sq \- 147character (for example, 148.Ic -rm /tmp/blah* ) . 149.It Fl C 150Enables compression (via ssh's 151.Fl C 152flag). 153.It Fl c Ar cipher 154Selects the cipher to use for encrypting the data transfers. 155This option is directly passed to 156.Xr ssh 1 . 157.It Fl D Ar sftp_server_path 158Connect directly to a local sftp server 159(rather than via 160.Xr ssh 1 ) . 161This option may be useful in debugging the client and server. 162.It Fl F Ar ssh_config 163Specifies an alternative 164per-user configuration file for 165.Xr ssh 1 . 166This option is directly passed to 167.Xr ssh 1 . 168.It Fl f 169Requests that files be flushed to disk immediately after transfer. 170When uploading files, this feature is only enabled if the server 171implements the "fsync@openssh.com" extension. 172.It Fl i Ar identity_file 173Selects the file from which the identity (private key) for public key 174authentication is read. 175This option is directly passed to 176.Xr ssh 1 . 177.It Fl l Ar limit 178Limits the used bandwidth, specified in Kbit/s. 179.It Fl o Ar ssh_option 180Can be used to pass options to 181.Nm ssh 182in the format used in 183.Xr ssh_config 5 . 184This is useful for specifying options 185for which there is no separate 186.Nm sftp 187command-line flag. 188For example, to specify an alternate port use: 189.Ic sftp -oPort=24 . 190For full details of the options listed below, and their possible values, see 191.Xr ssh_config 5 . 192.Pp 193.Bl -tag -width Ds -offset indent -compact 194.It AddressFamily 195.It BatchMode 196.It BindAddress 197.It CanonicalDomains 198.It CanonicalizeFallbackLocal 199.It CanonicalizeHostname 200.It CanonicalizeMaxDots 201.It CanonicalizePermittedCNAMEs 202.It ChallengeResponseAuthentication 203.It CheckHostIP 204.It Cipher 205.It Ciphers 206.It Compression 207.It CompressionLevel 208.It ConnectionAttempts 209.It ConnectTimeout 210.It ControlMaster 211.It ControlPath 212.It ControlPersist 213.It GlobalKnownHostsFile 214.It GSSAPIAuthentication 215.It GSSAPIDelegateCredentials 216.It HashKnownHosts 217.It Host 218.It HostbasedAuthentication 219.It HostKeyAlgorithms 220.It HostKeyAlias 221.It HostName 222.It IdentityFile 223.It IdentitiesOnly 224.It IPQoS 225.It KbdInteractiveAuthentication 226.It KbdInteractiveDevices 227.It KexAlgorithms 228.It LogLevel 229.It MACs 230.It NoHostAuthenticationForLocalhost 231.It NumberOfPasswordPrompts 232.It PasswordAuthentication 233.It PKCS11Provider 234.It Port 235.It PreferredAuthentications 236.It Protocol 237.It ProxyCommand 238.It PubkeyAuthentication 239.It RekeyLimit 240.It RhostsRSAAuthentication 241.It RSAAuthentication 242.It SendEnv 243.It ServerAliveInterval 244.It ServerAliveCountMax 245.It StrictHostKeyChecking 246.It TCPKeepAlive 247.It UsePrivilegedPort 248.It User 249.It UserKnownHostsFile 250.It VerifyHostKeyDNS 251.El 252.It Fl P Ar port 253Specifies the port to connect to on the remote host. 254.It Fl p 255Preserves modification times, access times, and modes from the 256original files transferred. 257.It Fl q 258Quiet mode: disables the progress meter as well as warning and 259diagnostic messages from 260.Xr ssh 1 . 261.It Fl R Ar num_requests 262Specify how many requests may be outstanding at any one time. 263Increasing this may slightly improve file transfer speed 264but will increase memory usage. 265The default is 256 outstanding requests providing for 8MB 266of outstanding data with a 32KB buffer. 267.It Fl r 268Recursively copy entire directories when uploading and downloading. 269Note that 270.Nm 271does not follow symbolic links encountered in the tree traversal. 272.It Fl S Ar program 273Name of the 274.Ar program 275to use for the encrypted connection. 276The program must understand 277.Xr ssh 1 278options. 279.It Fl s Ar subsystem | sftp_server 280Specifies the SSH2 subsystem or the path for an sftp server 281on the remote host. 282A path is useful for using 283.Nm 284over protocol version 1, or when the remote 285.Xr sshd 8 286does not have an sftp subsystem configured. 287.It Fl v 288Raise logging level. 289This option is also passed to ssh. 290.El 291.Sh INTERACTIVE COMMANDS 292Once in interactive mode, 293.Nm 294understands a set of commands similar to those of 295.Xr ftp 1 . 296Commands are case insensitive. 297Pathnames that contain spaces must be enclosed in quotes. 298Any special characters contained within pathnames that are recognized by 299.Xr glob 3 300must be escaped with backslashes 301.Pq Sq \e . 302.Bl -tag -width Ds 303.It Ic bye 304Quit 305.Nm sftp . 306.It Ic cd Ar path 307Change remote directory to 308.Ar path . 309.It Ic chgrp Ar grp Ar path 310Change group of file 311.Ar path 312to 313.Ar grp . 314.Ar path 315may contain 316.Xr glob 3 317characters and may match multiple files. 318.Ar grp 319must be a numeric GID. 320.It Ic chmod Ar mode Ar path 321Change permissions of file 322.Ar path 323to 324.Ar mode . 325.Ar path 326may contain 327.Xr glob 3 328characters and may match multiple files. 329.It Ic chown Ar own Ar path 330Change owner of file 331.Ar path 332to 333.Ar own . 334.Ar path 335may contain 336.Xr glob 3 337characters and may match multiple files. 338.Ar own 339must be a numeric UID. 340.It Xo Ic df 341.Op Fl hi 342.Op Ar path 343.Xc 344Display usage information for the filesystem holding the current directory 345(or 346.Ar path 347if specified). 348If the 349.Fl h 350flag is specified, the capacity information will be displayed using 351"human-readable" suffixes. 352The 353.Fl i 354flag requests display of inode information in addition to capacity information. 355This command is only supported on servers that implement the 356.Dq statvfs@openssh.com 357extension. 358.It Ic exit 359Quit 360.Nm sftp . 361.It Xo Ic get 362.Op Fl afPpr 363.Ar remote-path 364.Op Ar local-path 365.Xc 366Retrieve the 367.Ar remote-path 368and store it on the local machine. 369If the local 370path name is not specified, it is given the same name it has on the 371remote machine. 372.Ar remote-path 373may contain 374.Xr glob 3 375characters and may match multiple files. 376If it does and 377.Ar local-path 378is specified, then 379.Ar local-path 380must specify a directory. 381.Pp 382If the 383.Fl a 384flag is specified, then attempt to resume partial transfers of existing files. 385Note that resumption assumes that any partial copy of the local file matches 386the remote copy. 387If the remote file contents differ from the partial local copy then the 388resultant file is likely to be corrupt. 389.Pp 390If the 391.Fl f 392flag is specified, then 393.Xr fsync 2 394will be called after the file transfer has completed to flush the file 395to disk. 396.Pp 397If either the 398.Fl P 399or 400.Fl p 401flag is specified, then full file permissions and access times are 402copied too. 403.Pp 404If the 405.Fl r 406flag is specified then directories will be copied recursively. 407Note that 408.Nm 409does not follow symbolic links when performing recursive transfers. 410.It Ic help 411Display help text. 412.It Ic lcd Ar path 413Change local directory to 414.Ar path . 415.It Ic lls Op Ar ls-options Op Ar path 416Display local directory listing of either 417.Ar path 418or current directory if 419.Ar path 420is not specified. 421.Ar ls-options 422may contain any flags supported by the local system's 423.Xr ls 1 424command. 425.Ar path 426may contain 427.Xr glob 3 428characters and may match multiple files. 429.It Ic lmkdir Ar path 430Create local directory specified by 431.Ar path . 432.It Xo Ic ln 433.Op Fl s 434.Ar oldpath 435.Ar newpath 436.Xc 437Create a link from 438.Ar oldpath 439to 440.Ar newpath . 441If the 442.Fl s 443flag is specified the created link is a symbolic link, otherwise it is 444a hard link. 445.It Ic lpwd 446Print local working directory. 447.It Xo Ic ls 448.Op Fl 1afhlnrSt 449.Op Ar path 450.Xc 451Display a remote directory listing of either 452.Ar path 453or the current directory if 454.Ar path 455is not specified. 456.Ar path 457may contain 458.Xr glob 3 459characters and may match multiple files. 460.Pp 461The following flags are recognized and alter the behaviour of 462.Ic ls 463accordingly: 464.Bl -tag -width Ds 465.It Fl 1 466Produce single columnar output. 467.It Fl a 468List files beginning with a dot 469.Pq Sq \&. . 470.It Fl f 471Do not sort the listing. 472The default sort order is lexicographical. 473.It Fl h 474When used with a long format option, use unit suffixes: Byte, Kilobyte, 475Megabyte, Gigabyte, Terabyte, Petabyte, and Exabyte in order to reduce 476the number of digits to four or fewer using powers of 2 for sizes (K=1024, 477M=1048576, etc.). 478.It Fl l 479Display additional details including permissions 480and ownership information. 481.It Fl n 482Produce a long listing with user and group information presented 483numerically. 484.It Fl r 485Reverse the sort order of the listing. 486.It Fl S 487Sort the listing by file size. 488.It Fl t 489Sort the listing by last modification time. 490.El 491.It Ic lumask Ar umask 492Set local umask to 493.Ar umask . 494.It Ic mkdir Ar path 495Create remote directory specified by 496.Ar path . 497.It Ic progress 498Toggle display of progress meter. 499.It Xo Ic put 500.Op Fl fPpr 501.Ar local-path 502.Op Ar remote-path 503.Xc 504Upload 505.Ar local-path 506and store it on the remote machine. 507If the remote path name is not specified, it is given the same name it has 508on the local machine. 509.Ar local-path 510may contain 511.Xr glob 3 512characters and may match multiple files. 513If it does and 514.Ar remote-path 515is specified, then 516.Ar remote-path 517must specify a directory. 518.Pp 519If the 520.Fl f 521flag is specified, then a request will be sent to the server to call 522.Xr fsync 2 523after the file has been transferred. 524Note that this is only supported by servers that implement 525the "fsync@openssh.com" extension. 526.Pp 527If either the 528.Fl P 529or 530.Fl p 531flag is specified, then full file permissions and access times are 532copied too. 533.Pp 534If the 535.Fl r 536flag is specified then directories will be copied recursively. 537Note that 538.Nm 539does not follow symbolic links when performing recursive transfers. 540.It Ic pwd 541Display remote working directory. 542.It Ic quit 543Quit 544.Nm sftp . 545.It Xo Ic reget 546.Op Fl Ppr 547.Ar remote-path 548.Op Ar local-path 549.Xc 550Resume download of 551.Ar remote-path . 552Equivalent to 553.Ic get 554with the 555.Fl a 556flag set. 557.It Ic rename Ar oldpath Ar newpath 558Rename remote file from 559.Ar oldpath 560to 561.Ar newpath . 562.It Ic rm Ar path 563Delete remote file specified by 564.Ar path . 565.It Ic rmdir Ar path 566Remove remote directory specified by 567.Ar path . 568.It Ic symlink Ar oldpath Ar newpath 569Create a symbolic link from 570.Ar oldpath 571to 572.Ar newpath . 573.It Ic version 574Display the 575.Nm 576protocol version. 577.It Ic \&! Ns Ar command 578Execute 579.Ar command 580in local shell. 581.It Ic \&! 582Escape to local shell. 583.It Ic \&? 584Synonym for help. 585.El 586.Sh SEE ALSO 587.Xr ftp 1 , 588.Xr ls 1 , 589.Xr scp 1 , 590.Xr ssh 1 , 591.Xr ssh-add 1 , 592.Xr ssh-keygen 1 , 593.Xr glob 3 , 594.Xr ssh_config 5 , 595.Xr sftp-server 8 , 596.Xr sshd 8 597.Rs 598.%A T. Ylonen 599.%A S. Lehtinen 600.%T "SSH File Transfer Protocol" 601.%N draft-ietf-secsh-filexfer-00.txt 602.%D January 2001 603.%O work in progress material 604.Re
| 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 1246aCfpqrv 35.Op Fl B Ar buffer_size 36.Op Fl b Ar batchfile 37.Op Fl c Ar cipher 38.Op Fl D Ar sftp_server_path 39.Op Fl F Ar ssh_config 40.Op Fl i Ar identity_file 41.Op Fl l Ar limit 42.Op Fl o Ar ssh_option 43.Op Fl P Ar port 44.Op Fl R Ar num_requests 45.Op Fl S Ar program 46.Op Fl s Ar subsystem | sftp_server 47.Ar host 48.Ek 49.Nm sftp 50.Oo Ar user Ns @ Oc Ns 51.Ar host Ns Op : Ns Ar 52.Nm sftp 53.Oo 54.Ar user Ns @ Oc Ns 55.Ar host Ns Oo : Ns Ar dir Ns 56.Op Ar / 57.Oc 58.Nm sftp 59.Fl b Ar batchfile 60.Oo Ar user Ns @ Oc Ns Ar host 61.Sh DESCRIPTION 62.Nm 63is an interactive file transfer program, similar to 64.Xr ftp 1 , 65which performs all operations over an encrypted 66.Xr ssh 1 67transport. 68It may also use many features of ssh, such as public key authentication and 69compression. 70.Nm 71connects and logs into the specified 72.Ar host , 73then enters an interactive command mode. 74.Pp 75The second usage format will retrieve files automatically if a non-interactive 76authentication method is used; otherwise it will do so after 77successful interactive authentication. 78.Pp 79The third usage format allows 80.Nm 81to start in a remote directory. 82.Pp 83The final usage format allows for automated sessions using the 84.Fl b 85option. 86In such cases, it is necessary to configure non-interactive authentication 87to obviate the need to enter a password at connection time (see 88.Xr sshd 8 89and 90.Xr ssh-keygen 1 91for details). 92.Pp 93Since some usage formats use colon characters to delimit host names from path 94names, IPv6 addresses must be enclosed in square brackets to avoid ambiguity. 95.Pp 96The options are as follows: 97.Bl -tag -width Ds 98.It Fl 1 99Specify the use of protocol version 1. 100.It Fl 2 101Specify the use of protocol version 2. 102.It Fl 4 103Forces 104.Nm 105to use IPv4 addresses only. 106.It Fl 6 107Forces 108.Nm 109to use IPv6 addresses only. 110.It Fl a 111Attempt to continue interrupted downloads rather than overwriting existing 112partial or complete copies of files. 113If the remote file contents differ from the partial local copy then the 114resultant file is likely to be corrupt. 115.It Fl B Ar buffer_size 116Specify the size of the buffer that 117.Nm 118uses when transferring files. 119Larger buffers require fewer round trips at the cost of higher 120memory consumption. 121The default is 32768 bytes. 122.It Fl b Ar batchfile 123Batch mode reads a series of commands from an input 124.Ar batchfile 125instead of 126.Em stdin . 127Since it lacks user interaction it should be used in conjunction with 128non-interactive authentication. 129A 130.Ar batchfile 131of 132.Sq \- 133may be used to indicate standard input. 134.Nm 135will abort if any of the following 136commands fail: 137.Ic get , put , reget , rename , ln , 138.Ic rm , mkdir , chdir , ls , 139.Ic lchdir , chmod , chown , 140.Ic chgrp , lpwd , df , symlink , 141and 142.Ic lmkdir . 143Termination on error can be suppressed on a command by command basis by 144prefixing the command with a 145.Sq \- 146character (for example, 147.Ic -rm /tmp/blah* ) . 148.It Fl C 149Enables compression (via ssh's 150.Fl C 151flag). 152.It Fl c Ar cipher 153Selects the cipher to use for encrypting the data transfers. 154This option is directly passed to 155.Xr ssh 1 . 156.It Fl D Ar sftp_server_path 157Connect directly to a local sftp server 158(rather than via 159.Xr ssh 1 ) . 160This option may be useful in debugging the client and server. 161.It Fl F Ar ssh_config 162Specifies an alternative 163per-user configuration file for 164.Xr ssh 1 . 165This option is directly passed to 166.Xr ssh 1 . 167.It Fl f 168Requests that files be flushed to disk immediately after transfer. 169When uploading files, this feature is only enabled if the server 170implements the "fsync@openssh.com" extension. 171.It Fl i Ar identity_file 172Selects the file from which the identity (private key) for public key 173authentication is read. 174This option is directly passed to 175.Xr ssh 1 . 176.It Fl l Ar limit 177Limits the used bandwidth, specified in Kbit/s. 178.It Fl o Ar ssh_option 179Can be used to pass options to 180.Nm ssh 181in the format used in 182.Xr ssh_config 5 . 183This is useful for specifying options 184for which there is no separate 185.Nm sftp 186command-line flag. 187For example, to specify an alternate port use: 188.Ic sftp -oPort=24 . 189For full details of the options listed below, and their possible values, see 190.Xr ssh_config 5 . 191.Pp 192.Bl -tag -width Ds -offset indent -compact 193.It AddressFamily 194.It BatchMode 195.It BindAddress 196.It CanonicalDomains 197.It CanonicalizeFallbackLocal 198.It CanonicalizeHostname 199.It CanonicalizeMaxDots 200.It CanonicalizePermittedCNAMEs 201.It ChallengeResponseAuthentication 202.It CheckHostIP 203.It Cipher 204.It Ciphers 205.It Compression 206.It CompressionLevel 207.It ConnectionAttempts 208.It ConnectTimeout 209.It ControlMaster 210.It ControlPath 211.It ControlPersist 212.It GlobalKnownHostsFile 213.It GSSAPIAuthentication 214.It GSSAPIDelegateCredentials 215.It HashKnownHosts 216.It Host 217.It HostbasedAuthentication 218.It HostKeyAlgorithms 219.It HostKeyAlias 220.It HostName 221.It IdentityFile 222.It IdentitiesOnly 223.It IPQoS 224.It KbdInteractiveAuthentication 225.It KbdInteractiveDevices 226.It KexAlgorithms 227.It LogLevel 228.It MACs 229.It NoHostAuthenticationForLocalhost 230.It NumberOfPasswordPrompts 231.It PasswordAuthentication 232.It PKCS11Provider 233.It Port 234.It PreferredAuthentications 235.It Protocol 236.It ProxyCommand 237.It PubkeyAuthentication 238.It RekeyLimit 239.It RhostsRSAAuthentication 240.It RSAAuthentication 241.It SendEnv 242.It ServerAliveInterval 243.It ServerAliveCountMax 244.It StrictHostKeyChecking 245.It TCPKeepAlive 246.It UsePrivilegedPort 247.It User 248.It UserKnownHostsFile 249.It VerifyHostKeyDNS 250.El 251.It Fl P Ar port 252Specifies the port to connect to on the remote host. 253.It Fl p 254Preserves modification times, access times, and modes from the 255original files transferred. 256.It Fl q 257Quiet mode: disables the progress meter as well as warning and 258diagnostic messages from 259.Xr ssh 1 . 260.It Fl R Ar num_requests 261Specify how many requests may be outstanding at any one time. 262Increasing this may slightly improve file transfer speed 263but will increase memory usage. 264The default is 256 outstanding requests providing for 8MB 265of outstanding data with a 32KB buffer. 266.It Fl r 267Recursively copy entire directories when uploading and downloading. 268Note that 269.Nm 270does not follow symbolic links encountered in the tree traversal. 271.It Fl S Ar program 272Name of the 273.Ar program 274to use for the encrypted connection. 275The program must understand 276.Xr ssh 1 277options. 278.It Fl s Ar subsystem | sftp_server 279Specifies the SSH2 subsystem or the path for an sftp server 280on the remote host. 281A path is useful for using 282.Nm 283over protocol version 1, or when the remote 284.Xr sshd 8 285does not have an sftp subsystem configured. 286.It Fl v 287Raise logging level. 288This option is also passed to ssh. 289.El 290.Sh INTERACTIVE COMMANDS 291Once in interactive mode, 292.Nm 293understands a set of commands similar to those of 294.Xr ftp 1 . 295Commands are case insensitive. 296Pathnames that contain spaces must be enclosed in quotes. 297Any special characters contained within pathnames that are recognized by 298.Xr glob 3 299must be escaped with backslashes 300.Pq Sq \e . 301.Bl -tag -width Ds 302.It Ic bye 303Quit 304.Nm sftp . 305.It Ic cd Ar path 306Change remote directory to 307.Ar path . 308.It Ic chgrp Ar grp Ar path 309Change group of file 310.Ar path 311to 312.Ar grp . 313.Ar path 314may contain 315.Xr glob 3 316characters and may match multiple files. 317.Ar grp 318must be a numeric GID. 319.It Ic chmod Ar mode Ar path 320Change permissions of file 321.Ar path 322to 323.Ar mode . 324.Ar path 325may contain 326.Xr glob 3 327characters and may match multiple files. 328.It Ic chown Ar own Ar path 329Change owner of file 330.Ar path 331to 332.Ar own . 333.Ar path 334may contain 335.Xr glob 3 336characters and may match multiple files. 337.Ar own 338must be a numeric UID. 339.It Xo Ic df 340.Op Fl hi 341.Op Ar path 342.Xc 343Display usage information for the filesystem holding the current directory 344(or 345.Ar path 346if specified). 347If the 348.Fl h 349flag is specified, the capacity information will be displayed using 350"human-readable" suffixes. 351The 352.Fl i 353flag requests display of inode information in addition to capacity information. 354This command is only supported on servers that implement the 355.Dq statvfs@openssh.com 356extension. 357.It Ic exit 358Quit 359.Nm sftp . 360.It Xo Ic get 361.Op Fl afPpr 362.Ar remote-path 363.Op Ar local-path 364.Xc 365Retrieve the 366.Ar remote-path 367and store it on the local machine. 368If the local 369path name is not specified, it is given the same name it has on the 370remote machine. 371.Ar remote-path 372may contain 373.Xr glob 3 374characters and may match multiple files. 375If it does and 376.Ar local-path 377is specified, then 378.Ar local-path 379must specify a directory. 380.Pp 381If the 382.Fl a 383flag is specified, then attempt to resume partial transfers of existing files. 384Note that resumption assumes that any partial copy of the local file matches 385the remote copy. 386If the remote file contents differ from the partial local copy then the 387resultant file is likely to be corrupt. 388.Pp 389If the 390.Fl f 391flag is specified, then 392.Xr fsync 2 393will be called after the file transfer has completed to flush the file 394to disk. 395.Pp 396If either the 397.Fl P 398or 399.Fl p 400flag is specified, then full file permissions and access times are 401copied too. 402.Pp 403If the 404.Fl r 405flag is specified then directories will be copied recursively. 406Note that 407.Nm 408does not follow symbolic links when performing recursive transfers. 409.It Ic help 410Display help text. 411.It Ic lcd Ar path 412Change local directory to 413.Ar path . 414.It Ic lls Op Ar ls-options Op Ar path 415Display local directory listing of either 416.Ar path 417or current directory if 418.Ar path 419is not specified. 420.Ar ls-options 421may contain any flags supported by the local system's 422.Xr ls 1 423command. 424.Ar path 425may contain 426.Xr glob 3 427characters and may match multiple files. 428.It Ic lmkdir Ar path 429Create local directory specified by 430.Ar path . 431.It Xo Ic ln 432.Op Fl s 433.Ar oldpath 434.Ar newpath 435.Xc 436Create a link from 437.Ar oldpath 438to 439.Ar newpath . 440If the 441.Fl s 442flag is specified the created link is a symbolic link, otherwise it is 443a hard link. 444.It Ic lpwd 445Print local working directory. 446.It Xo Ic ls 447.Op Fl 1afhlnrSt 448.Op Ar path 449.Xc 450Display a remote directory listing of either 451.Ar path 452or the current directory if 453.Ar path 454is not specified. 455.Ar path 456may contain 457.Xr glob 3 458characters and may match multiple files. 459.Pp 460The following flags are recognized and alter the behaviour of 461.Ic ls 462accordingly: 463.Bl -tag -width Ds 464.It Fl 1 465Produce single columnar output. 466.It Fl a 467List files beginning with a dot 468.Pq Sq \&. . 469.It Fl f 470Do not sort the listing. 471The default sort order is lexicographical. 472.It Fl h 473When used with a long format option, use unit suffixes: Byte, Kilobyte, 474Megabyte, Gigabyte, Terabyte, Petabyte, and Exabyte in order to reduce 475the number of digits to four or fewer using powers of 2 for sizes (K=1024, 476M=1048576, etc.). 477.It Fl l 478Display additional details including permissions 479and ownership information. 480.It Fl n 481Produce a long listing with user and group information presented 482numerically. 483.It Fl r 484Reverse the sort order of the listing. 485.It Fl S 486Sort the listing by file size. 487.It Fl t 488Sort the listing by last modification time. 489.El 490.It Ic lumask Ar umask 491Set local umask to 492.Ar umask . 493.It Ic mkdir Ar path 494Create remote directory specified by 495.Ar path . 496.It Ic progress 497Toggle display of progress meter. 498.It Xo Ic put 499.Op Fl fPpr 500.Ar local-path 501.Op Ar remote-path 502.Xc 503Upload 504.Ar local-path 505and store it on the remote machine. 506If the remote path name is not specified, it is given the same name it has 507on the local machine. 508.Ar local-path 509may contain 510.Xr glob 3 511characters and may match multiple files. 512If it does and 513.Ar remote-path 514is specified, then 515.Ar remote-path 516must specify a directory. 517.Pp 518If the 519.Fl f 520flag is specified, then a request will be sent to the server to call 521.Xr fsync 2 522after the file has been transferred. 523Note that this is only supported by servers that implement 524the "fsync@openssh.com" extension. 525.Pp 526If either the 527.Fl P 528or 529.Fl p 530flag is specified, then full file permissions and access times are 531copied too. 532.Pp 533If the 534.Fl r 535flag is specified then directories will be copied recursively. 536Note that 537.Nm 538does not follow symbolic links when performing recursive transfers. 539.It Ic pwd 540Display remote working directory. 541.It Ic quit 542Quit 543.Nm sftp . 544.It Xo Ic reget 545.Op Fl Ppr 546.Ar remote-path 547.Op Ar local-path 548.Xc 549Resume download of 550.Ar remote-path . 551Equivalent to 552.Ic get 553with the 554.Fl a 555flag set. 556.It Ic rename Ar oldpath Ar newpath 557Rename remote file from 558.Ar oldpath 559to 560.Ar newpath . 561.It Ic rm Ar path 562Delete remote file specified by 563.Ar path . 564.It Ic rmdir Ar path 565Remove remote directory specified by 566.Ar path . 567.It Ic symlink Ar oldpath Ar newpath 568Create a symbolic link from 569.Ar oldpath 570to 571.Ar newpath . 572.It Ic version 573Display the 574.Nm 575protocol version. 576.It Ic \&! Ns Ar command 577Execute 578.Ar command 579in local shell. 580.It Ic \&! 581Escape to local shell. 582.It Ic \&? 583Synonym for help. 584.El 585.Sh SEE ALSO 586.Xr ftp 1 , 587.Xr ls 1 , 588.Xr scp 1 , 589.Xr ssh 1 , 590.Xr ssh-add 1 , 591.Xr ssh-keygen 1 , 592.Xr glob 3 , 593.Xr ssh_config 5 , 594.Xr sftp-server 8 , 595.Xr sshd 8 596.Rs 597.%A T. Ylonen 598.%A S. Lehtinen 599.%T "SSH File Transfer Protocol" 600.%N draft-ietf-secsh-filexfer-00.txt 601.%D January 2001 602.%O work in progress material 603.Re
|