懒猫算力仓初探(三):如何SSH免密登陆以及配置免密sudo?

忘机山人

发布于250天前
博客图片修整中,看不了可以先搜索公众号“忘机山人”看。

https://appstore.lazycat.cloud/#/shop/detail/cloud.lazycat.app.lzcollama



在拿到懒猫AI算力仓之后,除了插显示器操作,更常见的方式是通过 SSH 远程管理。这样不仅方便日常使用,也能在不接显示器的情况下完成调试和部署。本文将一步步演示如何用 SSH 登录算力仓,并配置免密登录与免密 sudo,让远程操作更高效、更顺滑。

懒猫算力仓启动后,我们可以通过 **SSH** 来进行远程管理。设备出厂时已默认开启 SSH 服务端,所以我们要做的第一步是获取它的 IP 地址。

### 一、获取IP地址

如果你使用路由器,可以在路由器后台查看分配到的 IP,并用 `telnet ip地址` 测试端口是否开放:


![image.png](https://dl.playground.lazycat.cloud/guidelines/459/a4ca7c5a-e830-4a46-bb57-33937642c715.png "image.png")

如果外接了显示器,也可以直接在终端执行:

```bash
ip addr
```

懒猫算力仓的默认用户名和密码都是 `nvidia`,所以我们可以直接尝试登录:

```bash
ssh nvidia@192.168.1.100
```

首次登录会提示是否接受 `fingerprint`,输入 `yes` 即可。



### 二、配置 SSH 免密登录

每次输入密码太麻烦,可以配置免密登录。

1. **在本地生成 SSH 密钥**(如果还没有):

   ```bash
   ssh-keygen -t rsa -b 4096
   ```

   一路回车,默认生成在 `~/.ssh/id_rsa` 和 `~/.ssh/id_rsa.pub`。

2. **将公钥拷贝到目标机**:

   ```bash
   ssh-copy-id nvidia@192.168.1.100
   ```

   如果目标机没有 `ssh-copy-id`,可以手动追加:

   ```bash
   cat ~/.ssh/id_rsa.pub | ssh nvidia@192.168.1.100 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
   ```

   以后只需执行:

   ```bash
   ssh nvidia@192.168.1.100
   ```

   就能直接登录而无需密码。

![image.png](https://dl.playground.lazycat.cloud/guidelines/459/99646eaf-83fa-4827-a223-3687ad3868dc.png "image.png")



### 三、使用 `~/.ssh/config` 简化命令

如果你经常要连同一台设备,可以在本机配置 SSH 简化命令。

编辑:

```bash
vim ~/.ssh/config
```

添加配置:

```
Host orin
    HostName 192.168.1.100
    User nvidia
    Port 22
    IdentityFile ~/.ssh/id_rsa
```

保存后,就可以直接:

```bash
ssh orin
```

配合免密登录,体验更流畅。


![image.png](https://dl.playground.lazycat.cloud/guidelines/459/c2386c25-8ab5-4dc9-948e-da6dfa59a179.png "image.png")



### 四、配置免密 sudo

Ubuntu 上免密 `sudo` 有两种方式:

#### 方式一:直接修改 sudoers 文件

进入算力仓:

```bash
sudo vim /etc/sudoers
```

找到:

```
root    ALL=(ALL:ALL) ALL
```

在下面新增:

```
nvidia  ALL=(ALL:ALL) NOPASSWD:ALL
```

保存退出即可。

#### 方式二(推荐):新建 sudoers.d 配置文件

这样不会污染原始配置,更安全:

```bash
echo "nvidia ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/nvidia
sudo chmod 440 /etc/sudoers.d/nvidia
```



### 五、验证配置

1. 尝试免密 SSH 登录。
2. 登录后执行:

   ```bash
   sudo ls /root
   ```

   如果无需输入密码,说明免密 sudo 已生效。



### 六、SSH 常见排查方法(通用 Linux)

如果 SSH 无法登录,可以按“本地 → 网络 → 服务端 → 配置”逐步排查:

#### 1. 确认基本信息

* 用户名、IP 是否正确:

  ```bash
  ssh user@192.168.1.100
  ```
* 如果端口改过,需显式指定:

  ```bash
  ssh -p 2222 user@192.168.1.100
  ```

#### 2. 本地网络检查

* 测试连通性:

  ```bash
  ping 192.168.1.100
  ```
* 确认端口是否开放:

  ```bash
  telnet 192.168.1.100 22
  # 或
  nc -zv 192.168.1.100 22
  ```

#### 3. 服务端检查

* 确认 SSH 服务是否运行:

  ```bash
  sudo systemctl status ssh    # Ubuntu/Debian
  sudo systemctl status sshd   # CentOS/RedHat
  ```
* 若未运行,启动并设置开机自启:

  ```bash
  sudo systemctl enable ssh --now
  ```

#### 4. 防火墙/安全组

* Ubuntu:

  ```bash
  sudo ufw status
  sudo ufw allow 22/tcp
  ```
* CentOS/RHEL:

  ```bash
  sudo firewall-cmd --permanent --add-service=ssh && sudo firewall-cmd --reload
  ```

#### 5. SSH 配置文件

检查:

```bash
sudo nano /etc/ssh/sshd_config
```

关键项:

```
Port 22
PermitRootLogin no
PasswordAuthentication yes
```

修改后重启:

```bash
sudo systemctl restart ssh
```

#### 6. 日志排查

* Ubuntu:

  ```bash
  sudo tail -f /var/log/auth.log
  ```
* CentOS:

  ```bash
  sudo tail -f /var/log/secure
  ```

#### 7. 权限检查

确保 `.ssh` 目录和文件权限正确:

```bash
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
```

通过本文的步骤,我们完成了以下几件事:

1. 使用 SSH 登录懒猫算力仓;
2. 配置 SSH 公钥,实现免密登录;
3. 利用 ~/.ssh/config 简化连接命令;
4. 配置免密 sudo,省去输入密码的麻烦;
5. 提供了常见 SSH 故障的排查方法。

这样配置下来,你就能在懒猫算力仓上实现“一步登录 → 直接 sudo”的丝滑体验。无论是本地调试模型,还是在局域网中远程部署服务,你都能做到“一条命令直达 root 权限”。这让懒猫算力仓真正变成了一个可以随时掌控的 AI 算力伙伴

评论

0

暂无评论

说点什么呢~
收藏
0
0
0