我有一个Apache 2.4.23 + OpenSSL 1.0.2j正面服务器。 然后我安装了Tomcat 7的另一台服务器。 这个想法是,Apache在*:443上有一个VHOST,它使用ProxyPass根据指定的URL通过AJP发送请求到Tomcat服务器。 这是我的vhosts.conf文件(它有SSLconfiguration,因为我不想使用httpd-ssl.conf文件,因为我必须改变很多东西),根据这个网站: https://mozilla.github.io/server-side-tls/ssl-config-generator/ ################################################################################################################## # VHOSTS HTTP # redirect all HTTP to HTTPS (optional) <VirtualHost *:80> ServerAlias * RewriteEngine On RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [redirect=301] </VirtualHost> ################################################################################################################## # VHOSTS HTTPS Listen 443 # modern configuration, tweak to your needs SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1 SSLProxyProtocol all -SSLv3 -TLSv1 -TLSv1.1 […]
我最近从CA购买了一个使用Bitnami和Liferay的Apache Tomcat服务器的SSL证书。 我已经configuration了tomcat server.xml文件,如下所示: <Connector port="8443" maxThreads="200" scheme="https" secure="true" SSLEnabled="true" keystoreFile="/opt/bitnami/apache-tomcat/conf/ssl/tomcat.keystore" keystorePass="mypass" clientAuth="false" sslProtocol="TLS" /> 而根据我的CA,我已经正确地将证书及其中间体添加到密钥存储区,但是当我通过任何SSL检查器运行域时,仍然会说证书是自签名的,并且证书上的名称是“www .example.com的”。 有关获取CA证书的任何build议?
使用Apache Ldap身份validation来使用Tomcat。 我可以看到通过TCP DUMP,我的HTTP头发送remote_user:.. RICHARD到tomcat。 我已经尝试了mod_AJP和mod_HTTP 但不能通过我的Restful java spring webservices打印remote_user。 是的,在server.xml中Tomcatauthentication =“false”。 为什么我不能打印REMOTE_USER请帮助。
我正在使用Ubuntu 14.04和Tomcat7。 出于某种原因,我需要将java-7升级到java-8。 所以我安装了openjdk-8,并使用update-alternatives –config java命令将其设置为默认值。 令我惊讶的是,tomcat仍然使用java7。 为了解决这个问题,我修改了/usr/share/tomcat7/bin/setenv.sh文件并添加了下面一行。 export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/ 现在tomcat7正在使用java-8,但由于在setenv.sh文件中进行了上述修改,我无法使用service tomcat7 stop停止tomcat服务器。 它显示[OK]消息,但tomcat进程仍在运行。 有什么build议么 ? 编辑1 :我也注意到, service tomcat7 start是启动tomcat服务器,但打印在控制台上的文本下面。 * Starting Tomcat servlet engine tomcat7 [fail] 编辑2 :我已经在setenv.sh中设置JAVA_HOME(指向Java8),然后服务不工作,但是当我从setenv.sh中删除JAVA_HOME,并把它放在catalina.sh然后一切都按预期工作。
我有一个Debian Jessie机器设置与NGINX和TOMCAT8。 TOMCAT正在运行鳄梨酱。 NGINX设置为在端口443(SSL)上侦听,并在8080上向本地TOMCAT反向代理。一切工作正常。 当我添加ssl_client_certificate指令时,我在浏览器(Safari MacOS和iOS)中获得了一个空白页面。 它适用于Firefox。 尽pipe如此,凭借客户端证书,我仍然可以无缝连接到NGINX的其他位置(例如下面的口径位置)。 TOMCAT开箱即用。 这是我的NGINXconfiguration文件: server { listen 443 ssl; server_name domain.eu; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers HIGH:!aNULL:!MD5; ssl_certificate /etc/letsencrypt/live/domain.eu/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/domain.eu/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/domain.eu/chain.pem; ssl_client_certificate /etc/nginx/certs/ca.pem; ssl_verify_client on; location /guacamole/ { proxy_pass http://127.0.0.1:8080/guacamole/; proxy_buffering off; proxy_http_version 1.1; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $http_connection; access_log off; } location […]
我们已经遇到了一个问题,当我们的cookie达到一定的规模(超过7K),其中nginx返回400错误的请求与一个空的响应代理到我们的tomcat。 但是,当nginx提供静态内容时不会发生这种情况。 我们已经尝试更新nginxconfiguration来增加缓冲区大小,所以它应该处理最多16k(我们也试图设置它在服务器级别)的单个标头: http { # … client_body_buffer_size 32k; client_header_buffer_size 16k; large_client_header_buffers 4 16k; # … } 我们也把tomcat的max-http-header-size提高到16k。 如果我们将Cookie大小增加到16k以上,我们仍然会收到400个错误的请求,但是响应的“请求标头或Cookie太大”错误消息。 在8k和16k的头部大小之间发生了奇怪的事情,我们无法弄清楚。
我正在使用MySQL在Tomcat中添加会话持久性,但不幸的是,它不工作。 数据库中没有什么 我试图保存会话信息,以便用户即使在tomcat重新启动后也能login。 这是我有的configuration: 表格: create database tomcat; create table tomcat$sessions ( id varchar(100) not null primary key, valid char(1) not null, maxinactive int not null, lastaccess bigint, data mediumblob ); context.xml: <Manager className="org.apache.catalina.session.PersistentManager" debug="3" saveOnRestart="true" maxActiveSessions="-1" minIdleSwap="-1" maxIdleSwap="-1" maxIdleBackup="-1"> <Store className="org.apache.catalina.session.JDBCStore" driverName="org.gjt.mm.mysql.Driver" connectionURL="jdbc:mysql://localhost/tomcat?user=USERNAME&password=PASSWORD&useSSL=false" sessionTable="tomcat$sessions" sessionIdCol="id" sessionDataCol="data" sessionValidCol="valid" sessionMaxInactiveCol="maxinactive" sessionLastAccessedCol="lastaccess" checkInterval="60" debug="99" /> </Manager> logging.properties: […]
我面临非常奇怪的情况。 我已经在我的本地/ dev机器上使用keytool命令创build了keystore + CSR。 我从https://www.thawte.com/获得了SSL证书。 我已经成功导入了证书并在本地/ dev tomcat上进行了configuration。 它也显示证书信息,这意味着证书是好的。 但是,问题是当我将相同的导入密钥库configuration到AWS中的Tomcat时,Tomcat不响应请求。 有人能帮我一下吗 ? 谢谢
作为PCI的要求,我想在HTTPS上获取tomcat部署pipe理器,因为密码是以纯文本formsstream动的。 我尝试了这样的资源。 我目前的连接器如下所示: <Connector protocol="org.apache.coyote.ajp.AjpProtocol" executor="tomcatThreadPool" port="8301" address="0.0.0.0" tomcatAuthentication="false" redirectPort="443" proxyPort="443" connectionTimeout="1000" keepAliveTimeout="300000" packetSize="21000" maxHttpHeaderSize="3600000" /> 我可以成功访问给定端口上的pipe理器。 我通过添加下面的内容来改变security-contraint来启用HTTPS 。 <security-constraint> <web-resource-collection> <web-resource-name>Protected Context</web-resource-name> <url-pattern>/*</url-pattern> </web-resource-collection> <!– auth-constraint goes here if you requre authentication –> <user-data-constraint> <transport-guarantee>CONFIDENTIAL</transport-guarantee> </user-data-constraint> </security-constraint> 请指出我是否缺less任何东西。 任何博客或某种文件也将有所帮助。
我有IIS重写URL作为Apache Tomcat的反向代理。 example.com/app/redirect到example.com:8080/app/。 端口80redirect到同一台服务器上的端口8080。 如果我去example.com/app/,它按预期工作。 但是,如果我去example.com/app(没有结尾的斜杠),它会导致404错误。 我匹配入站规则的模式是^app/(.*) 。 然后该操作重写为URL http://127.0.0.1:8080/app/{R:1} 。 任何build议如何让这个工作没有斜线后面?