diff --git a/graphs/OPSEC.drawio b/graphs/OPSEC.drawio new file mode 100644 index 0000000..e57f6ea --- /dev/null +++ b/graphs/OPSEC.drawio @@ -0,0 +1,724 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/graphs/PRODUCTIVITY.drawio b/graphs/PRODUCTIVITY.drawio new file mode 100644 index 0000000..58736ee --- /dev/null +++ b/graphs/PRODUCTIVITY.drawio @@ -0,0 +1,1542 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/graphs/pyramid of internet use.drawio b/graphs/pyramid of internet use.drawio new file mode 100644 index 0000000..4526aad --- /dev/null +++ b/graphs/pyramid of internet use.drawio @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/graphs/qualitystandard.drawio b/graphs/qualitystandard.drawio new file mode 100644 index 0000000..0aa2f05 --- /dev/null +++ b/graphs/qualitystandard.drawio @@ -0,0 +1,189 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/opsec/hypervisorsetup/0.png b/opsec/hypervisorsetup/0.png index c4e135b..7ef9149 100644 Binary files a/opsec/hypervisorsetup/0.png and b/opsec/hypervisorsetup/0.png differ diff --git a/opsec/hypervisorsetup/1.png b/opsec/hypervisorsetup/1.png index 126bc8e..39504da 100644 Binary files a/opsec/hypervisorsetup/1.png and b/opsec/hypervisorsetup/1.png differ diff --git a/opsec/hypervisorsetup/10.png b/opsec/hypervisorsetup/10.png index 7181fa8..466365e 100644 Binary files a/opsec/hypervisorsetup/10.png and b/opsec/hypervisorsetup/10.png differ diff --git a/opsec/hypervisorsetup/10_dev_list_over_onion.png b/opsec/hypervisorsetup/10_dev_list_over_onion.png new file mode 100644 index 0000000..e97a685 Binary files /dev/null and b/opsec/hypervisorsetup/10_dev_list_over_onion.png differ diff --git a/opsec/hypervisorsetup/11.png b/opsec/hypervisorsetup/11.png index 650378d..e008eac 100644 Binary files a/opsec/hypervisorsetup/11.png and b/opsec/hypervisorsetup/11.png differ diff --git a/opsec/hypervisorsetup/12.png b/opsec/hypervisorsetup/12.png index 0018773..aee2a5c 100644 Binary files a/opsec/hypervisorsetup/12.png and b/opsec/hypervisorsetup/12.png differ diff --git a/opsec/hypervisorsetup/13.png b/opsec/hypervisorsetup/13.png index 65737a5..b95d576 100644 Binary files a/opsec/hypervisorsetup/13.png and b/opsec/hypervisorsetup/13.png differ diff --git a/opsec/hypervisorsetup/2.png b/opsec/hypervisorsetup/2.png index 5cba1c7..9bdcc09 100644 Binary files a/opsec/hypervisorsetup/2.png and b/opsec/hypervisorsetup/2.png differ diff --git a/opsec/hypervisorsetup/21.png b/opsec/hypervisorsetup/21.png index bcb6fa2..e7763b2 100644 Binary files a/opsec/hypervisorsetup/21.png and b/opsec/hypervisorsetup/21.png differ diff --git a/opsec/hypervisorsetup/22.png b/opsec/hypervisorsetup/22.png index d26cc5c..56f1726 100644 Binary files a/opsec/hypervisorsetup/22.png and b/opsec/hypervisorsetup/22.png differ diff --git a/opsec/hypervisorsetup/23.png b/opsec/hypervisorsetup/23.png index b460c44..da40ce3 100644 Binary files a/opsec/hypervisorsetup/23.png and b/opsec/hypervisorsetup/23.png differ diff --git a/opsec/hypervisorsetup/24.png b/opsec/hypervisorsetup/24.png index dfade64..f9e64f5 100644 Binary files a/opsec/hypervisorsetup/24.png and b/opsec/hypervisorsetup/24.png differ diff --git a/opsec/hypervisorsetup/25.png b/opsec/hypervisorsetup/25.png index b74a9ba..9bb57ea 100644 Binary files a/opsec/hypervisorsetup/25.png and b/opsec/hypervisorsetup/25.png differ diff --git a/opsec/hypervisorsetup/26.png b/opsec/hypervisorsetup/26.png index 9c8fb78..5fd868a 100644 Binary files a/opsec/hypervisorsetup/26.png and b/opsec/hypervisorsetup/26.png differ diff --git a/opsec/hypervisorsetup/27.png b/opsec/hypervisorsetup/27.png index 1819a47..f0a8b4e 100644 Binary files a/opsec/hypervisorsetup/27.png and b/opsec/hypervisorsetup/27.png differ diff --git a/opsec/hypervisorsetup/28.png b/opsec/hypervisorsetup/28.png index cd0758f..5e26dd6 100644 Binary files a/opsec/hypervisorsetup/28.png and b/opsec/hypervisorsetup/28.png differ diff --git a/opsec/hypervisorsetup/29.png b/opsec/hypervisorsetup/29.png index 9892e40..a4c9162 100644 Binary files a/opsec/hypervisorsetup/29.png and b/opsec/hypervisorsetup/29.png differ diff --git a/opsec/hypervisorsetup/3.png b/opsec/hypervisorsetup/3.png index 076c18c..f1c15b4 100644 Binary files a/opsec/hypervisorsetup/3.png and b/opsec/hypervisorsetup/3.png differ diff --git a/opsec/hypervisorsetup/30.png b/opsec/hypervisorsetup/30.png index d998389..a6d565b 100644 Binary files a/opsec/hypervisorsetup/30.png and b/opsec/hypervisorsetup/30.png differ diff --git a/opsec/hypervisorsetup/31.png b/opsec/hypervisorsetup/31.png index a84adaf..06126be 100644 Binary files a/opsec/hypervisorsetup/31.png and b/opsec/hypervisorsetup/31.png differ diff --git a/opsec/hypervisorsetup/32.png b/opsec/hypervisorsetup/32.png index 84d3ebb..8e978f8 100644 Binary files a/opsec/hypervisorsetup/32.png and b/opsec/hypervisorsetup/32.png differ diff --git a/opsec/hypervisorsetup/33.png b/opsec/hypervisorsetup/33.png index 869c0e0..1ee1201 100644 Binary files a/opsec/hypervisorsetup/33.png and b/opsec/hypervisorsetup/33.png differ diff --git a/opsec/hypervisorsetup/34.png b/opsec/hypervisorsetup/34.png index 72e41af..457b207 100644 Binary files a/opsec/hypervisorsetup/34.png and b/opsec/hypervisorsetup/34.png differ diff --git a/opsec/hypervisorsetup/35.png b/opsec/hypervisorsetup/35.png index 4571c30..9008428 100644 Binary files a/opsec/hypervisorsetup/35.png and b/opsec/hypervisorsetup/35.png differ diff --git a/opsec/hypervisorsetup/36.png b/opsec/hypervisorsetup/36.png index b8f71ec..0c37980 100644 Binary files a/opsec/hypervisorsetup/36.png and b/opsec/hypervisorsetup/36.png differ diff --git a/opsec/hypervisorsetup/37.png b/opsec/hypervisorsetup/37.png index 1349a85..017abb8 100644 Binary files a/opsec/hypervisorsetup/37.png and b/opsec/hypervisorsetup/37.png differ diff --git a/opsec/hypervisorsetup/38.png b/opsec/hypervisorsetup/38.png index d305ba4..07ecf21 100644 Binary files a/opsec/hypervisorsetup/38.png and b/opsec/hypervisorsetup/38.png differ diff --git a/opsec/hypervisorsetup/39.png b/opsec/hypervisorsetup/39.png index 9bfca86..5c315d2 100644 Binary files a/opsec/hypervisorsetup/39.png and b/opsec/hypervisorsetup/39.png differ diff --git a/opsec/hypervisorsetup/4.png b/opsec/hypervisorsetup/4.png index b9ee7f1..e510d92 100644 Binary files a/opsec/hypervisorsetup/4.png and b/opsec/hypervisorsetup/4.png differ diff --git a/opsec/hypervisorsetup/5.png b/opsec/hypervisorsetup/5.png index b44e392..c03cd93 100644 Binary files a/opsec/hypervisorsetup/5.png and b/opsec/hypervisorsetup/5.png differ diff --git a/opsec/hypervisorsetup/50.png b/opsec/hypervisorsetup/50.png index d8ddde7..7a9dd1e 100644 Binary files a/opsec/hypervisorsetup/50.png and b/opsec/hypervisorsetup/50.png differ diff --git a/opsec/hypervisorsetup/51.png b/opsec/hypervisorsetup/51.png index 57c46d4..9226f91 100644 Binary files a/opsec/hypervisorsetup/51.png and b/opsec/hypervisorsetup/51.png differ diff --git a/opsec/hypervisorsetup/6.png b/opsec/hypervisorsetup/6.png index bada8d1..7d421fa 100644 Binary files a/opsec/hypervisorsetup/6.png and b/opsec/hypervisorsetup/6.png differ diff --git a/opsec/hypervisorsetup/7.png b/opsec/hypervisorsetup/7.png index 926d7c9..8c1b880 100644 Binary files a/opsec/hypervisorsetup/7.png and b/opsec/hypervisorsetup/7.png differ diff --git a/opsec/hypervisorsetup/8.png b/opsec/hypervisorsetup/8.png index 42b87db..2c268f0 100644 Binary files a/opsec/hypervisorsetup/8.png and b/opsec/hypervisorsetup/8.png differ diff --git a/opsec/hypervisorsetup/9.png b/opsec/hypervisorsetup/9.png index 550754f..0ba0b51 100644 Binary files a/opsec/hypervisorsetup/9.png and b/opsec/hypervisorsetup/9.png differ diff --git a/opsec/hypervisorsetup/999.png b/opsec/hypervisorsetup/999.png index 908fb8a..7d2aaba 100644 Binary files a/opsec/hypervisorsetup/999.png and b/opsec/hypervisorsetup/999.png differ diff --git a/opsec/hypervisorsetup/index.html b/opsec/hypervisorsetup/index.html index bb566a6..5be26ec 100644 --- a/opsec/hypervisorsetup/index.html +++ b/opsec/hypervisorsetup/index.html @@ -239,6 +239,69 @@ reboot now +
+
+
+
+

