腾讯云服务器初始化操作

本文最后更新于:2023年5月6日 上午

重装系统

📓 说明:

因为我买的时候, CentOS 最新只提供到 7.3, 我希望使用 CentOS 7.5. 看到镜像库里有(什么毛病, 买的时候为啥不提供), 所有重新安装下系统.

  1. 选中实例, 点击 更多 , 选择 重装系统:

    重装系统

  2. 选择 公共镜像 -> CentOS -> CentOS 7.5 64 位 -> 输入 root 密码. 点击 开始重装. 如下图:

    重装系统具体选项

  3. 等待重装完毕即可.

设置监控告警

  1. 点击 监控 图标:

    点击监控

  2. 有以下监控指标, 如下图, 点击 设置告警:

    1. CPU
    2. 内存
    3. 宽带(内外网)
    4. 磁盘 IO
    5. 分区使用请看

    设置告警

  3. 根据自己的需要, 定制告警策略. 示例如下:

    告警策略

  4. 要配置告警通知渠道, 需要先 新增用户组. 如下(我和其他人合用, 所以建立一个用户组还是有必要的):

    新增用户组

  5. 新增用户组的操作如下, 先直接使用预设策略 - 管理员就可以了.

    新增用户组

  6. 接下来关联到具体的用户组

    关联接受组

  7. 点击 完成, 配置完成后如下所示: (可以把默认的禁用掉了)

    告警策略

创建密钥并绑定主机

  1. SSH 密钥 菜单, 点击 创建密钥:

    创建密钥

  2. 创建密钥( 密钥请妥善保存, 勿外传).

    创建密钥

  3. 创建后, 先关闭主机 (关闭后的主机才能绑定密钥, 很好, 关机也受到告警了👌), 再选择 绑定 / 解绑实例, 如下图:

    绑定实例

安全组配置

📓 备注:

类似于防火墙权限.

  1. 点击 安全组 -> 新建. 如下图:

    新建安全组

  2. 选择 立即设置规则. 具体原因如下图:

    设置规则

  3. 可以先关联到我自己的云主机实例. 如下图:

    关联到实例

  4. 然后再配置出 / 入站规则, 先配置入站, 先选择 一键放通. 放通以下:

    1. Linux SSH 登录: 22 端口
    2. Windows 登录: 3389
    3. ping: ICMP 协议
    4. HTTP: 80
    5. HTTPS: 443
    6. FTP: 20 和 21

    一键放通入站

  5. 再根据自己需要添加规则, 如下: (放通 TCP 的 8000 端口)

    自定义规则

  6. 最后配置出站规则, 选择 一键放通. 以后再慢慢细化, 如下:

    一键放通出栈

至此, 控制台上该配置的就配置的差不多了, 接下来登录主机进行配置.

CentOS 7.5 优化配置

用户 / 登录相关优化

创建普通用户 基于公钥登录

  1. 创建普通用户: useradd -m -p yourpassword casey

  2. 普通用户基于公钥登录: (因为之前 创建密钥并绑定主机, 公钥已经存在于主机上了, 所以不需要 keygen 了, 直接复制就可以了)

    1
    cp /root/.ssh/authorized_keys /home/casey/.ssh && chown -R casey:casey /home/casey/.ssh/
  3. 确认基于 ssh 公钥的登录是否工作

📓 备注:

完整的 基于公钥 登录的步骤如下: (前提是刚开始该账户能通过账号密码方式登录)

  1. 在云主机上创建普通用户: useradd -m -p yourpassword hellowordomain
  2. 使用 ssh-keygen 命令在云主机上创建密匙对: ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa_tencent_$(date +%Y-%m-%d) -C "tencent key for hellowordomain"
  3. 使用 ssh-copy-id 命令安装公匙: ssh-copy-id -i /path/to/public-key-file user@host
  4. 确认基于 ssh 公钥的登录是否工作

普通用户配置 sudo 权限

在 CentOS/RHEL 系统中如何将用户 vivek 添加到 sudo 组中

在 CentOS/RHEL 和 Fedora 系统中允许 wheel 组中的用户执行所有的命令。使用 usermod 命令将用户 vivek 添加到 wheel 组中:

1
2
$ sudo usermod -aG wheel vivek
$ id vivek

sudo 无需输入密码

1
2
3
4
5
6
7
8
9
# root 用户 
visudo

# 修改如下内容后保存退出
## Allows people in group wheel to run all commands
# %wheel ALL=(ALL) ALL

