zoukankan      html  css  js  c++  java
  • Linux下非root用户运行Tomcat

    PS:Linux下使用非root用户运行tomcat的原因

    由于项目需求,也由于root用户启动tomcat有一个严重的问题,那就是tomcat具有root权限。

    这意味着你的任何一个页面脚本(html/js)都具有root权限,所以可以轻易地用页面脚本 修改整个硬盘里的文件!

    所以最好不要使用root启动tomcat。

    正文:非root用户运行tomcat

     #本文安装目录为 /opt/tomcat6

    # 创建用户

    # 创建用户组 dev
    groupadd dev
    # 创建用户 tomcat
    useradd -g dev -s /usr/sbin/nologin tomcat
    
    

    说明:-s /usr/sbin/nologin 表示禁止该用户登录。

    也可以在用户创建之后执行

    useradd -g dev
    usermod -s | --shell /usr/sbin/nologin username

    # tomcat配置

    #编译安装服务守护程序

    #进入tomcat目录
    cd /opt/tomcat6/bin/
    # 解压
    tar vzxf commons-daemon-native.tar.gz
    # 进入unix目录
    cd /opt/tomcat6/bin/commons-daemon-1.0.15-native-src/unix/ 
    
    
    # 安装前的配置 及校验 
    ./configure 
    
    
    # 若未配置$java_home需指定JDK目录 
    ./configure --with-java=/opt/jdk_1.6_45
    
    

    如果出现如下错误提示,说明未设置JAVA_HOME变量

    *** Java compilation tools ***
    checking for JDK location... configure: error: Java Home not defined. Rerun with --with-java=... parameter

    如果看到以下信息,就可以编译/安装了

    *** All done ***
    Now you can issue "make"
    # 编译/安装
    make
    # 执行make后会生成一个jsvc文件,将其复制到tomcat的bin目录
    cp jsvc /opt/tomcat6/bin

    # 修改启动脚本文件

    vi /opt/tomcat6/bin/daemon.sh

    #找到如下内容

    test ".$TOMCAT_USER" = . && TOMCAT_USER=tomcat
    # Set JAVA_HOME to working JDK or JRE
    # JAVA_HOME=/opt/jdk-1.6.0_45

    #修改TOMCAT_USER=tomcat,"tomcat"为运行tomcat的用户,本文创建的用户即为tomcat,所以不用修改。

    去除JAVA_HOME前的注释(即“#”号),并设置为JDK的所在目录(/opt/jdk_1.6)。

    ## 更改tomcat目录权限

    # 更改文件所有者
    chown -R tomcat:dev /opt/tomcat6
    # 赋予用户执行权
    chmod a+x /opt/tomcat6/bin/daemon.sh

    注:tomcat命令

    # 后台运行
    /opt/tomcat/bin/daemon.sh  start
    # 前台运行
    /opt/tomcat/bin/daemon.sh  run
    # 停止
    /opt/tomcat/bin/daemon.sh  stop
    # 创建符号链接/软连接
    ln -s /opt/tomcat6/bin/daemon.sh /etc/init.d/tomcat6
    # tomcat6添加至系统服务
    chkconfig –-add tomcat6
    #启动/停止
    service  tomcat6  start/stop


          如果事后就后悔当时应该做别的选择,就表示不论选哪一条路都会得到相同的结果
  • 相关阅读:
    Asp.Net MVC4入门指南(3):添加一个视图
    Asp.Net MVC4入门指南(2):添加一个控制器
    Asp.Net MVC4入门指南(1): 入门介绍
    .net平台借助第三方推送服务在推送Android,IOS消息(极光推送_V2版本)
    ASP.NET网站实现中英文转换(本地化资源)
    .net 内置对象之Session对象和Session的过期时间
    SQL 单表分页存储过程和单表多字段排序和任意字段分页存储过程
    Js键盘事件全面控制,回车按键事件,键盘对应按键码,按键事件兼容各个浏览器。
    C# WebBrowser控件详解
    html .net 网页,网站标题添图标
  • 原文地址:https://www.cnblogs.com/marshu/p/9842148.html
Copyright © 2011-2022 走看看