How to harden your private VM by distro-morphing it into Kicksecure



+

What is Kicksecure? Kicksecure is a free and open-source Linux distribution designed to provide a highly secure computing environment. It is built on a hardened version of Debian, implementing a defense-in-depth security model that protects against various types of malware and attacks.

+

Reasons to use Kicksecure

+
    +
  • Enhanced Security Features:
  • +

    Kicksecure is designed with a strong focus on security, incorporating various hardening techniques such as kernel hardening, user account isolation, and application-specific restrictions.

    +
  • Privacy Protection:
  • +

    All updates and software installations are routed through the Tor network, ensuring that user identities and IP addresses remain anonymous.

    +
  • Lower Attack Surface:
  • +

    Kicksecure minimizes potential vulnerabilities by not having open server ports or unnecessary services running by default.

    +
  • User -Friendly Experience:
  • +

    The operating system is designed to be accessible, with many applications available in their apt repositories and configured for immediate use, such as the tor browser.

    +
  • Compatibility with Virtualization:
  • +

    Kicksecure supports various virtualization options, allowing users to run it in a virtual machine.

    +
  • Free and Open Source:
  • +

    As an open-source project, Kicksecure allows users to review, modify, and redistribute the source code.

    +
+

+ Kicksecure is important in many scenarios. It is ideal for individuals handling sensitive data, such as personal or financial information, as its robust security features protect against data breaches and unauthorized access. Journalists, activists, and whistleblowers can maintain anonymity while communicating, safeguarding their identities from surveillance. Users accessing public Wi-Fi can rely on Kicksecure for secure browsing, reducing the risk of data interception. Running Kicksecure in a virtual machine helps contain potential malware threats, protecting the primary operating system. Additionally, developers and researchers can create a secure environment for security tools and cybersecurity research. Kicksecure also serves as an educational resource, offering documentation and community support for users looking to enhance their security knowledge. Its hardened configuration defends against brute force attacks, making it suitable for securing sensitive accounts. Overall, Kicksecure is essential for anyone prioritizing security, privacy, and anonymity in their digital activities. For more details on why you should use kicksecure, check out their official website.

