两台 CentOS 之间传数据:SCP 方式

两台 CentOS 之间传数据:SCP 方式

一、CentOS 安装 SSH 服务

0、注意

两台主机上都需要安装!

1、更新系统

首先,确保你的系统是最新的。打开终端并运行以下命令来更新系统:

sudo yum update

2、安装 OpenSSH 服务器

使用 yum 包管理器来安装 OpenSSH 服务器。在终端中运行以下命令:

sudo yum install openssh-server

3、启动 SSH 服务

安装完成后,启动SSH服务并设置它开机自启:

sudo systemctl start sshd
sudo systemctl enable sshd

4、检查SSH服务状态

你可以检查 SSH 服务的状态,确认它是否正在运行:

sudo systemctl status sshd

5、配置防火墙

如果你的服务器正在运行防火墙,你需要允许 SSH 通过。CentOS 7及更高版本使用firewalld作为防火墙。运行以下命令来允许SSH服务:

sudo firewall-cmd --permanent --zone=public --add-service=ssh
sudo firewall-cmd --reload

6、测试 SSH 连接

现在你可以从另一台计算机上测试SSH连接了。使用SSH命令连接到服务器:

ssh [username]@[server_ip]

替换[username]为你的 CentOS 用户名(如root),[server_ip]为你的CentOS服务器的IP地址。

7、更改SSH默认端口(可选)

如果你想更改SSH的默认端口(22),你可以编辑/etc/ssh/sshd_config文件:

sudo vi /etc/ssh/sshd_config

找到Port 22这一行,将其更改为你想要的端口号,然后保存并退出编辑器。之后,重启SSH服务以应用更改:

sudo systemctl restart sshd

现在,你应该能够在CentOS服务器上使用SSH服务了。记得在更改配置后,确保测试新的设置是否正常工作。

二、文件传输

1、命令

在Server A上,打开终端,然后使用以下SCP命令来传输文件:

scp /path/to/source/file.txt username@server_b:/path/to/destination/

这里的/path/to/source/file.txt是你想要传输的文件的完整路径,username是你的Server B上的用户名,server_b是Server B的IP地址或主机名,/path/to/destination/是文件在Server B上的目标路径。

# 格式
scp 本机文件 用户名@ip地址:目标路径

# 举例
scp hello.zip root@1.15.55.255:/data/webroot/

2、输入密码

当你执行上述命令后,系统会提示你输入Server B的用户密码。输入正确的密码后,文件传输就会开始。

3、等待传输完成即可

文件传输完成后,你会在终端看到相应的提示信息。此时,你可以登录到Server B上,检查文件是否已经成功传输到指定的路径下。

三、配置SSH无密码登录(未亲测)

1、配置 SSH 密钥

第一步:在Server A上,生成 SSH 密钥对(如果还没有的话):

ssh-keygen

第二步:复制生成的公钥(默认为~/.ssh/id_rsa.pub)到Server B的~/.ssh/authorized_keys文件中。你可以使用ssh-copy-id命令来简化这个过程:

ssh-copy-id -i ~/.ssh/id_rsa.pub user@server_b

​ 这里的user是你的用户名,server_b是Server B的IP地址或主机名。

第三步:输入Server B的密码后,你的公钥就会被添加到Server B的~/.ssh/authorized_keys文件中。

2、测试无密码登录

在Server A上,尝试无密码登录到Server B:

ssh user@server_b

如果配置正确,你应该能够直接登录而不需要输入密码。

3、检查SSH配置

确保Server B上的/etc/ssh/sshd_config文件中的以下设置是正确的:

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys

确保没有配置行被注释掉,并且这些设置没有被更改。

4、重启 SSH 服务

如果你做了任何更改,比如修改了sshd_config文件,你需要重启SSH服务来使更改生效:

sudo systemctl restart ssh

或者

sudo service ssh restart

完成这些步骤后,你应该能够在 Server A 上无密码登录到 Server B。记得在操作过程中,保持对服务器权限和网络安全的注意。

相关推荐

  1. CentOS 之间数据SCP 方式

    2024-03-16 20:40:02       43 阅读
  2. centos用户之间相互文件

    2024-03-16 20:40:02       48 阅读
  3. vue3父子组件之间方式

    2024-03-16 20:40:02       49 阅读
  4. ubuntu下通过ssh在计算机之间拷贝文件

    2024-03-16 20:40:02       48 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-16 20:40:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-16 20:40:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-16 20:40:02       87 阅读
  4. Python语言-面向对象

    2024-03-16 20:40:02       96 阅读

热门阅读

  1. 程序员常用的几种算法

    2024-03-16 20:40:02       47 阅读
  2. 关于某古桥自动化监测保护的行动建议书

    2024-03-16 20:40:02       36 阅读
  3. 富格林:揭示黑幕交易学会安全阻挠

    2024-03-16 20:40:02       40 阅读
  4. 每日leetcode--最长有效括号

    2024-03-16 20:40:02       42 阅读
  5. C#学习路线指南

    2024-03-16 20:40:02       44 阅读
  6. 设计模式——迪米特法则

    2024-03-16 20:40:02       49 阅读
  7. 解决Linux下网络连接问题

    2024-03-16 20:40:02       37 阅读
  8. C++(3/13)

    C++(3/13)

    2024-03-16 20:40:02      42 阅读
  9. 约定式提交 commit 规范

    2024-03-16 20:40:02       35 阅读