美文网首页我用 LinuxPHP经验分享
PHP最佳实践之上线准备

PHP最佳实践之上线准备

作者: 萧潇在jianshu | 来源:发表于2017-08-01 21:18 被阅读6992次

    配置

    1).如果你使用的不是Pass,那么先配置VPS或者专用的服务器才能运行PHP应用。本文假设你会使用vim或者nano编辑器。
    2).我们选择nginx服务器来作为我们的web服务器。

    首次登录

    ssh root@123.456.78.90
    

    注意要把ip换成你自己的VPS的IP。


    13.png

    我这里使用的是vultr的VPS,这个VPS服务商是按小时收费的。这意味着,架设一台VPS的成本几乎为零。你可以点击这里注册

    升级软件

    apt-get update
    apt-get upgrade
    

    这一步很重要,因为这能保证系统中默认的软件安装了最新的更新和安全修补。

    14.png 15.png

    输入y然后敲回车继续

    非根用户

    现在你的新服务器还是不太安全,因为我们必须要避免使用根用户。我们可以创建一个叫xiao的非根用户。密码必填,其他信息不是必填项,敲回车继续。

    adduser xiao
    
    16.png

    接下来把他加入sudo用户组,使他拥有sudo权限。

    usermod -G sudo xiao
    
    17.png

    SSH 密钥对认证

    你在本地想访问VPS的时候推荐你使用密钥认证这种方式。简单来说,就是我们创建一对密钥,其中一个是私钥保存在本地设备中,另一个是公钥,传到你的VPS中,之所以叫做密钥对,是因为使用公钥加密的 消息只能使用对应的私钥解密。
    使用SSH连接远程设备的时候,远程设备会随机创建一个消息,使用公钥加密之后把密文发送给本地设备,本地设备收到密文之后使用私钥解密,然后把解密后的消息发送给远程的服务器,远程的服务器验证了解密之后的消息,赋予你访问的权限。

    ssh-keygen
    scp ~/.ssh/id_rsa.pub xiao@123.456.78.90:
    

    第一个命令执行成功你的~/.ssh 目录会有如下文件


    18.png

    然后使用scp上传到远程服务器


    19.png

    然后登陆你的VPS确认这个~/.ssh/目录是否存在。

    20.png

    如果不存在则执行下面的命令

    mkdir ~/.ssh
    touch ~/.ssh/authorized_keys
    

    这个文件是一系列允许登陆这台VPS的公钥。然后将上传的公钥复制到这个文件中

    cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
    

    现在使用下面的命令修改一下目录权限。

    chown -R xiao:xiao ~/.ssh
    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/authorized_keys
    
    21.png

    禁止密码和根用户登陆

    修改/etc/ssh/sshd_config文件。将PasswordAuthentication设置为 no,然后将PermitRootLogin设置为no。
    我是用的是vim,你可以使用你会的编辑器。

    23.png 24.png 25.png
    sudo service ssh restart
    

    重启ssh使修改生效。


    26.png

    至此为止,我们的PHP部署服务器已经准备好,下一篇将会介绍PHP-FPM安装和配置,包括全局配置和进程池配置。

    专题系列

    PHP专题系列目录地址:https://github.com/xx19941215/webBlog
    PHP专题系列预计写二十篇左右,主要总结我们日常PHP开发中容易忽略的基础知识和现代PHP开发中关于规范、部署、优化的一些实战性建议,同时还有对Javascript语言特点的深入研究。

    相关文章

      网友评论

        本文标题:PHP最佳实践之上线准备

        本文链接:https://www.haomeiwen.com/subject/lxlflxtx.html