|
|
| Line 1: |
Line 1: |
|
| |
| (Preamble:
| |
| = Meetup - Infra =
| |
| https://www.noisebridge.net/wiki/Meetups/Infra
| |
| https://www.noisebridge.net/wiki/Meetups/Infra/2024-..-.. )
| |
|
| |
| 2025-..-.. m [[Meetups/Infra]]
| |
| {{meetups/infra}} <!-- header --> | | {{meetups/infra}} <!-- header --> |
| (TODO summary) | | (TODO summary) |
|
| |
|
| == Introduction == | | ==Introduction== |
|
| |
|
| Mark (new participants) - new to noisebridge, SWE person, interested in AI -- working on prototypes and moved to the yay area. Has a desktop server and willing to share two GPUs worth of compute | | Mark (new participants) - new to noisebridge, SWE person, interested in AI -- working on prototypes and moved to the yay area. Has a desktop server and willing to share two GPUs worth of compute |
| Line 19: |
Line 12: |
| Elan - Interested in reproducible builds. | | Elan - Interested in reproducible builds. |
|
| |
|
| == GUIX DEMO == | | == GUIX DEMO== |
| https://guix.gnu.org/ | | https://guix.gnu.org/ |
|
| |
|
| Line 46: |
Line 39: |
|
| |
|
|
| |
|
| #
| | ==Discussion== |
| NixOS and GUIX System | | NixOS and GUIX System |
|
| |
|
|
| |
|
| Line 54: |
Line 47: |
| Turtles on turtles on turtles: | | Turtles on turtles on turtles: |
| https://old.reddit.com/r/GUIX/comments/1bga82r/bazel_running_in_nix_running_in_guix/ | | https://old.reddit.com/r/GUIX/comments/1bga82r/bazel_running_in_nix_running_in_guix/ |
|
| |
| == Introductions ==
| |
| * [name] - [background]. [goals for meetup, or interests to explore]
| |
|
| |
| * Loren -- Wants to set up a server for meetup chat
| |
| * Daniel -- not supposed to be here
| |
| * Zacchae -- other than phone number, I only use services I succeed in self-hosting
| |
| * [a person]
| |
| * Chris -- good front-end developer -- current interests:
| |
| * Sai (sp) -- backend eng, stumbling into the meetup
| |
| * Thereesa -- (2nd time)
| |
| * Nick -- interested in self-hosting (challenge: ask 2 questions)
| |
| * Dianna -- here - interested in infrastructure
| |
| * Greg -- interested in FOSS broadly, not working onanything today
| |
| * Mike - unemployed software engineer. Working on setting up services on my home k8s cluster.
| |
| * Doug -- terrible front- and back-end engineer -- here to chrome cast
| |
|
| |
| (free ross)
| |
|
| |
| == Lesson or Demo ==
| |
| * Read aloud: clarify for meetup. We are taking notes in a riseup pad (or I am--help appreciated, and links). We have meeting notes posted to the wiki. noisebridge.net, search Infra, or Meetups/Infra. (the Infrastructure page has a disambiguation link.)
| |
| * Shell, web services, self-hosting, networking!
| |
|
| |
|
| |
| * platform questions -- full-stack development & use of platforms: Notion. Telegram.
| |
| ** telegram -- concerns
| |
| *** *lying* about their cryptography --
| |
| possibility of commercialization -
| |
|
| |
| https://core.telegram.org/bots/api
| |
| https://developers.notion.com/
| |
|
| |
| * binary inspection
| |
| https://binsider.dev/ - rust + rataTUI
| |
| https://github.com/ReFirmLabs/binwalk
| |
| https://binvis.io/
| |
| https://github.com/sharkdp/hexyl
| |
| rabin2 -I binary
| |
| ## List information about binary
| |
| ```shell
| |
| $ rabin2 -I binary
| |
| arch arm
| |
| baddr 0x100000000
| |
| binsz 33512
| |
| bintype mach0
| |
| bits 64
| |
| canary false
| |
| injprot false
| |
| class MACH064
| |
| compiler clang
| |
| [...]
| |
| ```
| |
|
| |
| **dyld Cheatsheet**
| |
| ====================
| |
| ### Introduction
| |
| * `dyld` stands for "dynamic linker" or "dynamic link editor"
| |
| * Responsible for loading and linking dynamic libraries into running processes
| |
|
| |
| ### Key Functions
| |
| * Loads dynamic libraries into memory
| |
| * Resolves symbol references between executables and libraries
| |
| * Performs relocations to adjust memory addresses
| |
| * Handles library dependencies
| |
|
| |
| ### Benefits
| |
| * **Memory efficiency**: Shares dynamic libraries among multiple processes
| |
| * **Improved performance**: Loads libraries dynamically to reduce startup times
| |
| * **Simplified software development**: Enables independent updates of libraries and executables
| |
|
| |
| ### Useful Commands
| |
| * `otool -L <executable>`: Inspect dynamic libraries used by an executable
| |
| + Example: `otool -L /bin/ls`
| |
| * `dylib`: Work with dynamic libraries directly
| |
| + Example: `dylib /usr/lib/libSystem.B.dylib`
| |
|
| |
| ### Examples
| |
| Inspecting Dynamic Libraries
| |
| ```bash
| |
| $ otool -L /bin/ls
| |
| /bin/ls:
| |
| /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1234.0.0)
| |
| /usr/lib/libc.dylib (compatibility version 1.0.0, current version 1234.0.0)
| |
| ```
| |
| Working with Dynamic Libraries
| |
| ```bash
| |
| $ dylib /usr/lib/libSystem.B.dylib
| |
| ```
| |
|
| |
| otool -L /bin/ls
| |
|
| |
| /bin/ls:
| |
| /usr/lib/libutil.dylib (compatibility version 1.0.0, current version 1.0.0)
| |
| /usr/lib/libncurses.5.4.dylib (compatibility version 5.4.0, current version 5.4.0)
| |
| /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1351.0.0)
| |
|
| |
| btop (htop, top, iotop), xxd (od),
| |
|
| |
| mtr, traceroute, hping3
| |
| # `hping3` - Advanced ping utility which supports protocols such TCP, UDP, and raw IP.
| |
| https://www.kali.org/tools/hping3/
| |
| ## Ping an IP address over UDP on port 80
| |
| ```sh
| |
| hping3 --udp --destport 80 --syn ip_or_hostname
| |
| ```
| |
|
| |
| ## Scan TCP port 80, scanning from the specific local source port 5090:
| |
| ```sh
| |
| hping3 --verbose --syn --destport 80 --baseport 5090 ip_or_hostname
| |
| ```
| |
|
| |
| IP addresses are assigned to:
| |
| * AS / ASNs (AS Number) https://en-wp.org/wiki/Autonomous_system_(Internet)
| |
|
| |
| Much as domain names are leased to individuals to allow lookup of IP addreseses for servers, where poeple host the services they want to provide.
| |
|
| |
|
| |
| * loading executables
| |
|
| |
| ldd -- macos dyld / dyld_info
| |
| https://jmmv.dev/2023/07/ldd-untrusted-binaries.html
| |
|
| |
| torsocks (macOS vs linux -- use different dynamic linkers)
| |
|
| |
| strace -- statx / openat
| |
|
| |
| # List of tools to demonstrate practical uses of tools (Quick Reference Guides)
| |
| cht.sh -- hping https://cht.sh
| |
| TLDR:
| |
| https://tldr.sh/tlrc/ -
| |
|
| |
| * dynamic linking
| |
|
| |
| * security cryptography whatever
| |
| https://securitycryptographywhatever.com/episodes/
| |
|
| |
|
| |
| == takeaways ==
| |
|
| |
| * Doug -- more cht.sh
| |
| * Mike -- (silently) 5th amendment rights assertion. ebpf
| |
| * Greg -- cht.sh cool, would: live code nix
| |
| * Dianna -- tldr --
| |
| * Nick -- ASNs -- all the tools -- curious about self-hosting, curious about security
| |
| * Theresa -- binary analsis -- , cht.sh, TeleGram
| |
| * Jams -- lots of interesting thing
| |
| * Chris -- how IP addresses work
| |
| * -- binvis stuff
| |
| * Zacchae -- let's do a project uuuhhh. ideas for what you want. informational (want to: do more actual building.)
| |
|
| |
| system crafters --
| |
|
| |
|
| |
|
| |
|
| |
| == Questions, Discussion, or Coworking ==
| |
| * [Issue]
| |
| = For next time =
| |
| == Questions ==
| |
| == Readings & Exercises ==
| |
| * Readings
| |
| **
| |
| * Exercises
| |
| **
| |
| == Join online ==
| |
| * Try it yourself!
| |
| ** Join libera.chat #nb-meetup-infra
| |
|
| |
| https://www.noisebridge.net/wiki/Meetups/Infra
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
| (Preamble:
| |
| = Meetup - Infra =
| |
| https://www.noisebridge.net/wiki/Meetups/Infra
| |
| https://www.noisebridge.net/wiki/Meetups/Infra/2024-..-.. )
| |
|
| |
| 2025-..-.. m [[Meetups/Infra]]
| |
| {{meetups/infra}} <!-- header -->
| |
| (TODO summary)
| |
|
| |
| == Welcome ==
| |
|
| |
| == Introductions ==
| |
| * [name] - [background]. [goals for meetup, or interests to explore]
| |
|
| |
|
| |
|
| |
| * Loren -- background in
| |
| * Doug -- background: into self-hosting, into free, (as in beer? speech? yes).
| |
| * Jams --- he/him -- background in software, current interest in generally intelligent system
| |
| * -- here from spacebridge, learning cybersecurity. Was graphic designer at AirBNB, new to SF
| |
| * Teresa -- here via meetup, work at Apple. Internship at Apple, Vision Pro user testing, full stack bootcamp. Interested in vibe coding, SaaS. Lots of resources online.
| |
| * Zacchae -- limited participation, self-host email, matrix server, only centralized service I use is telephone (there I have rights). Want to host relays. Want more federated systems, easy to set up.
| |
| * James -- france, just arrived 3h ago. Building an app, in Rust, comparing lib-tos? tauri solutions. Github are have many open PRs. 3mo no activity.
| |
| * [Suhail hael?] -- building a startup, problem: insurance company, fighting denials. 25 healthcare client, 36k phone calls so far
| |
| * WE-Z -- hacker locale, teach swift, lockpicking, like making building & hacking. Interested tonight in infra, building ...
| |
| * Chris -- designer, full-stack dev -- working on AI poetry bot & SF events database
| |
| * Eric -- work at [], 3 years. Here to check-out the meetup.
| |
| * Noah -- first time here, SW intern @ LLNL, really into self hosting llms, now my own VPN.
| |
|
| |
|
| |
|
| |
| == Lesson or Demo ==
| |
| * Read aloud: clarify for meetup. We are taking notes in a riseup pad (or I am--help appreciated, and links). We have meeting notes posted to the wiki. noisebridge.net, search Infra, or Meetups/Infra. (the Infrastructure page has a disambiguation link.)
| |
| * Shell, web services, self-hosting, networking!
| |
|
| |
| email servers
| |
|
| |
| Hosting Zulip server
| |
| https://zulip.com/
| |
|
| |
| Organized chat for distributed teams
| |
|
| |
| Interfaces well with email > you can email into it.
| |
| Allows sending email + fully supported plugins.
| |
|
| |
|
| |
| * email
| |
| inbound mail: MX (A) for your site.
| |
|
| |
| outbound mail:
| |
| TXT spf: (sender policy frameworks") -- a: cname: ? -
| |
| DKIM (Domain-Key Identified Mail) --
| |
| DMARC (reporting)
| |
|
| |
|
| |
|
| |
| * https://llm.datasette.io/en/stable/
| |
|
| |
| * https://hn.algolia.com/?dateRange=all&page=0&prefix=true&query=local+first&sort=byPopularity&type=all
| |
|
| |
|
| |
| === local-first software -- infra meetup (...) ===
| |
|
| |
| localfirst links from jams:
| |
| - https://www.localfirstconf.com/
| |
| - https://replicache.dev/
| |
|
| |
| obsidian? -- sync over network
| |
|
| |
| https://gun.js.org -- local-first, decentralized, running in a browser (no binary needed)
| |
|
| |
| ? SimpleStore
| |
|
| |
|
| |
|
| |
|
| |
|
| |
| == Questions, Discussion, or Coworking ==
| |
| * [Issue]
| |
| = For next time =
| |
| == Questions ==
| |
| == Readings & Exercises ==
| |
| * Readings
| |
| **
| |
| * Exercises
| |
| **
| |
| == Join online ==
| |
| * Try it yourself!
| |
| ** Join libera.chat #nb-meetup-infra
| |
|
| |
| https://www.noisebridge.net/wiki/Meetups/Infra
| |