## Same thing without a password
%wheel ALL=(ALL) NOPASSWD: ALL

测试并确保用户 vivek 可以以 root 身份登录执行以下命令:

1
2
sudo -i  # 切换到 root 用户
sudo systemctl status sshd # 查看 sshd 的状态

sshd_config 优化

1
2
3
4
5
6
7
8
9
10
# 禁用 root 登录
PermitRootLogin no
ChallengeResponseAuthentication no
PasswordAuthentication no
UsePAM no
# 禁用密码登录 仅留下公匙登录
AuthenticationMethods publickey
PubkeyAuthentication yes
# 禁用空密码
PermitEmptyPasswords no

最后测试 sshd_config 文件并重启 / 重新加载 SSH 服务

1
2
sudo sshd -t
sudo systemctl restart sshd.service

更新系统和软件

1
2
sudo yum upgrade -y  # 升级所有软件
sudo yum clean all -y # 清理缓存

安装及配置 Git

  1. 安装 Git

    1
    sudo yum install -y --setopt=tsflags=nodocs git
  2. 配置 git

    1
    2
    3
    4
    git config --global user.name "east4ming"
    git config --global user.email "cuikaidong@foxmail.com"
    ssh-keygen -t rsa -b 4096 -C "cuikaidong@foxmail.com" # 已有私钥也可以重复使用

  3. cat .ssh/id_rsa.pub 并复制 (id_rsa.pub 是对应的公钥信息)

  4. 打开 github 网页登入账户进入账户 settings 左边找到 SSH,可以清理一下没用的 SSH keys,然后新建一个 ,取名任意,粘贴进去 cat 产生的所有字符。保存即可。

  5. 缓存 HTTPS 方式的密码:

    1
    2
    3
    $ git config --global credential.helper 'cache --timeout=3600'
    # Set the cache to timeout after 1 hour (setting is in seconds)

优化配置 shell

安装 zsh

1
2
3
4
5
sudo yum install -y --setopt=tsflags=nodocs zsh
zsh --version
sudo chsh -s $(which zsh)
# 注销

安装 powerline

1
2
pip install powerline-status --user

安装oh-my-zsh

1
2
sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"

Using Oh My Zsh

以下内容来自 oh-my-zsh github

Plugins

Oh My Zsh comes with a shitload of plugins to take advantage of. You can take a look in the plugins directory and/or the wikito see what’s currently available.

Enabling Plugins

Once you spot a plugin (or several) that you’d like to use with Oh My Zsh, you’ll need to enable them in the .zshrc file. You’ll find the zshrc file in your $HOME directory. Open it with your favorite text editor and you’ll see a spot to list all the plugins you want to load.

1
2
vi ~/.zshrc

For example, this might begin to look like this:

1
2
3
4
5
6
7
8
9
10
plugins=(
git
bundler
dotenv
osx
rake
rbenv
ruby
)

Using Plugins

Most plugins (should! we’re working on this) include a README, which documents how to use them.

Themes

We’ll admit it. Early in the Oh My Zsh world, we may have gotten a bit too theme happy. We have over one hundred themes now bundled. Most of them have screenshots on the wiki. Check them out!

Selecting a Theme

Robby’s theme is the default one. It’s not the fanciest one. It’s not the simplest one. It’s just the right one (for him).

Once you find a theme that you’d like to use, you will need to edit the ~/.zshrc file. You’ll see an environment variable (all caps) in there that looks like:

1
2
ZSH_THEME="robbyrussell"

To use a different theme, simply change the value to match the name of your desired theme. For example:

1
2
3
ZSH_THEME="agnoster" # (this is one of the fancy ones)
# see https://github.com/robbyrussell/oh-my-zsh/wiki/Themes#agnoster

Note: many themes require installing the Powerline Fonts in order to render properly.

Open up a new terminal window and your prompt should look something like this:

Agnoster theme

In case you did not find a suitable theme for your needs, please have a look at the wiki for more of them.

If you’re feeling feisty, you can let the computer select one randomly for you each time you open a new terminal window.

1
2
ZSH_THEME="random" # (...please let it be pie... please be some pie..)

And if you want to pick random theme from a list of your favorite themes:

1
2
3
4
5
ZSH_THEME_RANDOM_CANDIDATES=(
"robbyrussell"
"agnoster"
)


腾讯云服务器初始化操作
https://ewhisper.cn/posts/41970/
作者
东风微鸣
发布于
2019年3月26日
许可协议