Web部署指南


Web部署指南

基础准备

服务器基本配置

对于一个新的服务器,通常使用的是Linux操作系统,例如:Ubuntu,CentOS等。一个新安装的服务器一般需要安装一些组件方便使用,这里以Ubuntu为例。

先执行sudo su进入root用户,设置修改密码执行:

sudo passwd

更新源列表

sudo apt-get update

htop

后台资源监控

  • 安装:
apt install htop
  • 使用
htop

make

  • 安装
apt install make

gedit或vim

编辑

  • 安装
apt install gedit
  • 使用
gedit 文件路径

tree

方便浏览目录结构

  • 安装
apt-get install tree
  • 使用
tree

查看公网IP

通过访问ipconfig.co来查看

#更多用法访问ifconfig.co
wget -qO - ifconfig.co

通过curl来获取IP

如果没有curl,要先下载安装curl

sudo apt install curl

其次,使用下列命令中得一个来获取本地地址

curl cip.cc
curl http://members.3322.org/dyndns/getip
curl ip.6655.com/ip.aspx
curl ifconfig.me
curl icanhazip.com
curl ident.me
curl ipecho.net/plain
curl whatismyip.akamai.com
curl myip.dnsomatic.com

也可以查看ip和地区

#返回IP和地区
curl ip.6655.com/ip.aspx?area=1
curl cip.cc

静态私有IP配置

配置Linux系统的IP地址的方法,主要有以下三种:

  • ifconfig
  • setup
  • 修改网卡的配置文件

1. ifconfig

命令名称:ifconfig
基本语法:ifconfig [网卡标识] [IP地址]
英文原意:interface configuration
执行权限:root
功能描述:查看或临时配置网卡信息

说明: ifconfig 命令主要是用来查看网卡的配置信息,因为用它来配置网卡的IP地址时,只会临时生效(Linux服务器重启后就会失效)。要想使本地网卡(eth0)的配置永久生效,需要修改其配置文件/etc/sysconfig/network-scripts/ifcfg-eth0。

先用ifconfig命令查看一下网卡的基本信息。

ifconfig
查看Linux服务器的网卡的相关信息。

结果如下:

