Skip to content

SSL connection error #469

@AntAreS24

Description

@AntAreS24

Support guidelines

I've found a bug and checked that ...

  • ... the documentation does not mention anything about my problem
  • ... there are no open or closed issues that are related to my problem

Description

I've recently rebuilt me entire torrent library (backing up my *.torrent, starting docker compose from scratch and adding all the torrent back together after). I was using an old version of the docker image (can't remember which one) and I've upgraded to the latest (5.2.10-0.15.5-r0), but since then, all torrent using a private tracker with SSL are failing with Tracker: [SSL connect error].

I've customised the .rtlocal.rc to allow for external watch mount point to NAS:

...
method.insert = cfg.logs, private|const|string, (cat,(cfg.basedir),"log/")
method.insert = cfg.session, private|const|string, (cat,(cfg.basedir),".session/")
# 10/08/2025 - Changed mount path
method.insert = cfg.watch, private|const|string, (cat, "/watch/")
method.insert = cfg.rundir, private|const|string, (cat,"/var/run/rtorrent/")
...

changed the default .rtorrent.rc to change the behaviour for the watch folder:

...
# Watch a directory for new torrents, and stop those that have been deleted
# 10/08/2025 - directory.watch.added = (cat,(cfg.watch)), load.start
# 10/08/2025
schedule2 = watch_directory, 1, 1, (cat,"load.start=",(cfg.watch),"*.torrent")
# end
schedule2 = untied_directory, 5, 5, (cat,"stop_untied=",(cfg.watch),"*.torrent")
...

I've built the docker image locally:
docker buildx bake
and customised the compose.yml to use that local image and allow for CIFS mount points to my NAS and match the watch folder mount:

name: rtorrent-rutorrent

services:
  # geoip-updater:
  #   image: crazymax/geoip-updater:latest
  #   container_name: geoip-updater
  #   networks:
  #     - rtorrent-rutorrent
  #   volumes:
  #     - "./data/geoip:/data"
  #   env_file:
  #     - "./geoip-updater.env"
  #   restart: always

  rtorrent-rutorrent:
    image: rtorrent-rutorrent:local
    container_name: rtorrent-rutorrent
    networks:
      - rtorrent-rutorrent
    expose:
      # - "${RT_DHT_PORT}/udp"
      - "${XMLRPC_PORT}"
      - "${RUTORRENT_PORT}"
      - "${WEBDAV_PORT}"
      - "${RT_INC_PORT}"
    ports:
      # - target: ${RT_DHT_PORT}
        # published: ${RT_DHT_PORT}
        # protocol: udp
      - target: ${RUTORRENT_PORT}
        published: ${RUTORRENT_PORT}
        protocol: tcp
      - target: ${WEBDAV_PORT}
        published: ${WEBDAV_PORT}
        protocol: tcp
      - target: ${RT_INC_PORT}
        published: ${RT_INC_PORT}
        protocol: tcp
    env_file:
      - "rtorrent-rutorrent.env"
      - ".env"
    volumes:
      - "./data:/data"
      - "/media/nas/watch:/watch"
      - "/media/nas/download:/downloads"
      - "./passwd:/passwd"
      - "/media/Videos:/media/Videos"
      - "/media/Music:/media/Music"
      - "/media/ISO:/media/ISO"
    ulimits:
      nproc: 65535
      nofile:
        soft: 32000
        hard: 40000
    restart: always

  rtorrent-logs:
    image: bash
    container_name: rtorrent-rutorrent-logs
    command: bash -c 'tail -f /log/*.log'
    network_mode: none
    depends_on:
      - rtorrent-rutorrent
    volumes:
      - "./data/rtorrent/log:/log"
    restart: always

networks:
  rtorrent-rutorrent:
    name: rtorrent-rutorrent


volumes:
  Videos:
    driver_opts:
      type: cifs
      o: "username=<user>,password=<password>,vers=3.0,_netdev,x-systemd.automount,file_mode=0777,dir_mode=0777,"
      device: "//<localIP>/Videos"
  Music:
    driver_opts:
      type: cifs
      o: "username=<user>,password=<password>,vers=3.0,_netdev,x-systemd.automount,file_mode=0777,dir_mode=0777,"
      device: "//<localIP>/Music"
  ISO:
    driver_opts:
      type: cifs
      o: "username=<user>,password=<password>,vers=3.0,_netdev,x-systemd.automount,file_mode=0777,dir_mode=0777,"
      device: "//<localIP>/ISO"

Expected behaviour

Connection to both HTTP and HTTPS tracker should work.

Actual behaviour

Getting an Tracker: [SSL connect error] error.

Steps to reproduce

  1. Start fresh instance
  2. Add a torrent from private tracker
  3. SSL error

