# # spec file for package gsocket # # Copyright (c) 2021, Martin Hauke # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # # Used it to build on copr (r3pek) Name: gsocket Version: 1.4.33 Release: 1%{?subversion}%{?dist} Summary: Global Socket - Connect like there is no firewall License: BSD-2-Clause Group: Productivity/Networking/Other URL: https://www.gsocket.io/ Source: https://github.com/hackerschoice/gsocket/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz BuildRequires: autoconf BuildRequires: automake BuildRequires: openssl-devel BuildRequires: gcc ## tests #BuildRequires: socat #BuildRequires: bc #BuildRequires: rsync #BuildRequires: net-tools-deprecated #BuildRequires: netcat ## /tests %description Global Socket allows two workstations on different private networks to communicate with each other. Through firewalls and through NAT - like there is no firewall. Features: * Uses the Global Socket Relay Network to connect TCP pipes * End-2-End encryption (using OpenSSL's SRP / RFC 5054) * AES-256 & key exchange using 4096-bit Prime * No PKI required. * Perfect Forward Secrecy * TOR support (optional) Abandon the thought of IP Addresses and Port Numbers. Instead start thinking that two programs should be able to communicate with each other as long as they know the same secret (rather than each other's IP Address and Port Number). The Global Socket library facilitates this: It locally derives temporary session keys and IDs and connects two programs through the Global Socket Relay Network (GSRN) regardless and independent of the local IP Address or geographical location. Once connected the library then negotiates a secure TLS connection(End-2-End). The secret never leaves your workstation. The GSRN sees only the encrypted traffic. The GSRN is a free cloud service and is free to use by anyone. The Global Socket Toolkit comes with a set of tools: * gsocket - Makes an existing program (behind firewall or NAT) accessible from anywhere in the world. It does so by analyzing the program and replacing the IP-Layer with its own Gsocket-Layer. A client connection to a hostname ending in '*.gsocket' then gets automatically redirected (via the GSRN) to this program. * gs-netcat - Netcat on steroids. Turn gs-netcat into an AES-256 encrypted reverse backdoor via TOR (optional) with a true PTY/interactive command shell (gs-netcat -s MySecret -i), integrated file-transfer, spawn a Socks4/4a/5 proxy or forward TCP connections or give somebody temporary shell access. * gs-sftp - sftp server & client between two firewalled workstations (gs-sftp -s MySecret) * gs-mount - Access and mount a remote file system (gs-mount -s MySecret ~/mnt/warez) * blitz - Copy data from workstation to workstation (blitz -s MySecret /usr/share/*) %prep %setup -q chmod -x LICENSE README.md sed -i 's|/usr/bin/env bash|/usr/bin/bash|g' tools/{blitz,gs_funcs,gs-mount,gs-sftp,gsocket} %build autoreconf -fiv %configure #%%configure --enable-tests %make_build %install %make_install #%%check #cd tests #./run_all_tests.sh %files %license LICENSE %doc ChangeLog README.md %config(noreplace) %{_sysconfdir}/gsocket.conf %{_bindir}/blitz %{_bindir}/gs-mount %{_bindir}/gs-netcat %{_bindir}/gs-sftp %{_bindir}/gsocket %{_libdir}/gsocket_dso.so %{_libdir}/gsocket_dso.so.0 %{_libdir}/gsocket_uchroot_dso.so %{_libdir}/gsocket_uchroot_dso.so.0 %dir %{_datadir}/gsocket %{_datadir}/gsocket/gs_funcs %{_mandir}/man1/blitz.1* %{_mandir}/man1/gs-mount.1* %{_mandir}/man1/gs-netcat.1* %{_mandir}/man1/gs-sftp.1* %{_mandir}/man1/gsocket.1* %changelog * Thu Mar 3 09:00:00 UTC 2022 - Carlos Mogas da Silva Import into COPR and version bump * Thu Jul 1 15:44:08 UTC 2021 - Martin Hauke - Update to version 1.4.32 * Protocol 1.3 - BREAKS BACKWARD COMPATIBILITY * New Key Deriviation Method and fixed gs secret length * -v, -vv and -vvv for verbosity * Auto-Reconnect for -l (server) when DNS fails and keep re-trying until success. * Downgraded automake requirements to 2.69 * unique exit() codes * CHANGELOG * Thu May 13 16:44:39 UTC 2021 - Martin Hauke - Update to version 1.4.30 * fixed a rare occasion where gs-netcat might consume 100% cpu load. * Sun Apr 25 18:44:32 UTC 2021 - Martin Hauke - Initial package, version 1.4.29