[root@localhost ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:3E:9C:06  
          inet addr:192.168.200.128  Bcast:192.168.200.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe3e:9c06/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2326 errors:0 dropped:0 overruns:0 frame:0
          TX packets:520 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:161222 (157.4 KiB)  TX bytes:51780 (50.5 KiB)
          Interrupt:19 Base address:0x2000 

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

说明:

eth0 表示第1块本地网卡,它是按照数字顺序来命名的。
如果有第2块本地网卡,就叫eth1。
通常,我们主要会查看本地网卡的mac地址(HWaddr 00:0C:29:3E:9C:06)和IP地址(inet addr:192.168.200.128)。

lo 表示本地回环网卡。

如果你在查看网卡信息时,没有本地网卡eth0这一项。很可能是因为本地网卡默认没有启动。
可先修改它的配置文件/etc/sysconfig/network-scripts/ifcfg-eth0。

加上如下代码,来启动Linux主机的本地网卡:
ONBOOT=yes

保存退出后,运行下面的命令,重启网络服务,使网卡配置文件立即生效:
service network restart
再来运行ifconfig即可。

如果本地网卡eth0已经启动,就可以用下面的命令临时设置IP地址:

ifconfig eth0 192.168.1.3
临时配置本地网卡eth0的IP地址,Linux重启就会失效。

这种配置ip的方式只能设置IP和子网掩码,估只适合内网(局域网)使用。
如果想连通外网,还必须设置网关和DNS。

2. setup

setup 命令是 redhat 系列的linux系统(如CentOS)中专有的命令工具。

可以使用 setup 命令,来对网络配置中的IP地址、子网掩码、默认网关、DNS服务器进行设置。而且,setup 网络配置工具设置的IP地址会永久生效。

命令名称:setup
命令所在路径:/usr/sbin/setup
执行权限:root
功能描述:配置网络
基本语法:setup

setup 命令是 redhat 系列的linux系统(如CentOS)中专有的命令工具。

使用 setup 命令来配置网络,会出现一个图形化的界面,操作起来非常方便。而且它支持的功能更多,除了网络配置外,还支持防火墙配置、系统服务和验证配置。

可以使用 setup 命令,来对网络配置中的IP地址、子网掩码、默认网关、DNS服务器进行设置。当然,你也可以使用DHCP(将该项的值设置为 * 即可)来自动获取IP、子网掩码和网关,前提是你家的路由器已经开启了DHCP服务(通常,路由器的DHCP服务都是默认开启的)。

使用 setup 命令修改了网络配置后,需要重启网络服务,使修改立即生效。命令如下:

service network restart

使用 setup 命令保存的网络配置,会永久生效。

3. 修改网卡的配置文件

本地网卡的配置文件为/etc/sysconfig/network-scripts/ifcfg-eth0。

直接修改网卡的配置文件,设置方法有两种:

  • 自动获取动态IP地址
  • 手工配置静态的IP地址

自动获取动态IP地址

也就是通过路由器的DHCP功能,使Linux主机自动获取IP地址。

设置方法如下:

vi /etc/sysconfig/network-scripts/ifcfg-eth0
编辑本地网卡的配置文件

主要查看下面这两项是否和下面给出的一致即可。

ONBOOT=yes
BOOTPROTO=dhcp

第一项是确保本地网卡eth0开启。

第二项是使用dhcp,自动获取IP地址、子网掩码、网关和DNS。

然后,执行下面的命令,重启网络服务即可。

service network restart     
重启网络服务,使配置文件生效

手工配置静态的IP地址

也就是手工配置IP地址、子网掩码、网关和DNS。

设置方法如下:

vi /etc/sysconfig/network-scripts/ifcfg-eth0
编辑本地网卡的配置文件

主要查看下面这几项是否和下面给出的一致即可。

ONBOOT=yes
BOOTPROTO=none
IPADDR=192.168.1.66
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1

第二项表示不使用dhcp服务,如果是手动配置静态的ip地址,BOOTPROTO的值可以为none或者static。

第三项表示设置IP地址。

第四项表示设置子网掩码。

第五项表示设置网关。

第六项表示设置首选DNS服务器,其实DNS有自己的配置文件/etc/resolv.conf,在这里设置DNS,就是把它写入了DNS的配置文件/etc/resolv.conf。

然后,执行下面的命令,重启网络服务即可。

service network restart 

远程连接配置

SSH Server安装

注意:ssh默认端口是22

  • 安装
sudo apt-get install openssh-server
  • 查看SSH是否启动;有sshd说明ssh服务已经启动
sudo ps -e |grep ssh
  • 开启ssh服务
sudo service ssh start
  • 停止服务
sudo service ssh stop
  • 卸载ssh服务
sudo apt-get –purge remove sshd
  • 使用vim修改配置文件/etc/ssh/sshd_config

    • 获取远程ROOT权限
    sudo vim /etc/ssh/sshd_config
    • 把配置文件中的PermitRootLogin without-password加一个”#”号,把它注释掉,再增加一句
    PermitRootLogin yes
    • 开始连接,重启ssh
    sudo service ssh restart
  • 远程连接

ssh 用户名@ip地址
或
ssh -p 22 用户名@ip地址

注意:连接不上先检查网络

ping www.baidu.com

网页资源与Web服务软件

网站资源上传

Vscode连接

通过vscode远程连接可以直接向服务器拖拽资源即可,但是这种方式不能传过大的文件,容易断开连接,具体vscode怎么连接服务器,下载安装remote插件即可。

终端工具连接

例如:开源的Putty,好用的Xshell远程连接服务器,XFTP远程管理上传文件,MobaXterm等shell工具

Web服务器软件安装配置

目前主流的Web服务器软件主要是Nginx。

  • 检查端口被哪个进程占用
netstat -lnp|grep 88   #88请换为你需要的端口,如:80
  • 杀掉编号为1777的进程(请根据实际情况输入)
kill -9 1777

Nginx一键式安装

  • 安装
apt-get install nginx
  • 一旦安装完成,Nginx 将会自动被启动。你可以运行下面的命令来验证它:
sudo systemctl status nginx
  • 查看nginx是否安装成功
nginx -v
  • 启动nginx
service nginx start
  • 启动后,在网页重输入ip地址,即可看到nginx的欢迎页面。至此nginx安装成功

Nginx包安装

  • 安装依赖包
apt-get install gcc
apt-get install libpcre3 libpcre3-dev
apt-get install zlib1g zlib1g-dev
# Ubuntu14.04的仓库中没有发现openssl-dev,由下面openssl和libssl-dev替代
#apt-get install openssl openssl-dev
sudo apt-get install openssl 
sudo apt-get install libssl-dev
  • 安装nginx
cd /usr/local
mkdir nginx
cd nginx
wget http://nginx.org/download/nginx-1.13.7.tar.gz
tar -xvf nginx-1.13.7.tar.gz 
  • 编译nginx
# 进入nginx目录
/usr/local/nginx/nginx-1.13.7
# 执行命令
./configure
# 执行make命令
make
# 执行make install命令
make install
  • 启动nginx
#进入nginx启动目录
cd /usr/local/nginx/sbin
# 启动nginx
./nginx

Nginx配置

安装成功Nginx默认路径是/usr/share/nginx/html,最简单的方法是直接替换改路径文件为自己要部署的静态网页

或者进入配置文件修改

cd /etc/nginx

修改配置文件

vim nginx.conf

修改server下的root路径为服务器上自己上传的网页路径即可

  • 重启nginx
ps -ef | grep nginx
kill -9 PID
service nginx start

或者

service nginx reload

具体nginx配置文件介绍参考:Nginx笔录

域名与SLL配置

域名

域名如果没有需要在阿里云,华为云等平台购买,并进行备案。

  • 域名首先在购买的厂商上加解析记录值,让DNS服务器能够解析
  • nginx.conf配置server
    server
    {
        listen   80;                            #监听端口设为 80。
        server_name  test.creativecc.cn;         #绑定您的域名。
        index index.htm index.html index.php;   #指定默认文件。
        root /var/www/html/JackCC.Nav;           #指定网站根目录。
    }

SLL证书

  • 购买免费证书:点这里👈
  • 云平台:证书核验申请与校验
  • 申请成功之后,之后配置需要用到pem和key文件,相应的文件下载在”已签发”这块,点击下载,选择Nginx版本下载之后就可以了。

    • .crt文件:是证书文件,crt是pem文件的扩展名(有时候没有crt只有pem的,所以不要惊讶)
    • .key文件:证书的私钥文件(申请证书时如果没有选择自动创建CSR,则没有该文件)
    • .pem扩展名的证书文件采用Base64-encoded的PEM格式文本文件,可根据需要修改扩展名。
  • 建议在在etc/nginx目录中创建一个cert目录,然后把下载下来的证书拷贝到/etc/nginx/cert目录中

  • 之后进入./sites-enabled/目录,创建一个文件为creativecc.cn(取名为这个,是为了方便管理),之后把下面的内容复制粘贴
server {
    listen 443 ssl;
    server_name test.creativecc.cn;

    root /var/www/html/JackCC.Nav;
    index index.html index.htm;
    ssl_certificate  cert/6903723_creativecc.cn.pem;
    ssl_certificate_key cert/6903723_creativecc.cn.key;
    ssl_session_timeout 5m;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_prefer_server_ciphers on;
    location / {
        index index.html index.htm;
    }
}

​ 需要注意一下几点:

    • server_name需要配置为你自己的域名昂;
    • root /var/www/html; 这个是你网站的所在的目录;
    • ssl_certificate cert/dawnguo.cn.pem;pem文件的路径;
    • ssl_certificate_key cert/dawnguo.cn.key;ket文件的路径;
  • http的重定向,为了在使用http访问站点时,能自动跳转到https访问,下面我们设置一下重定向

server {
        listen 80;
        server_name  test.creativecc.cn;  
        rewrite ^(.*)$ https://test.creativecc.cn;
    }

查看硬件信息

  • 系统
uname -a               # 查看内核/操作系统/CPU信息
head -n 1 /etc/issue   # 查看操作系统版本
cat /proc/cpuinfo      # 查看CPU信息
hostname               # 查看计算机名
lspci -tv              # 列出所有PCI设备
lsusb -tv              # 列出所有USB设备
lsmod                  # 列出加载的内核模块
env                    # 查看环境变量
  • 网络
ifconfig               # 查看所有网络接口的属性
iptables -L            # 查看防火墙设置
route -n               # 查看路由表
netstat -lntp          # 查看所有监听端口
netstat -antp          # 查看所有已经建立的连接
netstat -s             # 查看网络统计信息
  • GPU
lspci  | grep -i vga
lspci | grep -i nvidia    #Nvidia显卡
lspci -v -s 00:0f.0        #查看指定显卡的详细信息用以下指令
nvidia-smi                #Nvidia自带一个命令行工具可以查看显存的使用情况
sudo dpkg --list | grep nvidia-*    #查看NVIDIA驱动版本

其他操作

  • 添加用户
sudo useradd name
  • 设置用户密码
sudo passwd name

重装系统

  • U盘启动盘进入BOIS
    • Dell:F2
    • HP:F10
    • 联想:由联想收购IBM而来的think pad系列,一般热键是Enter或者F1,有些比较老的机器是Del和F2.
    • Acer和Asus:一般都是F2

Linux查看序列号

dmidecode -t1
  • 内网穿透

参考:https://bbs.deepin.org/zh/post/217702


文章作者: 杰克成
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 杰克成 !
评论
  目录