Docker info

Client: Docker Engine - Community
 Version:    28.1.1
 Context:    default
 Debug Mode: false
 Plugins:
  buildx: Docker Buildx (Docker Inc.)
    Version:  v0.23.0
    Path:     /usr/libexec/docker/cli-plugins/docker-buildx
  compose: Docker Compose (Docker Inc.)
    Version:  v2.35.1
    Path:     /usr/libexec/docker/cli-plugins/docker-compose

Server:
 Containers: 3
  Running: 3
  Paused: 0
  Stopped: 0
 Images: 5
 Server Version: 28.1.1
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Using metacopy: false
  Native Overlay Diff: true
  userxattr: false
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Cgroup Version: 1
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 05044ec0a9a75232cad458027ca83437aae3f4da
 runc version: v1.2.5-0-g59923ef
 init version: de40ad0
 Security Options:
  apparmor
  seccomp
   Profile: builtin
 Kernel Version: 5.15.0-151-generic
 Operating System: Ubuntu 22.04.5 LTS
 OSType: linux
 Architecture: x86_64
 CPUs: 4
 Total Memory: 15.37GiB
 Name: homeserver
 ID: e0aec5ae-b7a3-4090-9caa-33e374601e77
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Experimental: false
 Insecure Registries:
  ::1/128
  127.0.0.0/8
 Live Restore Enabled: false

Docker Compose config

