trafficserver-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Matthieu Bienvenüe <matth...@exultet.net>
Subject Re: SSL results in segmentation fault
Date Tue, 07 Oct 2014 07:26:55 GMT
OK so here is what I get in traffic.out when setting :

CONFIG proxy.config.ssl.number.threads INT -1
CONFIG proxy.config.diags.debug.enabled INT 1
CONFIG proxy.config.diags.debug.tags STRING ssl



[Oct  7 09:24:57.497] Server {0x40709730} DEBUG: (ssl) 
[SSLNextProtocolAccept:mainEvent] event 202 netvc 0x438d0000
[Oct  7 09:24:57.497] Server {0x40709730} DEBUG: (ssl) ssl_callback_info 
ssl: 0xa5e0ee0 where: 16 ret: 1
[Oct  7 09:24:57.497] Server {0x40709730} DEBUG: (ssl) ssl_callback_info 
ssl: 0xa5e0ee0 where: 8193 ret: 1
[Oct  7 09:24:57.497] Server {0x40709730} DEBUG: (ssl) 
ssl_servername_callback ssl=0xa5e0ee0 ad=112 lookup=0xa54f9c0 
server=XXXX handshake_complete=0
[Oct  7 09:24:57.497] Server {0x40709730} DEBUG: (ssl) 
ssl_servername_callback found SSL context 0xa552960 for requested name 
'XXXX'
[Oct  7 09:24:57.498] Server {0x40709730} DEBUG: (ssl) ssl_callback_info 
ssl: 0xa5e0ee0 where: 8193 ret: 1
[Oct  7 09:24:57.498] Server {0x40709730} DEBUG: (ssl) advertising 
protocol http/1.1
[Oct  7 09:24:57.498] Server {0x40709730} DEBUG: (ssl) advertising 
protocol http/1.0
[Oct  7 09:24:57.498] Server {0x40709730} DEBUG: (ssl) ssl_callback_info 
ssl: 0xa5e0ee0 where: 8193 ret: 1
[Oct  7 09:24:57.498] Server {0x40709730} DEBUG: (ssl) ssl_callback_info 
ssl: 0xa5e0ee0 where: 8193 ret: 1
[Oct  7 09:24:57.527] Server {0x40709730} DEBUG: (ssl) ssl_callback_info 
ssl: 0xa5e0ee0 where: 8193 ret: 1
[Oct  7 09:24:57.527] Server {0x40709730} DEBUG: (ssl) ssl_callback_info 
ssl: 0xa5e0ee0 where: 8193 ret: 1
[Oct  7 09:24:57.527] Server {0x40709730} DEBUG: (ssl) ssl_callback_info 
ssl: 0xa5e0ee0 where: 8193 ret: 1
[Oct  7 09:24:57.528] Server {0x40709730} DEBUG: (ssl) ssl_callback_info 
ssl: 0xa5e0ee0 where: 8194 ret: -1
[Oct  7 09:24:57.528] Server {0x40709730} DEBUG: (ssl) ssl_callback_info 
ssl: 0xa5e0ee0 where: 8194 ret: -1
[Oct  7 09:24:57.528] Server {0x40709730} DEBUG: 
<SSLNetVConnection.cc:558 (sslServerHandShakeEvent)> (ssl) SSL handshake 
error: SSL_ERROR_WANT_READ (2), errno=11
[Oct  7 09:24:57.589] Server {0x40709730} DEBUG: (ssl) ssl_callback_info 
ssl: 0xa5e0ee0 where: 8193 ret: 1
[Oct  7 09:24:57.589] Server {0x40709730} DEBUG: (ssl) ssl_callback_info 
ssl: 0xa5e0ee0 where: 8193 ret: 1
[Oct  7 09:24:57.589] Server {0x40709730} DEBUG: (ssl) ssl_callback_info 
ssl: 0xa5e0ee0 where: 8193 ret: 1
[Oct  7 09:24:57.590] Server {0x40709730} DEBUG: (ssl) ssl_callback_info 
ssl: 0xa5e0ee0 where: 8193 ret: 1
[Oct  7 09:24:57.590] Server {0x40709730} DEBUG: (ssl) ssl_callback_info 
ssl: 0xa5e0ee0 where: 8193 ret: 1
[Oct  7 09:24:57.590] Server {0x40709730} DEBUG: (ssl) ssl_callback_info 
ssl: 0xa5e0ee0 where: 8193 ret: 1
[Oct  7 09:24:57.590] Server {0x40709730} DEBUG: (ssl) ssl_callback_info 
ssl: 0xa5e0ee0 where: 8193 ret: 1
[Oct  7 09:24:57.590] Server {0x40709730} DEBUG: (ssl) ssl_callback_info 
ssl: 0xa5e0ee0 where: 32 ret: 1
NOTE: Traffic Server received Sig 11: Segmentation fault
/usr/bin/traffic_server - STACK TRACE:
[0x4001e500]
/usr/lib/trafficserver/libtsutil.so.5(ink_hash_table_lookup_entry+0x12)[0x4003c0f2]
/usr/lib/trafficserver/libtsutil.so.5(ink_hash_table_lookup+0x24)[0x4003c3b4]
/usr/bin/traffic_server[0x8308185]
/usr/lib/i386-linux-gnu/i686/cmov/libssl.so.1.0.0(+0x12844)[0x40067844]
/usr/lib/i386-linux-gnu/i686/cmov/libssl.so.1.0.0(SSL_accept+0x2a)[0x4008c73a]
/usr/bin/traffic_server(_ZN17SSLNetVConnection23sslServerHandShakeEventERi+0x19)[0x8303d89]
/usr/bin/traffic_server(_ZN17SSLNetVConnection17sslStartHandShakeEiRi+0x2b)[0x830446b]
/usr/bin/traffic_server(_ZN17SSLNetVConnection11net_read_ioEP10NetHandlerP7EThread+0xb30)[0x8305270]
/usr/bin/traffic_server(_ZN10NetHandler12mainNetEventEiP5Event+0x27f)[0x830dd7f]
/usr/bin/traffic_server(_ZN7EThread13process_eventEP5Eventi+0x98)[0x8339cf8]
/usr/bin/traffic_server(_ZN7EThread7executeEv+0x419)[0x833a449]
/usr/bin/traffic_server(main+0xf40)[0x80d4e30]
/lib/i386-linux-gnu/libc.so.6(__libc_start_main+0xe6)[0x405c9e36]
/usr/bin/traffic_server[0x80da229]
[TrafficServer] using root directory '/usr'
[Oct  7 09:24:59.682] Server {0x40709730} DEBUG: (ssl) setting SNI 
callbacks with for ctx 0x8a6b8b8
[Oct  7 09:24:59.682] Server {0x40709730} DEBUG: (ssl) importing SNI 
names from /etc/trafficserver/ssl/new2014/100.pem
[Oct  7 09:24:59.683] Server {0x40709730} DEBUG: (ssl) mapping 'XXXX' to 
certificate /etc/trafficserver/ssl/new2014/100.pem
[Oct  7 09:24:59.683] Server {0x40709730} DEBUG: (ssl) indexed 'XXXX' 
with SSL_CTX 0x8a6b8b8
[Oct  7 09:24:59.683] Server {0x40709730} DEBUG: (ssl) mapping 'XXXX' to 
certificate /etc/trafficserver/ssl/new2014/100.pem
[Oct  7 09:24:59.683] Server {0x40709730} DEBUG: (ssl) indexed 'XXXX' 
with SSL_CTX 0x8a6b8b8
[Oct  7 09:24:59.683] Server {0x40709730} DEBUG: (ssl) mapping 'YYYYYY' 
to certificate /etc/trafficserver/ssl/new2014/100.pem
[Oct  7 09:24:59.683] Server {0x40709730} DEBUG: (ssl) indexed 'YYYYYY' 
with SSL_CTX 0x8a6b8b8
[Oct  7 09:24:59.683] Server {0x40709730} DEBUG: (ssl) setting SNI 
callbacks with for ctx 0x8a76b30
[Oct  7 09:24:59.684] Server {0x40709730} DEBUG: (ssl) indexed '*' with 
SSL_CTX 0x8a76b30
[Oct  7 09:24:59.684] Server {0x40709730} DEBUG: (ssl) importing SNI 
names from /etc/trafficserver/ssl