+

Now let's setup Kicksecure in the private VM, by distro-morphing the Debian guest OS into a Kicksecure guest OS. First,we need to create a new group called console. Then add the your user to the console group

+ +
sudo addgroup --system console
+ +
sudo adduser "your_username" console
+

After that,we need to install console related packages.

+
 sudo apt install console-data console-common kbd keyboard-configuration
+ +

Now, we will install extrepo to get the kicksecure APT repository. We will also enable the repository

+
  sudo apt install extrepo 
+
  sudo extrepo enable kicksecure 
+ +

Next step is to download the kicksecure packages. Note that this will install a desktop environment(Xfce) and other applications

+
sudo apt install kicksecure-xfce-host
+ +

Finally, we need to enable the Kicksecure APT derivative.list in /etc/apt/sources.list.d/derivative.list

+
sudo repository-dist --enable --repository onion
+

This command will generate derivative.list file.

+ +

Disable the extrepo kicksecure APT repository. This is to avoid a duplicate Kicksecure repository.

+
 sudo extrepo disable kicksecure
+ +

That's it! A quick reboot will apply all the new settings and configurations.

+
sudo reboot
+ +

Changes after reboot

+

New GNU GRUB menu

+ +

sdwdate to synchronize the system clock with time servers over the Tor network for better anonymity.

+ +

System Integrity Checks

+ +

System updates over Tor

+ + +

In conclusion,Kicksecure offers a robust solution for security and privacy, built on a hardened Debian foundation. Users can confidently operate within a Kicksecure VM, ready for private use in today’s complex digital landscape.

+
+
+
+
@@ -264,14 +327,14 @@ reboot now

About nihilist

-

Donate XMR: 8AUYjhQeG3D5aodJDtqG499N5jXXM71gYKD8LgSsFB9BUV1o7muLv3DXHoydRTK4SZaaUBq4EAUqpZHLrX2VZLH71Jrd9k8


