centos

如何使用centos ssh进行文件传输

小樊
52
2025-03-09 09:53:34
栏目: 智能运维

在CentOS系统中,你可以使用scp(Secure Copy Protocol)命令来进行安全的文件传输。以下是使用scp进行文件传输的基本步骤:

从本地计算机复制到远程服务器

  1. 打开终端。
  2. 使用以下命令格式将文件从本地复制到远程服务器:
scp /path/to/local/file username@remote_host:/path/to/remote/directory

例如,如果你想将本地的/home/user/myfile.txt文件复制到远程服务器192.168.1.100上的/home/username/documents目录,你可以使用以下命令:

scp /home/user/myfile.txt username@192.168.1.100:/home/username/documents

从远程服务器复制到本地计算机

使用类似的命令格式,但是将源路径和目标路径对调:

scp username@remote_host:/path/to/remote/file /path/to/local/directory

例如,如果你想将远程服务器192.168.1.100上的/home/username/myfile.txt文件复制到本地的/home/user/documents目录,你可以使用以下命令:

scp username@192.168.1.100:/home/username/myfile.txt /home/user/documents

复制整个目录

如果你需要复制整个目录,可以使用-r(递归)选项:

scp -r /path/to/local/directory username@remote_host:/path/to/remote/directory

或者从远程服务器复制整个目录到本地:

scp -r username@remote_host:/path/to/remote/directory /path/to/local/directory

使用密钥认证

为了提高安全性,你可以设置SSH密钥认证,这样就不需要在每次连接时输入密码。以下是设置密钥认证的基本步骤:

  1. 在本地计算机上生成SSH密钥对(如果尚未生成):
ssh-keygen

按照提示操作,通常会生成id_rsa(私钥)和id_rsa.pub(公钥)两个文件。

  1. 将公钥复制到远程服务器的~/.ssh/authorized_keys文件中:
ssh-copy-id username@remote_host

输入远程服务器用户的密码,公钥就会被添加到authorized_keys文件中。

  1. 现在,你可以使用scp命令进行文件传输,而无需每次都输入密码。

请确保远程服务器的SSH服务已经启动并且允许基于密钥的认证。如果你遇到任何问题,请检查远程服务器的SSH配置文件(通常是/etc/ssh/sshd_config)以确保相关设置是正确的。

0
看了该问题的人还看了