=Start=
这里所谓的安全启动其实就是指:以tomcat用户启动Tomcat容器,并将Web目录设置为只读,防止被上传webshell。
步骤:
1.安装设置Java
解压之后放到某个固定的目录中,然后是设置JAVA_HOME和CLASSPATH,修改PATH(修改:~/.bashrc的内容):
export JAVA_HOME=/usr/lib64/jdk1.7.0_25 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=$JAVA_HOME/lib
2.下载并解压Tomcat
解压后放到某个固定的目录中,设置环境变量CATALINA_BASE:
export CATALINA_BASE=/usr/local/apache-tomcat-7.0.62
3.新建tomcat用户
# groupadd tomcat # useradd -s /bin/bash -g tomcat tomcat
4.修改Tomcat启动脚本用户为tomcat
$ vim $CATALINA_BASE/bin/startup.sh export TOMCAT_USER=tomcat if [ -z "$TOMCAT_USER" ]; then exec "$PRGDIR"/"$EXECUTABLE" start "$@" else exec su $TOMCAT_USER -c "$PRGDIR/$EXECUTABLE start $@" fi $ vim $CATALINA_BASE/bin/shutdown.sh export TOMCAT_USER=tomcat if [ -z "$TOMCAT_USER" ]; then exec "$PRGDIR"/"$EXECUTABLE" start "$@" else exec su $TOMCAT_USER -c "$PRGDIR/$EXECUTABLE start $@" fi
5.设置Tomcat开机自启动
$ cat /etc/init.d/tomcat #!/bin/bash # description: Tomcat Start Stop Restart # locate : /etc/init.d/tomcat # run as: tomcat # chkconfig: 234 export JAVA_HOME=/usr/lib64/jdk1.7.0_25 export PATH=$JAVA_HOME/bin:$PATH export CATALINA_BASE=/usr/local/apache-tomcat-7.0.62 case $1 in start) sh $CATALINA_BASE/bin/startup.sh ;; stop) sh $CATALINA_BASE/bin/shutdown.sh ;; restart) sh $CATALINA_BASE/bin/shutdown.sh sh $CATALINA_BASE/bin/startup.sh ;; esac exit 0 $ sudo vim /etc/init.d/tomcat $ sudo chmod 755 /etc/init.d/tomcat [root@localhost init.d]# chkconfig --level 234 tomcat on [root@localhost init.d]# chkconfig --list tomcat
6.修改Web目录权限
[root@localhost init.d]# ps aux | grep tomcat root 8875 0.0 0.0 61240 792 pts/1 S+ 11:53 0:00 grep tomcat [root@localhost init.d]# ps aux | grep java root 8877 0.0 0.0 61240 792 pts/1 S+ 11:53 0:00 grep java [root@localhost init.d]# service tomcat start Using CATALINA_BASE: /usr/local/apache-tomcat-7.0.62 Using CATALINA_HOME: /usr/local/apache-tomcat-7.0.62 Using CATALINA_TMPDIR: /usr/local/apache-tomcat-7.0.62/temp Using JRE_HOME: /usr/lib64/jdk1.7.0_25 Using CLASSPATH: /usr/local/apache-tomcat-7.0.62/bin/bootstrap.jar:/usr/local/apache-tomcat-7.0.62/bin/tomcat-juli.jar touch: cannot touch '/usr/local/apache-tomcat-7.0.62/logs/catalina.out': Permission denied /usr/local/apache-tomcat-7.0.62/bin/catalina.sh: line 387: /usr/local/apache-tomcat-7.0.62/logs/catalina.out: Permission denied [root@localhost init.d]# ps aux | grep java root 8933 0.0 0.0 61240 800 pts/1 S+ 11:53 0:00 grep java [root@localhost ~]# chown -R tomcat:tomcat /usr/local/apache-tomcat-7.0.62/ && chmod -R 0755 /usr/local/apache-tomcat-7.0.62/ [root@localhost ~]# chown -R root:root /usr/local/apache-tomcat-7.0.62/webapps/ && chmod -R 0755 /usr/local/apache-tomcat-7.0.62/webapps/ [root@localhost ~]# ls -l /usr/local/apache-tomcat-7.0.62/ total 164 drwxr-xr-x 2 tomcat tomcat 4096 Jun 10 11:49 bin drwxr-xr-x 3 tomcat tomcat 4096 Jun 9 19:38 conf drwxr-xr-x 2 tomcat tomcat 4096 Jun 9 18:35 lib -rwxr-xr-x 1 tomcat tomcat 56812 May 8 01:17 LICENSE drwxr-xr-x 2 tomcat tomcat 4096 Jun 9 19:38 logs -rwxr-xr-x 1 tomcat tomcat 1192 May 8 01:17 NOTICE -rwxr-xr-x 1 tomcat tomcat 8965 May 8 01:17 RELEASE-NOTES -rwxr-xr-x 1 tomcat tomcat 16204 May 8 01:17 RUNNING.txt drwxr-xr-x 2 tomcat tomcat 4096 Jun 9 18:35 temp drwxr-xr-x 5 root root 4096 Jun 9 21:07 webapps drwxr-xr-x 3 tomcat tomcat 4096 Jun 9 19:38 work [root@localhost ~]# service tomcat start Using CATALINA_BASE: /usr/local/apache-tomcat-7.0.62 Using CATALINA_HOME: /usr/local/apache-tomcat-7.0.62 Using CATALINA_TMPDIR: /usr/local/apache-tomcat-7.0.62/temp Using JRE_HOME: /usr/lib64/jdk1.7.0_25 Using CLASSPATH: /usr/local/apache-tomcat-7.0.62/bin/bootstrap.jar:/usr/local/apache-tomcat-7.0.62/bin/tomcat-juli.jar Tomcat started. [root@localhost ~]# ps aux | grep java tomcat 9936 50.8 6.2 592956 63684 ? Sl 12:05 0:03 /usr/lib64/jdk1.7.0_25/bin/java -Djava.util.logging.config.file=/usr/local/apache-tomcat-7.0.62/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/usr/local/apache-tomcat-7.0.62/endorsed -classpath /usr/local/apache-tomcat-7.0.62/bin/bootstrap.jar:/usr/local/apache-tomcat-7.0.62/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/apache-tomcat-7.0.62 -Dcatalina.home=/usr/local/apache-tomcat-7.0.62 -Djava.io.tmpdir=/usr/local/apache-tomcat-7.0.62/temp org.apache.catalina.startup.Bootstrap start root 9975 0.0 0.0 61240 792 pts/1 S+ 12:05 0:00 grep java
7.测试
urlrewritefilter
参考链接:
http://baigu.iteye.com/blog/1747504
建立一个无法SSH登录的账户是个什么原理?
搜索关键字:
- centos create a temp user cannot login
- centos 以tomcat权限运行tomcat
参考链接:
- http://serverfault.com/questions/149673/linux-how-to-prevent-a-user-from-login-in-but-allow-su-user
- http://serverfault.com/a/149695
- http://unix.stackexchange.com/questions/124105/running-tomcat-under-tomcat-service-account-in-centos
- http://www.davidghedini.com/pg/entry/install_tomcat_7_on_centos
=END=
《 “Tomcat的安全启动设置” 》 有 2 条评论
如何修改项目引入jar中的代码
https://mp.weixin.qq.com/s/ky9i5LvoIK1BAqExUjx72A
【Java】Mac下搭建JSP环境(Tomcat安装、IntelliJ配置、Eclipse配置)
https://blog.csdn.net/bfz_50/article/details/91382593
`
JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件(.htm,.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。
它实现了Html语法中的java扩展(以 形式)。JSP与Servlet一样,是在服务器端执行的。通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 JSP(JavaServer Pages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。
# 安装+运行 Tomcat
安装:下载官网提供的二进制分发文件(Binary Distributions),然后解压至某个目录下即可完成安装。
运行:在终端中cd到刚才解压目录下的bin目录下,执行 ./startup.sh 命令以启动tomcat;执行 ./shutdown.sh 以停止tomcat。
# jsp文件的运行测试
首先要进入刚刚解压出来的tomcat目录,然后进入 webapps/ROOT 目录里面,再新建一个jsp文件,并且输入相关内容然后保存,比如我们新建一个hello.jsp文件。
然后去浏览器打开 http://localhost:8080/hello.jsp 即可进行测试验证。
`
在Mac下搭建JSP开发环境
https://blog.csdn.net/a592733740/article/details/104899549