Contact: nihilist@contact.nowhere.moe (PGP)

+

Donate XMR: 85fGTpPWivci2dRzJSgvm5QeEuEUZ11ZDbZA6Yc58XdCHSen2oRKLpgbNBr1sv9gacbrfMP3Qw23RcGqYb8V1FN4L67kph6


Contact: nihilist@contact.nowhere.moe (PGP)

- + diff --git a/opsec/hypervisorsetup/new_grub.png b/opsec/hypervisorsetup/new_grub.png new file mode 100644 index 0000000..973309c Binary files /dev/null and b/opsec/hypervisorsetup/new_grub.png differ diff --git a/opsec/hypervisorsetup/sdwdate.png b/opsec/hypervisorsetup/sdwdate.png new file mode 100644 index 0000000..bda70d8 Binary files /dev/null and b/opsec/hypervisorsetup/sdwdate.png differ diff --git a/opsec/hypervisorsetup/sys_inter.png b/opsec/hypervisorsetup/sys_inter.png new file mode 100644 index 0000000..6d8f8d9 Binary files /dev/null and b/opsec/hypervisorsetup/sys_inter.png differ diff --git a/opsec/hypervisorsetup/tor.png b/opsec/hypervisorsetup/tor.png new file mode 100644 index 0000000..4e09d54 Binary files /dev/null and b/opsec/hypervisorsetup/tor.png differ diff --git a/opsec/index.html b/opsec/index.html index e2c8c32..6dfe4ce 100644 --- a/opsec/index.html +++ b/opsec/index.html @@ -40,7 +40,8 @@
Previous Page

OPSEC: Privacy, Anonymity and Plausible Deniability

Tutorials to show how to achieve Privacy, Anonymity and Plausible Deniability online. - I have a quality standard as to how i do these tutorials, if there are any improvements i can do on them please let me know. + I have a quality standard as to how i do these tutorials, if there are any improvements i can do on them please let me know.

+

SHOWCASED ARTICLE: Learn how to audit your own setup, to determine your Operational Security (OPSEC) Level, and find out what is the most appropriate internet use for it.


diff --git a/opsec/opsec4levels/0.png b/opsec/opsec4levels/0.png index 298ac0b..fb19a9b 100644 Binary files a/opsec/opsec4levels/0.png and b/opsec/opsec4levels/0.png differ diff --git a/opsec/v2ray/:q b/opsec/v2ray/:q new file mode 100644 index 0000000..629ccdd --- /dev/null +++ b/opsec/v2ray/:q @@ -0,0 +1,598 @@ + + + + + + + + + + + + How to access Tor when you are in a heavily-censored country using v2ray (vmess / vless) + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+ Previous Page

+

+ Zer0 +

+

How to access Tor when you are in a heavily-censored country using v2ray (vmess / vless)

+ +

+
+

"How charming it is to witness such harmony—where + freedom is a gentle illusion, and every bleat + is a reminder that safety lies not in the open fields, + but in the comforting embrace of the shepherd’s leash"

+
+

+ some governments just love to restrict free flow of information + in the name of serving and securing their citizens by implying + censorship and blocking certain websites. + So in this tutorail we deep dive into circumviliation tools and their working principles. +

+ +
+
+
+
+ + +
+
+
+
+

Introduction

+

+

    + +
  • +

    Why should I use v2ray?

    +

    If your country makes TOR traffic as illegal, how can you access .onion websites anyway ? +

    + Normally you would just hide that you are using Tor by hiding it behind a VPN (which can be based on wireguard or openvpn) like we have previously recommended: + +

    + but now we have another problem, what if your country also made VPNs illegal to use ? +
    + +

    + If you are in a country where both Tor and VPNs are illegal to use, you'll need to use a censorship-evasion tool like v2ray to be able to safely hide that you're using Tor. +

  • +
  • +

    Project V and Project X

    +

    V2ray : an open source censorship circumvention tool also know as project V is a framework where one could stack protocols as well as modify standard protocols to bypass firewalls. +

    +

    Xray: a superset of v2ray, with better overall performance and enhancements such as XTLS

    +

    + XTLS is an optimized/modification of TLS protocol, it works by using real TLS to hide proxy traffic +

    +

    +
    + + + V2ray is not a protocol rather a platform where users could design their own protocol stacks based on the primitive protocols like TCP,UDP,HTTP + + while vmess and vless are proxy protocols which are native to v2ray. + +
    +

    +

    + V2rays has the ability to obfuscate and make packets appear to be genuine webtraffic, in order to prevent the adversary from figuring out that you are using Tor. + + Wireguard as well as openvpn does not provide any obfuscation feature and will be detected easily by header match or DPI. + +
    + (they have this in their codebase which clearly shows how to detect Wireguard traffic) + ref +

    +

    But How does a V2ray traffic look like?

    + Here's a Wireshark dump of curl archlinux.org with and without v2ray. +
    + +

    + As you could see requests to archlinux.org ( with v2ray ) goes to a popular website giphy but is actually communicating to our V2ray server behind the CDN through Websocket protocol. +
    + (Domain Fronting method is being used here) +

    + +
    + we could use v2ray to make our own versions of primitive protocols to "fool the wall". +
    +

    +
  • +
  • +

    Some Principles to get started +

    +

    +
    + Transport : The protocol used to connect to the v2ray server. +
    + Inbounds : Connections to the v2ray server. +
    + Routing : Rules defining how an inbound connection should be treated. + (Ex. drop connection requests from certain domains, route inbound through a socks server) +
    + Outbounds : Connections going out of v2ray server.(Ex. Towards the user requested website) +
    +
    +

    +
  • +
  • +

    Clients

    + Android + + + Linux + + + Windows + + +

    +

    +
  • +
