zoukankan      html  css  js  c++  java
  • tomcat

    Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由 Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。
    Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应 HTML标准通用标记语言下的一个应用)页面的访问请求。 实际上Tomcat是Apache 服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的
    诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和 IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态 HTML的能力不如Apache服务器。 目前Tomcat最新版本为 9.0

    Tomcat最初是由Sun的软件构架师詹姆斯·邓肯·戴维森开发的。后来他帮助将其变为开源项目,并由Sun贡献给Apache软件基金会。由于大部分开源项目O'Reilly都会出一本相关的书,并且将其封面设计成某个动物的素描,因此他希望将此项目以一个动物的名字命名。因为他希望这种动物能够自己照顾自己,最终,他将其命名为Tomcat(英语公猫或其他雄性猫科动物)。而O'Reilly出版的介绍Tomcat的书籍(ISBN 0-596-00318-8)[1]的封面也被设计成了一个公猫的形象。而Tomcat的Logo兼吉祥物也被设计成了一只公猫。


    使用single sign-on valve有一些重要的限制:
    1> value必须被配置和嵌套在相同的Host元素里,并且所有需要进行单点验证的web应用(必须通过context元素定义)都位于该Host下。
    2> 包括共享用户信息的realm必须被设置在同一级Host中或者嵌套之外。
    3> 不能被context中的realm覆盖。
    4> 使用单点登录的web应用最好使用一个Tomcat的内置的验证方式(被定义在web.xml中的中),这比自定 义的验证方式强,Tomcat内置的的验证方式包括basic、digest、form和client-cert。
    5> 如果你使用单点登录,还希望集成一个第三方的web应用到你的网站中来,并且这个新的web应用使用它自己的验证方式,而不使用容器管理安全,那你基本上 就没招了。用户每次登录原来所有应用时需要登录一次,并且在请求新的第三方应用时还得再登录一次。
    6> 单点登录需要使用cookies。

    目录结构

    /bin:存放windows或Linux平台上启动和关闭Tomcat的 脚本文件
    /conf:存放Tomcat服务器的各种全局 配置文件,其中最重要的是server.xml和web.xml
    /doc:存放Tomcat文档
    /server:包含三个子目录:classes、lib和webapps
    /server/lib:存放Tomcat服务器所需的各种JAR文件
    /server/webapps:存放Tomcat自带的两个WEB应用admin应用和 manager应用
    /common/lib:存放Tomcat服务器以及所有web应用都可以访问的jar文件
    /shared/lib:存放所有web应用都可以访问的jar文件(但是不能被Tomcat服务器访问)
    /logs:存放Tomcat执行时的日志文件
    /src:存放Tomcat的 源代码
    /webapps:Tomcat的主要Web发布目录,默认情况下把Web应用文件放于此目录
    /work:存放JSP编译后产生的 class文件

    安全启动

    编辑
    Tomcat是一个世界上广泛使用的支持jsp和servlets的Web服务器。它在java上运行时能够很好地运行并支持Web应用部署。会因为设置不当,造成灾难性的后果。在Tomcat默认安装,Tomcat作为一个系统服务运行,如果没有将其作为系统服务运行,几乎所有Web服务器管理员都是缺省地将其以Administrator权限运行。这两种方式都允许Java运行时访问Windows系统下任意文件夹中的任何文件。缺省情况下,Java运行时授予安全权限。当 Tomcat以系统管理员身份或作为系统服务运行时,Java运行取得了 系统用户或系统管理员所具有的全部权限。这样一来,取得了同样的权限。所以Java代码可以调用Java SDK中的文件API、列出文件夹中的全部文件、删除任何文件,最大的危险在于以系统权限运行一个程序。当任一Servlets含有如下代码:
    b4ae04fd6dYsJkr5 Runtime rt = Runtime.getRuntime();
    rt.exec(”c:\SomeDirectory\SomeUnsafePRogram.exe”)
    其服务是以system权限启动。根据权限最小安全原则,降低了脚本所获取的操作本地系统权限。此操作如下:
    新建一个帐户
    1. 用”ITOMCAT_计算机名”建立一个普通用户
    2. 为其设置一个密码
    3. 保证”密码永不过期”(PassWord Never Expires)被选中
    修改Tomcat安装文件夹的访问权限
    1. 选定环境参数CATALINA_HOME或TOMCAT_HOME指向的Tomcat安装文件夹。
    2. 为”ITOMCAT_计算机名”用户赋予读、写、执行的访问权限。
    3. 为”ITOMCAT_计算机名”用户赋予对WebApps文件夹的只读访问权限。
    4. 如果某些Web应用程序需要写访问权限,单独为其授予对那个文件夹的写访问权限。
    Tomcat作为系统服务
    1. 到”控制面板”,选择”管理工具”,然后选择”服务”。
    2. 找到Tomcat:比如Apache Tomcat.exe等等,打开其”属性”。
    3. 选择其”登录”(Log)标签。
    4. 选择”以…登录”(Log ON Using)选项。
    5. 键入新建的”ITOMCAT_计算机名”用户作为用户名。
    6. 输入密码。
    7. 重启机器。
    在DOS窗口下运行Tomcat步骤
    1. 在”开始”按钮的”运行”框中键入CMD以打开一个DOS窗口。
    2. 键入”RunAs /user:ITOMCAT_计算机名 CMD.exe”命令。
    3. 在询问”ITOMCAT_计算机名”用户的密码时输入设置的密码。
    4. 这将打开一个新的DOS窗口。
    5. 在新开的DOS窗口中,转换到Tomcat的bin文件夹内。
    6. 键入”catalina run”命令。
    7. 关闭第一个DOS窗口。
    设置一下程序
    CMD.EXE NET.EXE ATTRIB.EXE At.EXE NET1.EXE FTP.EXE TELNET.EXE COMMAND. COM CAcls.EXE netstat.exe;system 全部权限 ,其它用户无权限。
  • 相关阅读:
    Libev源码分析01:Libev中的监视器结构(C结构体实现继承)
    字符串处理函数
    sqrt函数实现
    Text Justification
    Minimum Path Sum
    Linux下如何查看系统启动时间和运行时间
    通过GDB重新获得进程的输出
    linux时间
    jmeter java请求:java.lang.VerifyError: Cannot inherit from final class
    面试——请带简历
  • 原文地址:https://www.cnblogs.com/lxwphp/p/15455037.html
Copyright © 2011-2022 走看看