随着云计算时代的进一步深入,越来越多的中小企业企业与开发者需要一款简单易用、高能高效的云计算基础设施产品来支撑自身业务运营和创新开发。基于这种需求,华为云焕新推出华为云云服务器实例新品。
感谢华为元免费赠送的优惠券,没有什么比白嫖更香了,对于我这种想要省钱又想要玩一玩云服器的,实在是很优选的选择,赶紧搞起来体验体验。
本文详细介绍了从购买服务器=>配置实例=>配置SSH连接=>配置Git服务器的完整过程,可供项目实践参考。
服务器实例:“云耀云服务器L实例”
CPU:2核,2G
带宽:3M
系统:Ubuntu 22.04 server 64bit
Git版本:2.34.1
系统:win11
Git for windows版本:2.38.1.windows.1
华为元官网地址:https://www.huaweicloud.com/
若有华为账户可以不用再注册,可直接使用华为账户登录即可。
点击右上角注册按钮:
华为云提供多种登录方式。
(1)扫码登录,使用华为云APP直接扫码登录。
我是有华为账户,所以我直接使用华为账户进行登录了,简单省事。
注:首次登录出于安全考虑会进行验证,后续选择信任浏览器就不会重复提示了。
登录后华为云首页的右上角就可以看到我们自己的华为云ID了,表示我们已经登录成功。
也可以在首页点击产品选项,然后根据需要选择自己的产品,如下:
我选的服务器是:云耀云服务器L实例
设置实例名,可以直接默认,也可以自己设置,我这边设置为ubuntu。
增值服务,我这边直接全部放弃,暂不考虑,小伙伴可以根据自己需要自行添加。
选择购买时长,我选择一个月体验,然后点击“立即购买”按钮进行购买。
点击“返回华为云云耀云服务器控制台”即可返回服务器的控制台界面。
进入华为云首页并登录,然后点击控制台菜单即可跳到我们的控制台界面。
点击我的资源下的云服务器选项,在跳出的界面中选择我们刚刚创建的服务器。
如下是系统界面。右侧有提示默认账户信息。
注意:公网IP需要保密哦,直接公开可能被外部攻击。
首次登录,我们不知道密码,直接点击提示框中的重置密码,先修改系统密码。
根据提示设置好自己的密码,主要要符合密码安全规范,然后勾选立即重启(因为我们是第一次使用,所以直接重启即可,若是后续修改需要根据情况先行保存数据哦。),然后点击“确定”按钮进行修改。
等重启后刷新页面,即可重新进入服务器。
直接使用ssh指令查看到系统默认已经安装了SSH,我们就不用再次安装了。
systemctl status ssh # 我们直接使用root账户登录的,不需要切换权限,若是普通用户,有权限的话可以添加sudo指令切换到root权限。
systemctl start ssh #启动 ssh服务器
systemctl enabled ssh # 设置ssh开机自启动
注:若对ssh配置不熟悉的,可以参考我的另一篇文章:Linux学习笔记-Ubuntu系统下配置ssh免密访问,创建多用户免密访问_鱼听禅的博客-CSDN博客
华为云服务器默认打开的入站规则,也就是有这个22端口,我们理论上可以直接访问的,连接效果如下:
PS C:\WINDOWS\system32> ssh [email protected]
The authenticity of host '120.46.xxx.xx (120.46.xxx.xx)' can't be established.
ED25519 key fingerprint is SHA256:5DuA3UyXjSMYAcN/7thF56JNZqV3AY2AiSvKpTSgPZw.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '120.46.xxx.xx ' (ED25519) to the list of known hosts.
[email protected] 's password:
Welcome to Ubuntu 22.04.2 LTS (GNU/Linux 5.15.0-76-generic x86_64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
System information as of Fri Sep 15 10:05:18 PM CST 2023
System load: 0.0 Processes: 107
Usage of /: 9.6% of 39.07GB Users logged in: 1
Memory usage: 15% IPv4 address for eth0: 192.168.0.237
Swap usage: 0%
* Strictly confined Kubernetes makes edge and IoT secure. Learn how MicroK8s
just raised the bar for easy, resilient and secure K8s cluster deployment.
https://ubuntu.com/engage/secure-kubernetes-at-the-edge
Expanded Security Maintenance for Applications is not enabled.
0 updates can be applied immediately.
Enable ESM Apps to receive additional future security updates.
See https://ubuntu.com/esm or run: sudo pro status
The list of available updates is more than a week old.
To check for new updates run: sudo apt update
Welcome to Huawei Cloud Service
Last login: Fri Sep 15 17:18:34 2023
root@hcss-ecs-d2d6:~#
虽然该端口已经有了不过还是介绍下修改入站端口。
(1)点击安全组名字,进入规则管理界面:
root@hcss-ecs-d2d6:~# ssh-keygen #创建密钥
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): #设置文件保存路径,直接默认。
Enter passphrase (empty for no passphrase): # 设置密钥的密码
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa
Your public key has been saved in /root/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:8qlKprUVFx+ImcIOgbFL7V89f8812f52RX/QuBqkyZ8 root@hcss-ecs-d2d6
The key's randomart image is:
+---[RSA 3072]----+
|.o. |
|...o + . |
|....o + o . o |
|...o . .o .. o o|
|. .. o.S+.+ +.|
| . .= .* . . *|
| +.. o o = o=|
| = o . E o.=|
| . o.. +=|
+----[SHA256]-----+
首先切换到“/root/.ssh”目录下,然后查看下密钥文件,将密钥添加到密钥管理文件“auhorized_keys”中。
root@hcss-ecs-d2d6:~ # cd /root/.ssh
root@hcss-ecs-d2d6:~/.ssh# ll
total 16
drwx------ 2 root root 4096 Sep 15 22:38 ./
drwx------ 5 root root 4096 Sep 15 17:23 ../
-rw------- 1 root root 0 Sep 15 16:51 authorized_keys
-rw------- 1 root root 2602 Sep 15 22:38 id_rsa
-rw-r--r-- 1 root root 572 Sep 15 22:38 id_rsa.pub
root@hcss-ecs-d2d6:~/.ssh# cat id_rsa >> authorized_keys
root@hcss-ecs-d2d6:~/.ssh#
PS C:\WINDOWS\system32> scp [email protected]:/root/.ssh/id_rsa.pub C:\Users\LJM\.ssh\id_rsa.pub
[email protected]'s password:
id_rsa.pub 100% 572 13.2KB/s 00:00
PS C:\WINDOWS\system32> scp C:\Users\LJM\.ssh\id_rsa [email protected]:/root/.ssh/id_rsa
id_rsa 100% 2602 54.5KB/s 00:00
PS C:\WINDOWS\system32>
注意:密钥文件的存储路径为各自的电脑user文件夹下大的.ssh目录,不可随意变更,否则客户端的git客户端将无法获取。
ssh-add C:\Users\LJM\.ssh\id_rsa #实际地址需要根据各自的地址修改
配置完成后,一般可以直接使用ssh免密访问,如果有异常,可以重启ssh服务,或者干脆重启服务器。
直接使用—version指令查看,有显示具体版本号的即是已安装的。
root@hcss-ecs-d2d6:~# git --version
git version 2.34.1
注:若git尚未安装,可以使用apt-get指令安装。
apt-get install git
root@hcss-ecs-d2d6:~# cd /mnt # 切换到mnt文件夹
root@hcss-ecs-d2d6:/mnt# ll
total 8
drwxr-xr-x 2 root root 4096 Aug 9 2022 ./
drwxr-xr-x 20 root root 4096 Sep 15 17:15 ../
root@hcss-ecs-d2d6:/mnt# mkdir git # 创建git仓库文件夹
root@hcss-ecs-d2d6:/mnt# ll
total 12
drwxr-xr-x 3 root root 4096 Sep 15 22:55 ./
drwxr-xr-x 20 root root 4096 Sep 15 17:15 ../
drwxr-xr-x 2 root root 4096 Sep 15 22:55 git/
root@hcss-ecs-d2d6:/mnt# cd git
root@hcss-ecs-d2d6:/mnt/git# mkdir testproject # 创建测试项目文件夹
root@hcss-ecs-d2d6:/mnt/git# ll
total 12
drwxr-xr-x 3 root root 4096 Sep 15 22:56 ./
drwxr-xr-x 3 root root 4096 Sep 15 22:55 ../
drwxr-xr-x 2 root root 4096 Sep 15 22:56 testproject/
root@hcss-ecs-d2d6:/mnt/git# cd testproject
root@hcss-ecs-d2d6:/mnt/git/testproject# git init –bare # 初始化git项目
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
Initialized empty Git repository in /mnt/git/testproject/
root@hcss-ecs-d2d6:/mnt/git/testproject# ll
total 40
drwxr-xr-x 7 root root 4096 Sep 15 22:56 ./
drwxr-xr-x 3 root root 4096 Sep 15 22:56 ../
drwxr-xr-x 2 root root 4096 Sep 15 22:56 branches/
-rw-r--r-- 1 root root 66 Sep 15 22:56 config
-rw-r--r-- 1 root root 73 Sep 15 22:56 description
-rw-r--r-- 1 root root 23 Sep 15 22:56 HEAD
drwxr-xr-x 2 root root 4096 Sep 15 22:56 hooks/
drwxr-xr-x 2 root root 4096 Sep 15 22:56 info/
drwxr-xr-x 4 root root 4096 Sep 15 22:56 objects/
drwxr-xr-x 4 root root 4096 Sep 15 22:56 refs/
root@hcss-ecs-d2d6:/mnt/git/testproject#
完成之后,即可愉快的使用“云耀云服务器L实例”配置的Git服务器管理自己的代码,文件了。