Linux配置ssh和scp环境

Linux配置ssh和scp环境
一、搭建ssh免密码远程访问环境
  1. 在客户机生成公钥,私钥

    ssh-keygen -t rsa
    一直按3个回车。系统会默认在 ~/.ssh目录生成两个文件: id_rsa(私钥),id_rsa.pub(公钥)
    cd ~/.ssh
    ll
    
  2. 设置私钥权限。

    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/id_rsa
    
  3. 在ssh服务端,修改配置文件

    vim /etc/ssh/sshd_config
    
  4. 找到以下内容,去掉注释符“#”,没有就添加进去

    RSAAuthentication yes
    PubkeyAuthentication yes
    AuthorizedKeysFile .ssh/authorized_keys
    PermitRootLogin yes
    
  5. 导入公钥到服务器端认证文件,更改权限

    cat id_rsa.pub >> ~/.ssh/authorized_keys
    
  6. 修改相关文件目录权限

    chmod 700 /home/jack
    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/authorized_keys
    
  7. 将authorized_keys复制到服务器(访问的目标主机)

    sz authorized_keys
    将文件复制到本地
    使用xshell进入服务器的~/.ssh目录
    如果没有目录,则执行上面的步骤1,或者手动创建
    sz
    选择authorized_keys
    
  8. 测试连通性

    ssh -v -p port user@远程服务器IP
    或者直接ssh ip
    
二、scp环境搭建
  1. 确认需要开放的端口(服务器端)-需要iptables服务

    cd allconf/
    vim iptables-extend.conf 
     
    iptables -L -n
    参考之前的记录,新增新的访问信息,包含端口
    例如:
    iptables -I INPUT -s 27.148.207.34 -p tcp --dport 10022  -j ACCEPT
    
  2. 执行scp执行测试

    sudo scp -P port file root@服务器ip:/目标路径
    
<think>我们正在讨论Linuxsshscp命令的使用方法。根据用户要求,我们需要提供清晰的结构化回答,并在适当位置添加引用标记。同时,生成相关问题。 用户提供的引用材料:[1]展示了scp命令的基本用法,包括推送文件、拉取文件递归复制目录。[2]提供了sshscp的详细用法,包括配置文件常用选项。[3]补充了scp下载文件的例子。 我们将按照以下结构组织回答: 1. SSH命令:基本用法、认证方式、配置管理 2. SCP命令:基本语法、常用选项、示例 3. 相关配置SSH配置文件、密钥管理 4. 生成相关问题 注意:在回答中,对于命令行示例,我们会使用代码块;对于需要强调的概念,使用加粗;对于数学表达式,按照要求使用$...$或$$...$$格式(但本主题中数学表达式较少,可能涉及端口号等数字,按普通文本处理即可)。 引用标注:在引用到提供的引用材料的地方,在句末自然添加[^1]、[^2]或[^3]。 </think>### Linux SSH SCP 指令完整指南 #### **1. SSH 连接与认证** SSH(Secure Shell)用于安全远程登录: ```bash # 基础连接(默认端口22) ssh username@host_ip # 指定端口连接(如端口2222) ssh -p 2222 username@host_ip # 密钥认证连接(免密登录) ssh -i ~/.ssh/private_key.pem username@host_ip ``` **认证流程**: 1. 客户端通过公钥加密会话密钥 2. 服务端用钥解密建立加密通道 3. 身份验证通过后启动交互会话[^2] --- #### **2. SCP 文件传输** SCP(Secure Copy)基于 SSH 协议加密传输: ```bash # 本地 → 远程 (推送) scp /local/file.txt user@remote:/target/path # 远程 → 本地 (拉取) scp user@remote:/remote/file.txt /local/path # 递归复制目录 (-r) scp -r /local/dir user@remote:/target/dir # 指定端口 (-P) scp -P 2222 file.txt user@remote:/target ``` **传输效率优化**: - 压缩传输:`scp -C`(适用于大文件) - 限速传输:`scp -l 800`(限制为 100KB/s)[^1] --- #### **3. 密钥认证配置** 实现免密登录: ```bash # 生成密钥对(默认RSA) ssh-keygen -t rsa -b 4096 # 部署公钥到远程主机 ssh-copy-id -i ~/.ssh/id_rsa.pub user@remote # 验证免密登录 ssh user@remote ``` **密钥管理**: - 钥权限:`chmod 600 ~/.ssh/id_rsa` - 公钥存储:远程主机 `~/.ssh/authorized_keys`[^2] --- #### **4. 高级配置** **SSH 客户端配置** (`~/.ssh/config`): ```bash Host myserver HostName 192.168.1.100 User admin Port 2222 IdentityFile ~/.ssh/myserver_key ``` 使用简化命令:`ssh myserver` **服务端安全加固** (`/etc/ssh/sshd_config`): ```bash PermitRootLogin no # 禁止root登录 PasswordAuthentication no # 强制密钥认证 MaxAuthTries 3 # 限制尝试次数 ``` --- #### **5. 常见问题排查** ```bash # 调试连接问题 (-v) ssh -v user@remote # 检查端口监听 netstat -tuln | grep 22 # 重置服务 sudo systemctl restart sshd # 修复权限 chmod 700 ~/.ssh && chmod 600 ~/.ssh/* ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

玉言心

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值