name: rtorrent-rutorrent
services:
  rtorrent-logs:
    command:
      - bash
      - -c
      - tail -f /log/*.log
    container_name: rtorrent-rutorrent-logs
    depends_on:
      rtorrent-rutorrent:
        condition: service_started
        required: true
    image: bash
    network_mode: none
    restart: always
    volumes:
      - type: bind
        source: /home/user/docker-rtorrent-rutorrent/data/rtorrent/log
        target: /log
        bind:
          create_host_path: true
  rtorrent-rutorrent:
    container_name: rtorrent-rutorrent
    environment:
      AUTH_DELAY: 0s
      LOG_ACCESS: "true"
      LOG_IP_VAR: remote_addr
      MAX_FILE_UPLOADS: "50"
      MEMORY_LIMIT: 1024M
      OPCACHE_MEM_SIZE: "128"
      PGID: "1000"
      PUID: "1000"
      REAL_IP_FROM: 0.0.0.0/32
      REAL_IP_HEADER: X-Forwarded-For
      RT_DHT_PORT: "6881"
      RT_INC_PORT: "50000"
      RT_LOG_EXECUTE: "false"
      RT_LOG_LEVEL: info
      RT_LOG_XMLRPC: "false"
      RT_SESSION_SAVE_SECONDS: "2400"
      RU_DO_DIAGNOSTIC: "true"
      RU_FORBID_USER_SETTINGS: "false"
      RU_HTTP_TIME_OUT: "30"
      RU_HTTP_USE_GZIP: "true"
      RU_HTTP_USER_AGENT: Mozilla/5.0 (Windows NT 6.0; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0
      RU_LOCALE: UTF8
      RU_LOG_FILE: /data/rutorrent/rutorrent.log
      RU_LOG_RPC_CALLS: "false"
      RU_LOG_RPC_FAULTS: "true"
      RU_OVERWRITE_UPLOADED_TORRENTS: "false"
      RU_PHP_GZIP_LEVEL: "2"
      RU_PHP_USE_GZIP: "false"
      RU_REMOVE_CORE_PLUGINS: ""
      RU_RPC_TIME_OUT: "5"
      RU_SAVE_UPLOADED_TORRENTS: "true"
      RU_SCHEDULE_RAND: "10"
      RUTORRENT_AUTHBASIC_STRING: ruTorrent restricted access
      RUTORRENT_PORT: "8080"
      TZ: <Country/City>
      UPLOAD_MAX_SIZE: 16M
      WAN_IP_CMD: "false"
      WEBDAV_AUTHBASIC_STRING: WebDAV restricted access
      WEBDAV_PORT: "9000"
      XMLRPC_AUTHBASIC_STRING: rTorrent XMLRPC restricted access
      XMLRPC_PORT: "8000"
    expose:
      - "8000"
      - "8080"
      - "9000"
      - "50000"
    image: rtorrent-rutorrent:local
    networks:
      rtorrent-rutorrent: null
    ports:
      - mode: ingress
        target: 8080
        published: "8080"
        protocol: tcp
      - mode: ingress
        target: 9000
        published: "9000"
        protocol: tcp
      - mode: ingress
        target: 50000
        published: "50000"
        protocol: tcp
    restart: always
    ulimits:
      nofile:
        soft: 32000
        hard: 40000
      nproc: 65535
    volumes:
      - type: bind
        source: /home/user/docker-rtorrent-rutorrent/data
        target: /data
        bind:
          create_host_path: true
      - type: bind
        source: /media/nas/watch
        target: /watch
        bind:
          create_host_path: true
      - type: bind
        source: /media/nas/download
        target: /downloads
        bind:
          create_host_path: true
      - type: bind
        source: /home/user/docker-rtorrent-rutorrent/passwd
        target: /passwd
        bind:
          create_host_path: true
      - type: bind
        source: /media/Videos
        target: /media/Videos
        bind:
          create_host_path: true
      - type: bind
        source: /media/Music
        target: /media/Music
        bind:
          create_host_path: true
      - type: bind
        source: /media/ISO
        target: /media/ISO
        bind:
          create_host_path: true
networks:
  rtorrent-rutorrent:
    name: rtorrent-rutorrent

Logs

1755212577 D input history file read (path:/data/rtorrent/.session/rtorrent.input_history)
1755212577 N rtorrent scgi : starting thread event loop
1755212577 N rtorrent main : starting thread event loop
1755212577 I 1076F8042B2CA1983D3624A891FCF0946804FEBC->resource_manager: set priority: 0
1755212577 I resource_manager: adjusting upload unchoked slots; current:0 adjusted:0
1755212577 I resource_manager: adjusting upload unchoked slots; current:0 adjusted:0
1755212577 I resource_manager: adjusting download unchoked slots; current:0 adjusted:0
1755212577 I resource_manager: adjusting download unchoked slots; current:0 adjusted:0
1755212577 I 1076F8042B2CA1983D3624A891FCF0946804FEBC->download_list: Closing download directly.
1755212577 I 1076F8042B2CA1983D3624A891FCF0946804FEBC->download_list: Inserting download.
1755212577 I 1076F8042B2CA1983D3624A891FCF0946804FEBC->download_list: Resuming download: flags:0.
... (7000 lines like this. No error)
1755212577 I 0CBEA64E3A0093A695FD076B05CB8AE87770420B->download_list: Closing download directly.
1755212577 I 0CBEA64E3A0093A695FD076B05CB8AE87770420B->download_list: Inserting download.
1755212577 I 1076F8042B2CA1983D3624A891FCF0946804FEBC->download_list: Opening download.
1755212577 I 1076F8042B2CA1983D3624A891FCF0946804FEBC->download: Opening torrent: flags:0.
1755212577 I 1076F8042B2CA1983D3624A891FCF0946804FEBC->file_list: Opening.
1755212577 I 1076F8042B2CA1983D3624A891FCF0946804FEBC->chunk_list: Resizing: from:0 to:1120.
1755212577 I 1076F8042B2CA1983D3624A891FCF0946804FEBC->download: Checking hash: allocated:1 try_quick:1.
1755212577 I 1076F8042B2CA1983D3624A891FCF0946804FEBC->hash_torrent: Start: position:0 size:1120 try_quick:1.
1755212577 I 1076F8042B2CA1983D3624A891FCF0946804FEBC->hash_torrent: Completed (normal): position:1120 try_quick:1.
1755212577 I E9AD5FDFF85AB009ACD83274198ED834505FA0AA->download_list: Opening download.
1755212577 I E9AD5FDFF85AB009ACD83274198ED834505FA0AA->download: Opening torrent: flags:0.
1755212577 I E9AD5FDFF85AB009ACD83274198ED834505FA0AA->file_list: Opening.
1755212577 I E9AD5FDFF85AB009ACD83274198ED834505FA0AA->chunk_list: Resizing: from:0 to:99.
1755212577 I E9AD5FDFF85AB009ACD83274198ED834505FA0AA->download: Checking hash: allocated:1 try_quick:1.
1755212577 I E9AD5FDFF85AB009ACD83274198ED834505FA0AA->hash_torrent: Start: position:0 size:99 try_quick:1.
1755212577 I E9AD5FDFF85AB009ACD83274198ED834505FA0AA->hash_torrent: Completed (normal): position:99 try_quick:1.
1755212577 I A10E585497EA0BCF7131C7155F0BA7B77D588BA0->download_list: Opening download.
1755212577 I A10E585497EA0BCF7131C7155F0BA7B77D588BA0->download: Opening torrent: flags:0.
1755212577 I A10E585497EA0BCF7131C7155F0BA7B77D588BA0->file_list: Opening.
1755212577 I A10E585497EA0BCF7131C7155F0BA7B77D588BA0->chunk_list: Resizing: from:0 to:1268.
1755212577 I A10E585497EA0BCF7131C7155F0BA7B77D588BA0->download: Checking hash: allocated:1 try_quick:1.
1755212577 I A10E585497EA0BCF7131C7155F0BA7B77D588BA0->hash_torrent: Start: position:0 size:1268 try_quick:1.
1755212577 I A10E585497EA0BCF7131C7155F0BA7B77D588BA0->hash_torrent: Completed (normal): position:1268 try_quick:1.
1755212577 I 14A94BBCB5D4F6E2AE58A5E242DAFD7335000393->download_list: Opening download.
1755212577 I 14A94BBCB5D4F6E2AE58A5E242DAFD7335000393->download: Opening torrent: flags:0.
1755212577 I 14A94BBCB5D4F6E2AE58A5E242DAFD7335000393->file_list: Opening.
1755212577 I 14A94BBCB5D4F6E2AE58A5E242DAFD7335000393->chunk_list: Resizing: from:0 to:626.
1755212577 I 14A94BBCB5D4F6E2AE58A5E242DAFD7335000393->download: Checking hash: allocated:1 try_quick:1.
1755212577 I 14A94BBCB5D4F6E2AE58A5E242DAFD7335000393->hash_torrent: Start: position:0 size:626 try_quick:1.
1755212577 I 14A94BBCB5D4F6E2AE58A5E242DAFD7335000393->hash_torrent: Completed (normal): position:626 try_quick:1.
1755212577 I 35C1F9001AF444C7C978E0151C6BA477AF421D19->download_list: Opening download.
... (14k lines like this)
1755212594 I 500DDBF83D7F00003B000000000000003B000000->chunk_list: Clearing.
1755212594 I 3B00000000000000673A00000000000000000000->chunk_list: Clearing.
1755212594 I A87DC5F83D7F0000000000000000000008000000->chunk_list: Clearing.
1755212594 I 080000003D7F0000D10300000000000000000000->chunk_list: Clearing.
1755212594 I 00000000000000006B2100000000000000000000->chunk_list: Clearing.
1755212594 I 0000000000000000DA1500000000000000000000->chunk_list: Clearing.
1755212594 I 0000000000000000960500000000000000000000->chunk_list: Clearing.
1755212594 I 0000000000000000677000000000000000000000->chunk_list: Clearing.
... (1000 lines like this)
1755212625 I resource_manager: balancing upload unchoked slots; current_unchoked:0 change:0 max_unchoked:838870
1755212625 I resource_manager: balancing download unchoked slots; current_unchoked:0 change:0 max_unchoked:838870
1755212655 I resource_manager: balancing upload unchoked slots; current_unchoked:0 change:0 max_unchoked:838870
1755212655 I resource_manager: balancing download unchoked slots; current_unchoked:0 change:0 max_unchoked:838870
1755212686 I resource_manager: balancing upload unchoked slots; current_unchoked:0 change:0 max_unchoked:838870
1755212686 I resource_manager: balancing download unchoked slots; current_unchoked:0 change:0 max_unchoked:838870
1755212717 I resource_manager: balancing upload unchoked slots; current_unchoked:0 change:0 max_unchoked:838870
1755212717 I resource_manager: balancing download unchoked slots; current_unchoked:0 change:0 max_unchoked:838870
1755212748 I resource_manager: balancing upload unchoked slots; current_unchoked:0 change:0 max_unchoked:838870
1755212748 I resource_manager: balancing download unchoked slots; current_unchoked:0 change:0 max_unchoked:838870
1755212770 I resource_manager: adjusting upload unchoked slots; current:0 adjusted:1
1755212778 I resource_manager: adjusting upload unchoked slots; current:1 adjusted:-1
1755212779 I resource_manager: balancing upload unchoked slots; current_unchoked:0 change:0 max_unchoked:838870
1755212779 I resource_manager: balancing download unchoked slots; current_unchoked:0 change:0 max_unchoked:838870
1755212810 I resource_manager: balancing upload unchoked slots; current_unchoked:0 change:0 max_unchoked:838870
1755212810 I resource_manager: balancing download unchoked slots; current_unchoked:0 change:0 max_unchoked:838870
1755212813 I resource_manager: adjusting upload unchoked slots; current:0 adjusted:1
1755212841 I resource_manager: balancing upload unchoked slots; current_unchoked:1 change:0 max_unchoked:838870
1755212841 I resource_manager: balancing download unchoked slots; current_unchoked:0 change:0 max_unchoked:838870
1755212872 I resource_manager: balancing upload unchoked slots; current_unchoked:1 change:0 max_unchoked:838870
1755212872 I resource_manager: balancing download unchoked slots; current_unchoked:0 change:0 max_unchoked:838870

Additional info

No response

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions