• Ubuntu下配置Tomcat以指定(非root)身份执行


    My Blog:http://www.outflush.com/

    通常情况下。在配置Tomcat生产环境时,一般会配置Tomcat以特定的身份执行(非root)。这样有利于提高安全性,防止站点被黑后的进一步权限提升。

    本文依赖的环境:

    • Ubuntu(事实上大部分相同适用于CentOS)
    • JVM(安装并已配置好环境变量)
    • gcc、make等编译工具
    • JAVA_HOME=/usr/lib/jvm/jdk1.7.0_55
    • CATALINA_HOME=/usr/local/apache-tomcat-7.0.53
    • 执行Tomcat的username为tomcat

    首先须要到Apache Tomcat官网下载最新版Tomcat

    Apache Tomcat:http://tomcat.apache.org

    下载好安装包,解压到/usr/local/apache-tomcat-7.0.53下

    # 进入Tomcat安装文件夹下的bin文件夹
    cd /usr/local/apache-tomcat-7.0.53/bin
    
    # 解压commons-daemon-native.tar.gz
    tar zxvf commons-daemon-native.tar.gz
    
    cd commons-daemon-native/unix
    
    # 这里须要gcc、make等编译工具。假设没有指定JAVA_HOME环境变量。则须要 --with-java= 參数指定jdk文件夹
    .configure
    
    # 上一步成功后。make
    make
    
    # make后,会在当前文件夹下生成一个名为 jsvc 的文件。将其拷贝到$CATALINA_HOME/bin文件夹
    cp jsvc ../../
    
    # 加入一个用来执行Tomcat的用户
    useradd tomcat -M -d / -s /usr/sbin/nologin
    
    # 回到$CATALINA_HOME/bin文件夹下
    cd ../../
    
    # 接下来便是改动$CATALINA_HOME/bin文件夹下的 daemon.sh 文件
    # 设置当中的TOMCAT_USER=tomcat,JAVA_HOME=/usr/lib/jvm/jdk1.7.0_55
    
    # 假设$CATALINA_HOME/bin下的*.sh文件没有执行权限,则为其加入执行权限
    chmod +x *.sh
    
    # 设置$CATALINE_HOME文件夹及其全部子文件Owner为tomcat
    chown -R tomcat:tomcat /usr/local/apache-tomcat-7.0.53
    
    # 启动Tomcat
    daemon.sh start

    设置Tomcat为Service

    # 创建 $CATALINA_HOME/bin/daemon.sh 的一个链接到 /etc/init.d/ 下,service名为tomcat7
    ln -s /usr/local/apache-tomcat-7.0.53/bin/daemon.sh /etc/init.d/tomcat7
    
    # 启动Tomcat
    /etc/init.d/tomcat7 start
    # 或者
    service tomcat7 start

    设置Tomcat开机自启动 (前提是已经设置Tomcat为Service)

    # 设置开机自启动
    update-rc.d tomcat7 defaults
    
    # 取消开机自启动
    update-rc.d tomcat7 remove


    參考资料:http://www.jdiy.org/read.jd?id=y0haaynq1w

  • 相关阅读:
    ubuntu16.04配置网卡
    如何让虚拟机的Ubuntu上网?
    sqlite错误 The database disk image is malformed database disk image is malformed 可解决
    Linux系统安装bcompare步骤及注意事项Linux系统安装bcompare步骤及注意事项
    用python做科学计算(一)C语言读取python生成的二进制文件
    ubuntu下的RapidSVN
    matplotlib常见问题总结
    MATLAB中的矩阵索引
    4.0 Lab1-CRC Generation(1)
    项目管理-人员配置
  • 原文地址:https://www.cnblogs.com/liguangsunls/p/7241947.html
Copyright © 2020-2023  润新知