diff --git a/gsocket/gsocket.spec b/gsocket/gsocket.spec new file mode 100644 index 0000000..1646d4b --- /dev/null +++ b/gsocket/gsocket.spec @@ -0,0 +1,149 @@ +# +# 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