心血来潮买了个华为云的2c2g服务器,用的ubuntu20,那么开始记录怎么使用的吧
一、安全初始化
1.创建非root用户
因为我计划用本地到服务器的非root的免密登录,所以创建一个有sudo权限的用户
useradd -m -s /bin/bash test
passwd test
usermod -aG sudo test
2.配置防火墙
开放2222端口用作ssh登录,同时开放80,443等常用端口
sudo ufw deny --permanent 22/tcp
sudo ufw allow --permanent 2222/tcp
sudo ufw allow --permanent 80/tcp
sudo ufw allow --permanent 443/tcp
sudo ufw enable
sudo ufw reload
登录云控制台,在安全组中放行必要端口(如 2222、80、443),并拒绝公网 ping(ICMP)。
3.修改SSH配置文件
执行vi /etc/ssh/sshd_config
打开 SSH 配置文件。
将Port
修改为非默认端口,如Port 2222
;
设置PermitRootLogin no
禁止 root 直接登录;
设置PasswordAuthentication no
禁用密码登录(前提是已配置密钥登录);
设置PubkeyAuthentication yes
启用密钥登录;
还可设置MaxAuthTries 3
限制最大认证尝试次数。
4.配置免密登录
在本地执行
ssh-keygen -t rsa -b 2048
ssh-copy-id test@server_ip //将test替换为实际用户名,server_ip替换为服务器 IP
systemctl restart ssh
//如果有以下报错的解决方法是ssh-keygen -R server_ip再重新上传公钥
5.卸载Needstart
因为每次安装完软件都弹出来让我重新启动,这让我很困扰
apt autoremove -y --purge needrestart
6.更新系统软件包并安装基本软件
sudo apt update && apt upgrade
sudo apt install -y wget curl vim net-tools lsof
sudo apt install -y git build-essential
二、Nginx
1.更新软件包列表
sudo apt update
2.安装Nginx
sudo apt install -y nginx
3.验证安装
nginx -v
4.确认放开80、443端口
ufw status
5.访问Nginx
三、Apache
1.更新软件包
sudo apt update
2.安装apache
apt install -y apache2
3.验证安装
apache2 -v
4.检查防火墙
ufw status
5.访问Apache
6.新建目录/var/www/test,用于设计网页
mkdir /var/www/test
//注意这里一直都是用root
7.编辑网页文件
vim /var/www/test/index.html
//内容自己写了哈
8.编辑配置文件
vim /etc/apache2/sites-available/test.conf
9.使用a2ensite
工具启用该文件
sudo a2ensite test.conf
10.禁用中定义的默认站点000-default.conf
sudo a2dissite 000-default.conf
11.
测试配置错误
sudo apache2ctl configtest
12.重新启动 Apache
sudo systemctl restart apache2
13.访问验证