Le 03/10/2014 18:43, James Peach a écrit :
> On Oct 3, 2014, at 3:32 AM, Matthieu Bienvenüe <matthieu@exultet.net> wrote:
>
>> Any idea to solve this isssu ?
> I did a quick test of setting proxy.config.ssl.number.threads to -1, and it didn't crash
for me. Can you enable ssl diagnostics and try again?
>
> CONFIG proxy.config.diags.debug.enabled INT 1
> CONFIG proxy.config.diags.debug.tags STRING ssl
>
>> Matthieu
>>
>>
>> Le 01/10/2014 09:50, Matthieu Bienvenüe a écrit :
>>> Le 30/09/2014 17:47, Leif Hedstrom a écrit :
>>>> On Sep 30, 2014, at 9:00 AM, Matthieu Bienvenüe <matthieu@exultet.net>
wrote:
>>>>
>>>>> Is that possible to do it on config instead of recompiling ATS ?
>>>>
>>>> What version are you using? I’m not 100% certain, but I’d expect Geffon’s
additions to not have dedicated SSL threads would avoid the need for that patch as well? Brian?
If I recall, with a recent version of ATS, you’d simply set proxy.config.ssl.number.threads
to -1.
>>> When I set this settings SSL don't work and I've the following stack trace :
>>>
>>> NOTE: Traffic Server received Sig 11: Segmentation fault
>>> /usr/bin/traffic_server - STACK TRACE:
>>> [0x4001e500]
>>> /usr/lib/trafficserver/libtsutil.so.5(ink_hash_table_lookup_entry+0x12)[0x4003c0f2]
>>> /usr/lib/trafficserver/libtsutil.so.5(ink_hash_table_lookup+0x24)[0x4003c3b4]
>>> /usr/bin/traffic_server[0x8308185]
>>> /usr/lib/i386-linux-gnu/i686/cmov/libssl.so.1.0.0(+0x12844)[0x40067844]
>>> /usr/lib/i386-linux-gnu/i686/cmov/libssl.so.1.0.0(SSL_accept+0x2a)[0x4008c73a]
>>> /usr/bin/traffic_server(_ZN17SSLNetVConnection23sslServerHandShakeEventERi+0x19)[0x8303d89]
>>> /usr/bin/traffic_server(_ZN17SSLNetVConnection17sslStartHandShakeEiRi+0x2b)[0x830446b]
>>> /usr/bin/traffic_server(_ZN17SSLNetVConnection11net_read_ioEP10NetHandlerP7EThread+0xb30)[0x8305270]
>>> /usr/bin/traffic_server(_ZN10NetHandler12mainNetEventEiP5Event+0x27f)[0x830dd7f]
>>> /usr/bin/traffic_server(_ZN7EThread13process_eventEP5Eventi+0x98)[0x8339cf8]
>>> /usr/bin/traffic_server(_ZN7EThread7executeEv+0x419)[0x833a449]
>>> /usr/bin/traffic_server(main+0xf40)[0x80d4e30]
>>> /lib/i386-linux-gnu/libc.so.6(__libc_start_main+0xe6)[0x405c9e36]
>>> /usr/bin/traffic_server[0x80da229]
>>> [TrafficServer] using root directory '/usr'
>>>
>>>> In either case, why is that patch not committed? Is there a Jira for it?
>>>>
>>>> — Leif
>>>>
>>>>> Regards,
>>>>>
>>>>> Matt
>>>>> Le 30/09/2014 16:49, 英才 a écrit :
>>>>>> disable AIO or patch https://github.com/phonehold/with-aio-ssl-init
 may solve your problem
