云主机环境怎么设置?

HCRM技术_小炮 云主机 2025-10-11 2 0

核心步骤概览

1、获取与登录:购买云主机并通过SSH登录。

2、初始安全加固:更新系统、创建普通用户、配置防火墙。

3、环境配置:安装必要的软件(如Web服务器、数据库、编程语言环境)。

4、部署应用:上传你的代码或网站文件,并配置服务。

5、域名与SSL(可选):绑定域名并启用HTTPS加密。

第一步:获取与登录云主机

1、选择云服务商并购买

国内常见的有阿里云腾讯云华为云等。

国外常见的有Amazon AWSGoogle Cloud Platform (GCP)Microsoft AzureVultrDigitalOcean等。

* 购买时选择你需要的操作系统(如Ubuntu 20.04/22.04 LTSCentOS 7/8,它们是常见且社区支持良好的Linux发行版)。

2、获取登录信息

IP地址云主机的公网IP,例如123.123.123.123

用户名对于Ubuntu通常是ubuntu,对于CentOS通常是root

认证方式

密码部分服务商提供初始密码。

SSH密钥对(推荐)你会下载一个私钥文件(如my_key.pem)。

3、通过SSH登录

* 打开你的终端(Linux/macOS)或使用PuTTY/Xshell等工具(Windows)。

使用密钥登录(示例)

        # 确保私钥文件权限为400(仅所有者可读)
        chmod 400 /path/to/your/private_key.pem
        # 登录命令
        ssh -i /path/to/your/private_key.pem ubuntu@你的云主机IP

* 首次连接时,会提示你确认主机指纹,输入yes 即可。

第二步:初始安全加固(至关重要!)

登录后,第一件事就是加强安全,防止被黑客攻击。

1、更新系统软件包

Ubuntu/Debian:

        sudo apt update && sudo apt upgrade -y

CentOS/RHEL:

        sudo yum update -y
        # 或者对于新版本 CentOS
        sudo dnf update -y

2、创建普通用户(避免直接使用root)

    # 添加新用户,例如叫 ‘admin’
    sudo adduser admin
    # 为新用户设置密码
    sudo passwd admin
    # 将新用户添加到sudo组,使其拥有管理员权限
    sudo usermod -aG sudo admin  # Ubuntu
    sudo usermod -aG wheel admin # CentOS

3、配置SSH密钥登录并禁用密码登录(加强安全)

* 从你的本地电脑将公钥上传到云主机。

* 在本地执行cat ~/.ssh/id_rsa.pub,复制输出内容。

在云主机上,切换到新用户admin,并设置SSH目录和授权文件

        # 切换到新用户
        su - admin
        # 创建.ssh目录并设置权限
        mkdir -p ~/.ssh
        chmod 700 ~/.ssh
        # 将你复制的公钥内容写入authorized_keys文件
        echo "你的公钥内容" >> ~/.ssh/authorized_keys
        chmod 600 ~/.ssh/authorized_keys

编辑SSH配置文件

        sudo nano /etc/ssh/sshd_config

修改或确保以下行:

        PermitRootLogin no          # 禁止root直接登录
        PasswordAuthentication no   # 禁用密码认证
        PubkeyAuthentication yes    # 启用密钥认证

重启SSH服务

        sudo systemctl restart ssh   # Ubuntu
        sudo systemctl restart sshd  # CentOS

重要:在关闭当前连接前,新开一个终端窗口admin 用户和密钥测试登录,确认成功后再关闭原root会话。

4、配置防火墙

* 只开放必要的端口,例如SSH(22), Web(80, 443)。

Ubuntu (使用UFW):

        sudo ufw allow OpenSSH  # 允许SSH,否则你会被锁在外面!
        sudo ufw allow 80       # 允许HTTP
        sudo ufw allow 443      # 允许HTTPS
        sudo ufw enable         # 启用防火墙

CentOS (使用firewalld):

        sudo firewall-cmd --permanent --add-service=ssh
        sudo firewall-cmd --permanent --add-service=http
        sudo firewall-cmd --permanent --add-service=https
        sudo firewall-cmd --reload

