linuxer
linuxer
发布于 2026-04-16 / 49 阅读
0
0

甲骨文云服务器怎么密码登录?Cloud-Init脚本快速设置指南

1.png

我的甲骨文云(Oracle Cloud)账号还是多年前注册的,这些年断断续续开着机,也没怎么好好利用。最近心血来潮想重新折腾一下,结果在创建新实例时就被劝退了——现在默认只支持SSH密钥登录,每次连接都要指定私钥文件,对于我这种习惯了输入账号密码就上的懒人来说,实在有点麻烦。

琢磨了半天,终于找到了一个完美的解决方案:在创建实例时通过 cloud-init 脚本直接开启密码登录。今天就把这个经验分享给大家,特别是像我这样的老用户,希望能帮你们少走点弯路。经常用的老鸟飘过吧 给新人看的

💡 为什么选择密码登录?

● 

方便快捷:不用到处找 .key 文件,也不用担心权限设置错误导致无法连接。

● 

符合直觉:在任何终端工具里,输入用户名和密码就能登录,对新手更友好。

● 

双保险机制:保留密钥作为备用,万一密码登录出问题还能救急。

🛠️ 创建实例时的关键设置

1. 

SSH密钥配置(保留备用)

到了“添加SSH密钥”这一步,虽然我们要用密码登录,但我还是强烈建议生成并下载密钥对。这相当于给服务器上了双保险,万一后续密码登录因为某些原因没生效,还可以用密钥救急,不至于要把实例删了重来。

2. 

粘贴cloud-init脚本(核心步骤)

这是最关键的一步!在创建页面的“高级选项”区域,找到“粘贴cloud-init脚本”的文本框。

cloud-init是云服务器第一次启动时自动执行的初始化脚本。我们要做的就是告诉它:“帮我把密码设好,再把密码登录的门打开。”

📜 专属脚本分享

以下脚本专为Ubuntu和Oracle Linux系统设计,会同时设置 ubuntuopc 用户的密码,确保无论系统默认是哪个用户都能顺利登录。 其他系统的话让ai生成对于的吧

代码

#cloud-config
users:
  - name: ubuntu
    sudo: ALL=(ALL) NOPASSWD:ALL
    shell: /bin/bash
  - name: opc
    sudo: ALL=(ALL) NOPASSWD:ALL
    groups: users, admin
    shell: /bin/bash

chpasswd:
  list: |
    ubuntu:Abc123abc
    opc:Abc123abc
    root:Abc123abc
  expire: false

ssh_pwauth: true

runcmd:
  - sed -i 's/^#\?PasswordAuthentication.*/PasswordAuthentication yes/' /etc/ssh/sshd_config
  - sed -i 's/^#\?PermitRootLogin.*/PermitRootLogin yes/' /etc/ssh/sshd_config
  - systemctl restart ssh

重要提示

● 

脚本第一行的 #cloud-config 必须顶格写,前面不能有空格或空行。

● 

整个脚本的缩进(空格)非常重要,不要随意改动,否则会导致格式错误。

🚀 成功登录

确认所有配置无误后,点击页面底部的“创建”按钮。等待几分钟,等实例状态变为“运行中”,记下你的实例公网IP地址。

现在,打开你电脑上的终端,输入以下命令:

代码

ssh ubuntu@你的实例公网IP

当系统提示是否继续连接时,输入 yes 并回车。接着会提示输入密码,输入你在脚本里设置的密码(例如 Abc123abc)。注意,输入密码时屏幕上不会显示任何字符,输完直接回车即可。

如果一切顺利,恭喜你!你已经成功进入了你的甲骨文云服务器。

📌 总结

通过这个简单的方法,我们巧妙地绕过了甲骨文云复杂的密钥配置,用最传统、最习惯的密码方式实现了登录。这对于刚接触Linux或者只是想快速搭建应用的朋友来说,能省去不少麻烦。

当然,从安全角度看,密钥登录依然是更推荐的方式。但对于学习、测试或个人项目来说,开启密码登录带来的便利性是巨大的。希望这篇小教程能帮到和我一样的老用户,让我们重新愉快地玩转云服务器!为了安全登录有做好其他保险措施!


评论