>>>>>>
>>>>>> 在 2014年9月30日,下午10:41,Matthieu Bienvenüe <matthieu@exultet.net>
写道:
>>>>>>
>>>>>>> Hello,
>>>>>>>
>>>>>>>
>>>>>>> SSL works fine with my certs, but it crashes only after a certain
amount of time/requests.
>>>>>>>
>>>>>>> Here is the stack trace from traffic.out:
>>>>>>>
>>>>>>> NOTE: Traffic Server received Sig 11: Segmentation fault
>>>>>>> /usr/bin/traffic_server - STACK TRACE:
>>>>>>> [0x4001e500]
>>>>>>> /usr/bin/traffic_server(_Z12ink_aio_readP11AIOCallbacki+0x2a)[0x830056a]
>>>>>>> /usr/bin/traffic_server(_ZN7CacheVC10handleReadEiP5Event+0x282)[0x82c4402]
>>>>>>> /usr/bin/traffic_server(_ZN5Cache9open_readEP12ContinuationP7INK_MD5P7HTTPHdrP21CacheLookupHttpConfig13CacheFragTypePci+0x5be)[0x82df68e]
>>>>>>> /usr/bin/traffic_server(_ZN14CacheProcessor9open_readEP12ContinuationP3URLbP7HTTPHdrP21CacheLookupHttpConfigl13CacheFragType+0xdc)[0x82c2b4c]
>>>>>>> /usr/bin/traffic_server(_ZN11HttpCacheSM18do_cache_open_readEv+0x63)[0x81ab6f3]
>>>>>>> /usr/bin/traffic_server(_ZN11HttpCacheSM9open_readEP3URLP7HTTPHdrP21CacheLookupHttpConfigl+0x4c)[0x81aba0c]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM24do_cache_lookup_and_readEv+0x115)[0x81bd105]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM14set_next_stateEv+0x6af)[0x81ce7bf]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM17handle_api_returnEv+0x108)[0x81cc8d8]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM17state_api_calloutEiPv+0x300)[0x81c9940]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM23do_api_callout_internalEv+0x54)[0x81c9da4]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM14set_next_stateEv+0x250)[0x81ce360]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM14set_next_stateEv+0x7eb)[0x81ce8fb]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM17handle_api_returnEv+0x108)[0x81cc8d8]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM17state_api_calloutEiPv+0x300)[0x81c9940]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM23do_api_callout_internalEv+0x54)[0x81c9da4]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM14set_next_stateEv+0x250)[0x81ce360]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM17handle_api_returnEv+0x108)[0x81cc8d8]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM17state_api_calloutEiPv+0x300)[0x81c9940]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM18state_api_callbackEiPv+0x78)[0x81cc398]
>>>>>>> /usr/bin/traffic_server(TSHttpTxnReenable+0x1f0)[0x810ef50]
>>>>>>> /usr/lib/trafficserver/modules/stats_over_http.so(+0x102e)[0x4095f02e]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM17state_api_calloutEiPv+0xd8)[0x81c9718]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM23do_api_callout_internalEv+0x54)[0x81c9da4]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM14set_next_stateEv+0x250)[0x81ce360]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM32state_read_client_request_headerEiPv+0x1e8)[0x81c5738]
>>>>>>> /usr/bin/traffic_server(_ZN6HttpSM12main_handlerEiPv+0x7e)[0x81ca93e]
>>>>>>> /usr/bin/traffic_server(_ZN18UnixNetVConnection19readSignalAndUpdateEi+0x45)[0x83166a5]
>>>>>>> /usr/bin/traffic_server(_ZN17SSLNetVConnection11net_read_ioEP10NetHandlerP7EThread+0x10b0)[0x83057f0]
>>>>>>> /usr/bin/traffic_server(_ZN10NetHandler12mainNetEventEiP5Event+0x27f)[0x830dd7f]
>>>>>>> /usr/bin/traffic_server(_ZN7EThread13process_eventEP5Eventi+0x98)[0x8339cf8]
>>>>>>> /usr/bin/traffic_server(_ZN7EThread7executeEv+0x419)[0x833a449]
>>>>>>> /usr/bin/traffic_server[0x8338ebb]
>>>>>>> /lib/i386-linux-gnu/libpthread.so.0(+0x5954)[0x4046b954]
>>>>>>> /lib/i386-linux-gnu/libc.so.6(clone+0x5e)[0x40688cbe]
>>>>>>> [E. Mgmt] log ==> [TrafficManager] using root directory '/usr'
>>>>>>> [TrafficServer] using root directory '/usr'
>>>>>>>
>>>>>>> Here is my record.config for SSL parameters:
>>>>>>>
>>>>>>> CONFIG proxy.config.http.server_ports STRING 8080 4443:ssl
>>>>>>>
>>>>>>> CONFIG proxy.config.ssl.enabled INT 1
>>>>>>> CONFIG proxy.config.ssl.server.cert.path STRING /etc/trafficserver/ssl/
>>>>>>> CONFIG proxy.config.ssl.server.private_key.path STRING /etc/trafficserver/ssl/
>>>>>>>
>>>>>>> And for ssl_multicert.config:
>>>>>>>
>>>>>>> ssl_cert_name=new2014/100.pem ssl_key_name=new2014/100.key
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> Le 30/09/2014 15:54, Susan Hinrichs a écrit :
>>>>>>>> Matt,
>>>>>>>>
>>>>>>>> Is there a basic stack trace in traffic.out?   What is your
SSL configuration?  Do you have certs set up in ssl_multicert.config? Or are you doing a blind
tunnel on the SSL traffic?
>>>>>>>>
>>>>>>>> Susan
>>>>>>>>
>>>>>>>> On 9/30/2014 2:14 AM, Matthieu Bienvenüe wrote:
>>>>>>>>> Hello !
>>>>>>>>>
>>>>>>>>> I'm configuring ATS as a reverse proxy and I need SSL
support.
>>>>>>>>>
>>>>>>>>> ATS runs on OpenVZ on Debian. It's the version 5.0.1
installed from backport packages.
>>>>>>>>>
>>>>>>>>> ATS works fine, SSL too. But after a while SSL makes
ATS crash.
>>>>>>>>>
>>>>>>>>> In manager.log I found that there is a segmentation fault:
>>>>>>>>>
>>>>>>>>> [Sep 29 16:08:33.020] Manager {0xb6fb76d0} ERROR: [LocalManager::pollMgmtProcessServer]
Server Process terminated due to Sig 11: Segmentation fault
>>>>>>>>> [Sep 29 16:08:33.021] Manager {0xb6fb76d0} ERROR: [Alarms::signalAlarm]
Server Process was reset
>>>>>>>>> [Sep 29 16:08:34.041] Manager {0xb6fb76d0} NOTE: [LocalManager::startProxy]
Launching ts process
>>>>>>>>> [Sep 29 16:08:34.049] Manager {0xb6fb76d0} NOTE: [LocalManager::pollMgmtProcessServer]
New process connecting fd '16'
>>>>>>>>> [Sep 29 16:08:34.049] Manager {0xb6fb76d0} NOTE: [Alarms::signalAlarm]
Server Process born
>>>>>>>>>
>>>>>>>>> Here is a dump of the syslog when crashing:
>>>>>>>>>
>>>>>>>>> Sep 30 07:05:09 ats traffic_manager[5471]: {0xb704d6d0}
FATAL: [LocalManager::pollMgmtProcessServer] Error in read (errno: 104)
>>>>>>>>> Sep 30 07:05:09 ats traffic_manager[5471]: {0xb704d6d0}
ERROR: [LocalManager::sendMgmtMsgToProcesses] Error writing message
>>>>>>>>> Sep 30 07:05:09 ats traffic_manager[5471]: {0xb704d6d0}
ERROR: (last system error 32: Broken pipe)
>>>>>>>>> Sep 30 07:05:09 ats traffic_cop[23694]: cop received
child status signal [5471 256]
>>>>>>>>> Sep 30 07:05:09 ats traffic_cop[23694]: traffic_manager
not running, making sure traffic_server is dead
>>>>>>>>> Sep 30 07:05:09 ats traffic_cop[23694]: spawning traffic_manager
>>>>>>>>> Sep 30 07:05:09 ats traffic_manager[6938]: NOTE: ---
Manager Starting ---
>>>>>>>>> Sep 30 07:05:09 ats traffic_manager[6938]: NOTE: Manager
Version: Apache Traffic Server - traffic_manager - 5.0.1 - (build # 7259 on Aug 25 2014 at
09:26:11)
>>>>>>>>> Sep 30 07:05:09 ats traffic_manager[6938]: NOTE: Unable
to set RLIMIT_NOFILE(7):cur(1475961),max(1475961)
>>>>>>>>> Sep 30 07:05:09 ats traffic_manager[6938]: NOTE: RLIMIT_NOFILE(7):cur(30000),max(30000)
>>>>>>>>> Sep 30 07:05:09 ats traffic_manager[6938]: ERROR ==>
[runAsUser] Error: Failed to restore capabilities after switch to user trafficserver.
>>>>>>>>> Sep 30 07:05:11 ats traffic_server[6946]: NOTE: --- traffic_server
Starting ---
>>>>>>>>> Sep 30 07:05:11 ats traffic_server[6946]: NOTE: traffic_server
Version: Apache Traffic Server - traffic_server - 5.0.1 - (build # 7259 on Aug 25 2014 at
09:27:18)
>>>>>>>>> Sep 30 07:05:11 ats traffic_server[6946]: NOTE: Unable
to set RLIMIT_NOFILE(7):cur(-611778560),max(-611778560)
>>>>>>>>> Sep 30 07:05:13 ats traffic_manager[6938]: {0xb708b6d0}
ERROR: [LocalManager::pollMgmtProcessServer] Server Process terminated due to Sig 11: Segmentation
fault
>>>>>>>>> Sep 30 07:05:13 ats traffic_manager[6938]: {0xb708b6d0}
ERROR: [Alarms::signalAlarm] Server Process was reset
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Any idea where to look for to solve this problem ?
>>>>>>>>>
>>>>>>>>> Thanks a lot !
>>>>>>>>>
>>>>>>>>> Matt
>>>>>>>


Mime
View raw message