第三步:安装软件环境

根据你的需求安装软件,以下是常见环境的安装命令。

1、LEMP/LAMP 栈(用于运行网站)

Nginx (Web服务器):

        # Ubuntu
        sudo apt install nginx -y
        sudo systemctl enable nginx
        # CentOS
        sudo dnf install nginx -y
        sudo systemctl enable nginx

MySQL (数据库):

        # Ubuntu
        sudo apt install mysql-server -y
        sudo mysql_secure_installation # 运行安全脚本,设置root密码等
        # CentOS
        sudo dnf install mysql-server -y
        sudo systemctl enable mysqld
        sudo mysql_secure_installation

PHP (编程语言):

        # Ubuntu
        sudo apt install php-fpm php-mysql -y
        # CentOS
        sudo dnf install php php-fpm php-mysqlnd -y

安装后需要配置Nginx与PHP-FPM协同工作。

2、Node.js 环境

* 建议使用NodeSource仓库安装最新版。

    # Ubuntu
    curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
    sudo apt-get install -y nodejs
    # CentOS
    curl -fsSL https://rpm.nodesource.com/setup_lts.x | sudo bash -
    sudo dnf install -y nodejs

3、Docker 环境

* 参考Docker官方文档安装,通常一条命令即可。

    # 安装Docker Engine
    curl -fsSL https://get.docker.com -o get-docker.sh
    sudo sh get-docker.sh
    # 将当前用户加入docker组,避免每次用sudo
    sudo usermod -aG docker $USER
    # 需要重新登录生效

第四步:部署你的应用

1、上传代码

* 可以使用scp 命令,rsync 工具,或者Git直接从仓库拉取。

示例(使用scp)

        scp -i /path/to/your/key.pem -r /local/project/folder admin@服务器IP:/home/admin/project/

在服务器上使用Git

        sudo apt install git -y  # 如果没装
        cd /home/admin
        git clone https://github.com/yourusername/yourproject.git

2、配置Web服务器

* 以Nginx为例,你需要为你的网站创建一个Server Block(虚拟主机)。

创建配置文件sudo nano /etc/nginx/sites-available/your_domain

基本配置内容

        server {
            listen 80;
            server_name your_domain.com www.your_domain.com; # 没有域名就用服务器IP
            root /home/admin/your_project/public; # 你的网站文件根目录
            index index.html index.php;
            location / {
                try_files $uri $uri/ =404;
            }
            # 如果是PHP项目,需要传递PHP处理
            location ~ \.php$ {
                include snippets/fastcgi-php.conf;
                fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
            }
        }

启用配置

        # 创建软链接
        sudo ln -s /etc/nginx/sites-available/your_domain /etc/nginx/sites-enabled/
        # 测试配置语法
        sudo nginx -t
        # 重载Nginx
        sudo systemctl reload nginx

第五步:绑定域名与SSL证书(可选但推荐)

1、域名解析

* 在你的域名注册商处,将域名解析到你的云主机公网IP(添加一条A 记录)。

2、安装SSL证书(启用HTTPS)

* 使用Let‘s EncryptCertbot 工具,它可以免费自动获取和安装证书。

安装Certbot

        # Ubuntu
        sudo apt install certbot python3-certbot-nginx -y
        # CentOS
        sudo dnf install certbot python3-certbot-nginx -y

获取并安装证书(会自动修改你的Nginx配置)

        sudo certbot --nginx -d your_domain.com -d www.your_domain.com

* 按照提示操作,完成后你的网站就支持HTTPS了,Certbot会自动设置定时任务 renew。

定期更新定期运行sudo apt update && sudo apt upgrade 保持系统安全。

备份定期备份你的网站文件和数据库。

监控使用htop,nethogs 等工具监控系统资源,或使用云服务商提供的监控服务。

最小权限原则只安装和开启你真正需要的服务。

按照以上步骤,你就能成功设置并运行一个安全、稳定的云主机环境了,如果你是初学者,建议先在便宜的测试机上练习几遍。

文章摘自:https://idc.huochengrm.cn/zj/17748.html

评论