+

+
+
+
+
+ +
+
+
+
+

Serverside Setup



+

an overview of v2ray server config looks like this

+

+{
+    "log": {},
+    "api": {},
+    "dns": {},
+    "stats": {},
+    "routing": {},
+    "policy": {},
+    "inbounds": [],
+    "outbounds": [],
+    "transport": {}
+}
+ +

Looking kinda complicated right, fear not we have Web-UI's to setup V2Ray servers. + Web-UI aka "panels" could be used for user-management including traffic stats,uuid-generation and much more... +

+ + + +
    +
  • +

    Getting a VPS

    +

    + refer to Acquiring remote servers anonymously (non-KYC providers) + for buying a VPS using XMR +

    +

    +
  • +
  • +

    Installing a panel

    +

    Once you have the VPS ready and have established an SSH connection,we can start working on installing panel.

    +
    + we'll be using alireza0/x-ui panel since its actively + maintained, but you could also use MHSanaei/3x-ui + .The v2ray server setup is same same for all. +
    +

    + Supported distributions + - Ubuntu 20.04+ + - Debian 11+ + - CentOS 8+ + - OpenEuler 22.03+ + - Fedora 36+ + - Arch Linux + - Parch Linux + - Manjaro + - Armbian + - AlmaLinux 8.0+ + - Rocky Linux 8+ + - Oracle Linux 8+ + - OpenSUSE Tumbleweed + - Amazon Linux 2023

    +

    +

    +                                
    +#> bash <(curl -Ls https://raw.githubusercontent.com/alireza0/x-ui/master/install.sh)
    +....
    +Would you like to customize the Panel Port settings? (If not, random port will be applied) [y/n]: y
    +Please set up the panel port: 9566
    +Your Panel Port is: 9566
    +Port set successfully: 9566
    +Username and password updated successfully
    +Base URI path set successfully
    +This is a fresh installation, generating random login info for security concerns:
    +###############################################
    +Username: fU8hjnoLSp
    +Password: ak8jX44rZy
    +Port: 9566
    +WebBasePath: EwAJmwAHwMk7FLK
    +###############################################
    +If you forgot your login info, you can type 'x-ui settings' to check
    +Start migrating database...
    +Migration done!
    +Created symlink '/etc/systemd/system/multi-user.target.wants/x-ui.service' → '/etc/systemd/system/x-ui.service'.
    +x-ui v1.8.7 installation finished, it is up and running now...
    +
    +
    +                                 
    + The script asks for the port to use. we could change the port later. + We could use the creds(Autogenerated) displayed above to access the webui + +
    X-UI Control Menu Usage
    +    ------------------------------------------
    +    SUBCOMMANDS:
    +    x-ui              - Admin Management Script
    +    x-ui start        - Start
    +    x-ui stop         - Stop
    +    x-ui restart      - Restart
    +    x-ui status       - Current Status
    +    x-ui settings     - Current Settings
    +    x-ui enable       - Enable Autostart on OS Startup
    +    x-ui disable      - Disable Autostart on OS Startup
    +    x-ui log          - Check Logs
    +    x-ui update       - Update
    +    x-ui install      - Install
    +    x-ui uninstall    - Uninstall
    +    x-ui help         - Control Menu Usage
    +    ------------------------------------------
    +    
    + + In order to access the web UI, the url schema looks like this. +
    + http://server_ip:port/path +

    +
    + You can use x-ui settings command to retrieve panel info, like port and path. +
    + Ex-output: +
    + ############################################### + Username: fU8hjnoLSp
    + Password: ak8jX44rZy
    + Port: 9566
    + WebBasePath: EwAJmwAHwMk7FLK
    + ############################################### +
    +

    Example + http://198.41.128.88:9566/EwAJmwAHwMk7FLK/ +
    Once you access the web portal,use the username and password as above. +

    +

    +

    +
  • +
  • +

    Setting up the panel

    +
    + +
    + after logging in switch to latest the xray-core +
    + +
    +

    In order to receive inbounds we must create an inbound rule within the panel. +
    + We are choosing vmess (as protocol) + websocket (as trasport). + copy the settings as below. +
    + (you could change the port as of your liking) +

    + VLESS does not provide built-in encryption, avoiding it for now. + ref + NOTE: VMess Requires to have time synced up. +
    + +
    + Now you could try to connect to the server using QR Code or by using the vmess link. +
    + (Click the QR to copy link) + See Client Section +

    +
    + a vmess link will look like vmess://<uuid>@<hostname>:<port>?<other_params>#<remarks> +
    + +

    +
  • +
  • +

    Client Installation +

    +
  • + We're installing V2rayN on linux, one could find the pre-build binaries in the releases section on github( link ) + +
    + Extract, and run the client as follows +
    +
    +                            
    +$ unzip v2rayN-linux-64.zip 
    +...
    +$ cd v2rayN-linux-64/
    +$ chmod +x v2rayN 
    +$ ./v2rayN
    +
    +                            
    +                        
    + After executing the above command a GUI will popup. +
    + change route settings (optional) within Settings(on top) > Regional Presets Settings > Russia +
    +
    + +
    +
    +
    + Routing is used when you want to avoid proxy for regional websites. +
    + (A direct connection without proxy will be made by the clientside app based-off IP or Domain name) +
    +

    + Ex. if we access 1tv.ru, with this setting turned on it will be resolved using our actual IP than our Proxy IP +

    +
