nrelease - fix/improve livecd
[dragonfly.git] / crypto / openssh / scp.1
blobcd23f97952e9efd5231032b561b4e5d18fc94d7f
1 .\"
2 .\" scp.1
3 .\"
4 .\" Author: Tatu Ylonen <ylo@cs.hut.fi>
5 .\"
6 .\" Copyright (c) 1995 Tatu Ylonen <ylo@cs.hut.fi>, Espoo, Finland
7 .\"                    All rights reserved
8 .\"
9 .\" Created: Sun May  7 00:14:37 1995 ylo
10 .\"
11 .\" $OpenBSD: scp.1,v 1.110 2022/09/19 21:39:16 djm Exp $
12 .\"
13 .Dd $Mdocdate: September 19 2022 $
14 .Dt SCP 1
15 .Os
16 .Sh NAME
17 .Nm scp
18 .Nd OpenSSH secure file copy
19 .Sh SYNOPSIS
20 .Nm scp
21 .Op Fl 346ABCOpqRrsTv
22 .Op Fl c Ar cipher
23 .Op Fl D Ar sftp_server_path
24 .Op Fl F Ar ssh_config
25 .Op Fl i Ar identity_file
26 .Op Fl J Ar destination
27 .Op Fl l Ar limit
28 .Op Fl o Ar ssh_option
29 .Op Fl P Ar port
30 .Op Fl S Ar program
31 .Ar source ... target
32 .Sh DESCRIPTION
33 .Nm
34 copies files between hosts on a network.
35 .Pp
36 It uses
37 .Xr ssh 1
38 for data transfer, and uses the same authentication and provides the
39 same security as a login session.
40 .Pp
41 .Nm
42 will ask for passwords or passphrases if they are needed for
43 authentication.
44 .Pp
45 The
46 .Ar source
47 and
48 .Ar target
49 may be specified as a local pathname, a remote host with optional path
50 in the form
51 .Sm off
52 .Oo user @ Oc host : Op path ,
53 .Sm on
54 or a URI in the form
55 .Sm off
56 .No scp:// Oo user @ Oc host Oo : port Oc Op / path .
57 .Sm on
58 Local file names can be made explicit using absolute or relative pathnames
59 to avoid
60 .Nm
61 treating file names containing
62 .Sq :\&
63 as host specifiers.
64 .Pp
65 When copying between two remote hosts, if the URI format is used, a
66 .Ar port
67 cannot be specified on the
68 .Ar target
69 if the
70 .Fl R
71 option is used.
72 .Pp
73 The options are as follows:
74 .Bl -tag -width Ds
75 .It Fl 3
76 Copies between two remote hosts are transferred through the local host.
77 Without this option the data is copied directly between the two remote
78 hosts.
79 Note that, when using the legacy SCP protocol (via the
80 .Fl O
81 flag), this option
82 selects batch mode for the second host as
83 .Nm
84 cannot ask for passwords or passphrases for both hosts.
85 This mode is the default.
86 .It Fl 4
87 Forces
88 .Nm
89 to use IPv4 addresses only.
90 .It Fl 6
91 Forces
92 .Nm
93 to use IPv6 addresses only.
94 .It Fl A
95 Allows forwarding of
96 .Xr ssh-agent 1
97 to the remote system.
98 The default is not to forward an authentication agent.
99 .It Fl B
100 Selects batch mode (prevents asking for passwords or passphrases).
101 .It Fl C
102 Compression enable.
103 Passes the
104 .Fl C
105 flag to
106 .Xr ssh 1
107 to enable compression.
108 .It Fl c Ar cipher
109 Selects the cipher to use for encrypting the data transfer.
110 This option is directly passed to
111 .Xr ssh 1 .
112 .It Fl D Ar sftp_server_path
113 When using the SFTP protocol support via
114 .Fl M ,
115 connect directly to a local SFTP server program rather than a
116 remote one via
117 .Xr ssh 1 .
118 This option may be useful in debugging the client and server.
119 .It Fl F Ar ssh_config
120 Specifies an alternative
121 per-user configuration file for
122 .Nm ssh .
123 This option is directly passed to
124 .Xr ssh 1 .
125 .It Fl i Ar identity_file
126 Selects the file from which the identity (private key) for public key
127 authentication is read.
128 This option is directly passed to
129 .Xr ssh 1 .
130 .It Fl J Ar destination
131 Connect to the target host by first making an
133 connection to the jump host described by
134 .Ar destination
135 and then establishing a TCP forwarding to the ultimate destination from
136 there.
137 Multiple jump hops may be specified separated by comma characters.
138 This is a shortcut to specify a
139 .Cm ProxyJump
140 configuration directive.
141 This option is directly passed to
142 .Xr ssh 1 .
143 .It Fl l Ar limit
144 Limits the used bandwidth, specified in Kbit/s.
145 .It Fl O
146 Use the legacy SCP protocol for file transfers instead of the SFTP protocol.
147 Forcing the use of the SCP protocol may be necessary for servers that do
148 not implement SFTP, for backwards-compatibility for particular filename
149 wildcard patterns and for expanding paths with a
150 .Sq ~
151 prefix for older SFTP servers.
152 .It Fl o Ar ssh_option
153 Can be used to pass options to
154 .Nm ssh
155 in the format used in
156 .Xr ssh_config 5 .
157 This is useful for specifying options
158 for which there is no separate
159 .Nm scp
160 command-line flag.
161 For full details of the options listed below, and their possible values, see
162 .Xr ssh_config 5 .
164 .Bl -tag -width Ds -offset indent -compact
165 .It AddressFamily
166 .It BatchMode
167 .It BindAddress
168 .It BindInterface
169 .It CanonicalDomains
170 .It CanonicalizeFallbackLocal
171 .It CanonicalizeHostname
172 .It CanonicalizeMaxDots
173 .It CanonicalizePermittedCNAMEs
174 .It CASignatureAlgorithms
175 .It CertificateFile
176 .It CheckHostIP
177 .It Ciphers
178 .It Compression
179 .It ConnectionAttempts
180 .It ConnectTimeout
181 .It ControlMaster
182 .It ControlPath
183 .It ControlPersist
184 .It GlobalKnownHostsFile
185 .It GSSAPIAuthentication
186 .It GSSAPIDelegateCredentials
187 .It HashKnownHosts
188 .It Host
189 .It HostbasedAcceptedAlgorithms
190 .It HostbasedAuthentication
191 .It HostKeyAlgorithms
192 .It HostKeyAlias
193 .It Hostname
194 .It IdentitiesOnly
195 .It IdentityAgent
196 .It IdentityFile
197 .It IPQoS
198 .It KbdInteractiveAuthentication
199 .It KbdInteractiveDevices
200 .It KexAlgorithms
201 .It KnownHostsCommand
202 .It LogLevel
203 .It MACs
204 .It NoHostAuthenticationForLocalhost
205 .It NumberOfPasswordPrompts
206 .It PasswordAuthentication
207 .It PKCS11Provider
208 .It Port
209 .It PreferredAuthentications
210 .It ProxyCommand
211 .It ProxyJump
212 .It PubkeyAcceptedAlgorithms
213 .It PubkeyAuthentication
214 .It RekeyLimit
215 .It RequiredRSASize
216 .It SendEnv
217 .It ServerAliveInterval
218 .It ServerAliveCountMax
219 .It SetEnv
220 .It StrictHostKeyChecking
221 .It TCPKeepAlive
222 .It UpdateHostKeys
223 .It User
224 .It UserKnownHostsFile
225 .It VerifyHostKeyDNS
227 .It Fl P Ar port
228 Specifies the port to connect to on the remote host.
229 Note that this option is written with a capital
230 .Sq P ,
231 because
232 .Fl p
233 is already reserved for preserving the times and mode bits of the file.
234 .It Fl p
235 Preserves modification times, access times, and file mode bits from the
236 source file.
237 .It Fl q
238 Quiet mode: disables the progress meter as well as warning and diagnostic
239 messages from
240 .Xr ssh 1 .
241 .It Fl R
242 Copies between two remote hosts are performed by connecting to the origin
243 host and executing
245 there.
246 This requires that
248 running on the origin host can authenticate to the destination host without
249 requiring a password.
250 .It Fl r
251 Recursively copy entire directories.
252 Note that
254 follows symbolic links encountered in the tree traversal.
255 .It Fl S Ar program
256 Name of
257 .Ar program
258 to use for the encrypted connection.
259 The program must understand
260 .Xr ssh 1
261 options.
262 .It Fl T
263 Disable strict filename checking.
264 By default when copying files from a remote host to a local directory
266 checks that the received filenames match those requested on the command-line
267 to prevent the remote end from sending unexpected or unwanted files.
268 Because of differences in how various operating systems and shells interpret
269 filename wildcards, these checks may cause wanted files to be rejected.
270 This option disables these checks at the expense of fully trusting that
271 the server will not send unexpected filenames.
272 .It Fl v
273 Verbose mode.
274 Causes
277 .Xr ssh 1
278 to print debugging messages about their progress.
279 This is helpful in
280 debugging connection, authentication, and configuration problems.
282 .Sh EXIT STATUS
283 .Ex -std scp
284 .Sh SEE ALSO
285 .Xr sftp 1 ,
286 .Xr ssh 1 ,
287 .Xr ssh-add 1 ,
288 .Xr ssh-agent 1 ,
289 .Xr ssh-keygen 1 ,
290 .Xr ssh_config 5 ,
291 .Xr sftp-server 8 ,
292 .Xr sshd 8
293 .Sh HISTORY
295 is based on the rcp program in
297 source code from the Regents of the University of California.
299 Since OpenSSH 9.0,
301 has used the SFTP protocol for transfers by default.
302 .Sh AUTHORS
303 .An Timo Rinne Aq Mt tri@iki.fi
304 .An Tatu Ylonen Aq Mt ylo@cs.hut.fi
305 .Sh CAVEATS
306 The legacy SCP protocol (selected by the
307 .Fl O
308 flag) requires execution of the remote user's shell to perform
309 .Xr glob 3
310 pattern matching.
311 This requires careful quoting of any characters that have special meaning to
312 the remote shell, such as quote characters.