+
+
+
+
+ + + +
+
+
+
+

Censorship Evasion technique #1 - Domain Fronting

+

+

+ Setting up a v2ray server alone doesnt bypass any censors(it would be obvious if we push a large amount of traffic),rather we use some methods to make the traffic look geniune. +
One such method is called Domain Fronting +
+ +

+ We will be using Fastly, since it offers a free CDN without CreditCard + 30-day Websocket support(free-trial) +
+ Start by creating an account at Fastly +
+ +
+ Create a new cdn service like this +
+ +

+ In here we can use any domain name since its for internal routing within cdn. +
+ (meaning that within the CDN domain zero-google.com will resolve to our v2ray IP ) +
+ origin willbe our v2ray inbound IP +
+
+ then select the cdn name to edit the config +
+ +

+ We edit the CDN config to change the port of our host and disable some settings that may cause issues +
+ +
+ After that we change the port from 443 to 53254 (The port we used for receiving inbounds in our v2ray panel) + +

+
+ We can do inbounds to port 443(TLS port) and adjust inbound settings to have Fallback but that requires one to have an inbound config with TCP transport within the panel. + +
+

+ A Fallback is when you want to expose only one standard HTTP/HTTPS port(80,443) to receive inbounds but want to use different protocols like VMESS,Shadowsock... with the same port. +
+ Fallback Can only be used with TCP/XTLS transport modes. +
+ + +

+

+ + Now from Settings >> + +
+ we enable websocket. +
+ + Start the trial and it should look something like this +
+ +
+ Now lets add VCL for HTTP Connection Upgrade(Since we want to switch to Websocket) + +
+ +

+if (req.http.Upgrade) {
+return (upgrade);
+}
+                        
+                        
+ +

+
+
+
+
+
+
+
+
+

Clientside Setup

+ In this section we'll discuss how to connect to the prementioned setup using domain fronting technique. +
    +
  • +

    Linux

    +

    + Copy the server config from panel(by clicking the qr-code) to clipboard. +
    + Open client app(v2rayN/nekoray) +
    + Ctrl + V +
    + and edit it as follows. +
    + For testing in Linux we are using v2rayN +

    + +

    + click Confirm +

    + If the connection was successful you'll see your server IP along with delay(ms) in the logs as well as on bottom right corner like this. + +
    + You could toggle System Proxy to check connectivity, within browser and all. +
    + +
    +
    +
  • +
+

Testing Tor

+

+

+ go to + about:preferences#connection + change proxy settings as follows. +
+ (Proxy port shown in v2ray. + So that connection made by tor will go through v2ray server) + + +
+

+ If we were to save it and try to connect it will fail. + (connection died in state handshaking). + So enable Bridges +
+ Set Bridges of Your Choice +
+ +
+

+ This is how the traffic leaves the system. +
+ +

+ As you could see, traffic goes to fastly server rather than tor nodes. +
(You're seeing Websocket traffic to and from 192.168.1.2(LAN IP) to a Fastly CDN(Anycast IP)) +
+ +

And that's it! we managed to connect to an onion website, from a heavily-censored country, thanks to v2ray.

+

+
+
+
+
+ + +
+
+
+
+

Nihilism

+

+ Until there is Nothing left.



+

Creative Commons Zero: No Rights Reserved
+ +

+
+ +
+

My Links

+

+ + RSS Feed
SimpleX Chat
+ +

+
+ +
+

About Zer0

+

Donate XMR: 42wqdQbr4QBSU4BVKkoAANENY6SDzbdib8mUmNBybYAePfkVzmcQKyGNuJ3GbFr4S9fsQaWQB9gxnip611poq89f1ETjK9R


+
+ +
+ +
+
+ + + + + + + + diff --git a/productivity/mentalopti/20.png b/productivity/mentalopti/20.png new file mode 100644 index 0000000..9ce6f27 Binary files /dev/null and b/productivity/mentalopti/20.png differ diff --git a/productivity/mentalopti/21.png b/productivity/mentalopti/21.png new file mode 100644 index 0000000..6648552 Binary files /dev/null and b/productivity/mentalopti/21.png differ diff --git a/productivity/mentalopti/22.png b/productivity/mentalopti/22.png new file mode 100644 index 0000000..7280e83 Binary files /dev/null and b/productivity/mentalopti/22.png differ diff --git a/productivity/mentalopti/23.png b/productivity/mentalopti/23.png new file mode 100644 index 0000000..73c12ba Binary files /dev/null and b/productivity/mentalopti/23.png differ diff --git a/productivity/mentalopti/24.png b/productivity/mentalopti/24.png new file mode 100644 index 0000000..ba1cad2 Binary files /dev/null and b/productivity/mentalopti/24.png differ diff --git a/productivity/mentalopti/25.png b/productivity/mentalopti/25.png new file mode 100644 index 0000000..2f2ad8d Binary files /dev/null and b/productivity/mentalopti/25.png differ diff --git a/productivity/mentalopti/26.png b/productivity/mentalopti/26.png new file mode 100644 index 0000000..98b059d Binary files /dev/null and b/productivity/mentalopti/26.png differ diff --git a/productivity/mentalopti/27.png b/productivity/mentalopti/27.png new file mode 100644 index 0000000..25a7d8f Binary files /dev/null and b/productivity/mentalopti/27.png differ diff --git a/productivity/mentalopti/28.png b/productivity/mentalopti/28.png new file mode 100644 index 0000000..46df14d Binary files /dev/null and b/productivity/mentalopti/28.png differ diff --git a/productivity/mentalopti/30.png b/productivity/mentalopti/30.png new file mode 100644 index 0000000..e5b9025 Binary files /dev/null and b/productivity/mentalopti/30.png differ diff --git a/productivity/mentalopti/31.png b/productivity/mentalopti/31.png new file mode 100644 index 0000000..8753329 Binary files /dev/null and b/productivity/mentalopti/31.png differ diff --git a/productivity/mentalopti/32.png b/productivity/mentalopti/32.png new file mode 100644 index 0000000..dc3cf8d Binary files /dev/null and b/productivity/mentalopti/32.png differ diff --git a/productivity/mentalopti/index.html b/productivity/mentalopti/index.html index f45f0fd..fa0a786 100644 --- a/productivity/mentalopti/index.html +++ b/productivity/mentalopti/index.html @@ -184,6 +184,210 @@ PING youtube.com (127.0.0.1) 56(84) bytes of data.

And that's it! Now stop going around in circles, and get back to doing what truly matters to you!

+
+ + + + +
+
+
+
+

Tiling Window Managers



+

Tying back to the workspace management, you can have a tiling window manager where you can manage the applications you open and move around on your desktop using only the keyboard.

+

To achieve this i recommend using the i3 window manager like so:

+

+nothing@debian:~$ su -
+Password: 
+root@debian:~# apt install i3 -y
+
+
+

once installed, (since you are probably not already in i3, but rather in an other window manager like cinnamon) you can simply go back to the login screen by logging out or by running this command:

+

+root@debian:~# systemctl restart lightdm
+
+
+ + + +

From there you can start to edit the i3 config from a terminal (that you open with the shortcut Win+ENTER):

+ +

+nothing@debian:~$ vim ~/.config/i3/config
+
+
+

From here you can customize just about anything you want, from the shortcuts, to the colors used and the apps that are launched upon startup. Here are the main shortcuts that you need to remember:

+

+#my Modkey is the windows key (Mod4), it's at the very top of my i3config file.
+
+#Change workspaces :
+-Mod+1234567890
+
+#Change focus to next window :
+-Mod+Arrow
+
+#KILL the window:
+-Mod+Shift+Q
+
+#Toggle Vertical/Horizontal layout :
+-Mod+V or H (and then move/create a window where you put the V/H mode)
+
+#Move window in the workspace :
+-Mod+Shift+Arrow
+
+#Move window to workspace:
+-Mod+Shift+12345647890
+
+#Create Terminal window:
+-Mod+Enter
+
+#open any application:
+-Mod+d 
+(type application name)
+ENTER
+
+#Toggle floating mode on a window:
+-Mod+Space
+
+#Enter resize mode:
+-Mod+R  
+-then Arrows to resize
+-then ESC to exit resize mode
+
+
+
+
+
+
+ +
+
+
+
+

My Productivity Setup



+ +

I customized this quite a bit myself, while still trying to remain minimalistic about it, you can find my dotfiles here. In order to get my customized setup quickly i have made those 2 scripts:

+ +

First script to setup i3 and the GUI apps i want (drawio, torbrowser, mullvad-browser, simplex chat, keepassxc):

+

+nothing@debian:~$ su - 
+root@debian:~# usermod -aG sudo nothing
+root@debian:~# reboot now
+
+nothing@debian:~$ sudo apt install git tor torsocks -y
+nothing@debian:~$ torsocks git clone http://git.nowherejezfoltodf4jiyl6r56jnzintap5vyjlia7fkirfsnfizflqd.onion/nihilist/dotfiles
+nothing@debian:~$ cd dotfiles
+nothing@debian:~$ chmod +x ./debiansetup.sh
+
+nothing@debian:~$ ./debiansetup.sh
+(let it run, and put your sudo passwords when it asks for it)
+
+
+

And i have this other script here to setup my terminal how i want it to be with the CLI apps i use (zsh, tmux, ohmytmux, ranger, and vim):

+

+nothing@debian:~$ ./terminalsetup.sh
+(let it run too, and put your sudo passwords when it asks for it)
+
+
+

Do put your user's password whenever it asks for it, and once they finish running you can reboot your debian OS to see the changes:

+

+nothing@debian:~$ sudo reboot now
+
+
+

And then once it reboots you login as usual into i3, i3 will launch all the applications automatically by using the ~/.config/i3/startapps.sh script. For me my apps i launch automatically are as follows:

+ + + +

for the actual blogwriting i like to use ranger as it helps me browse quickly to find the folders i want:

+

+[ mainpc-privateVM ] [ /dev/pts/6 ] [~/Nextcloud/blog]
+→ ranger
+
+
+

in ranger you can do / to search for a keyword, like /v2ray and then press ENTER and ranger will immediately find it for you:

+ +

Then once you select the html file you need, you can hit enter and it will put you in Vim directly to edit it:

+ +

as we are in a tmux terminal, we can have multiple terminal prompts at once, this is also a very useful productivity tool when you do alot of CLI work like me:

+ +

For all the tmux shorcuts to remember you can use this sheet:

+

+#enter tmux:
+tmux
+
+#CTRL+b is the default tmux keybind to start any tmux action.
+#to cancel it just press ESC
+
+#WINDOWS
+    #Create a new window:
+    CTRL+b c
+
+    #kill current window:
+    CTRL+b &
+
+    #Rename Window
+    Ctrl+B ,
+
+    #Goto window:
+    CTRL+b 123456789
+
+    #Browse the tmux sessions (windows and panes)
+    CTRL+b W
+
+#PANES (contained within windows) :
+    #split vertically or horizontally  (this is creating panes basically):
+    #CTRL+b " 
+    #CTRL+b %
+
+    #Change pane focus:
+    CTRL+b Arrow
+
+    #Cycle Panes:
+    CTRL+B o
+
+    #Cycle Move panes:
+    CTRL+B CTRL+O
+
+    #Move pane into new window:
+    CTRL+B !
+
+    #Resize Pane:
+    CTRL+b CTRL+Arrow
+
+    #close pane:
+    CTRL+b x
+
+    #display pane numbers:
+    CTRL+b q
+
+#COPY AND PASTE
+CTRL+b [                (to enter copy mode, or PageUP to place the cursor farther up) 
+	-> and then just click and drag to whatever text you want to copy
+arrow keys              (to place the cursor where you need it (or PageUP/PageDN))
+CTRL+Space              (and then move the cursor to select the lines you need)
+CTRL+W                  (to copy your selection into the buffer)
+
+CTRL+SHIFT+V            (to paste your selection)
+SHIFT+insert            (to paste your selection)
+
+CTRL+B [ 
+    then CTRL+S (Search Pattern downward)
+    then Enter
+    then hit n to cycle through the results
+
+CTRL+B [
+    then CTRL+R (Search Pattern upward)
+    then Enter
+    then hit n to cycle through results
+
+CTRL+B f (find window based on what's displayed in it)
+
+
+ +

And there you have the last 2 workspaces, one for payments and accesses, and the last one being for distractions:

+ + +

And that's it! you now have a completely tuned-up productivity setup like mine.

diff --git a/productivity/productivity2.png b/productivity/productivity2.png index 3995f0e..1829274 100644 Binary files a/productivity/productivity2.png and b/productivity/productivity2.png differ