LYREBIRD(1)
π LYREBIRD(1) β the pluggable transport proxy, bestie edition
okay so welcome to the lyrebird manual page, section 1 of the General Commands Manual π¦ this is the whole thing, every last flag, no skips, no cuts, we're doing this properly β¨
πΈ NAME
lyrebird β a pluggable transport proxy for Tor that implements obfs4 π
β¨ SYNOPSIS
lyrebird [options]
that's it, that's the whole vibe check π no subcommands, no drama, just options.
π DESCRIPTION
so like. lyrebird is a tool that attempts to circumvent censorship by transforming the Tor traffic going between the client and the bridge π the way it works is that censors are usually monitoring that clientβbridge traffic, and instead of seeing actual Tor traffic they see innocent-looking transformed traffic. like a disguise. a little costume. iconic behavior honestly π
lyrebird implements these obfuscation protocols, and yes we're listing all of them:
obfs2obfs3ScrambleSuitβ client only, sorry servers π«Άmeekβ also client only πobfs4
and listen: lyrebird is currently only supported as a managed pluggable transport, spawned as a helper process via the tor daemon. that's the whole deployment story, no cap.
π₯ OPTIONS
-h,--helpβ shows you the usage info and then dips. exit stage left π--versionβ shows you the version info and exits. that's the whole job β¨--enableLoggingβ turns logging on π--logLevel=levelβ sets the max log severity that actually gets logged out of"ERROR","WARN","INFO", and"DEBUG". pick your chaos level ποΈ--unsafeLoggingβ disables the IP address scrubber when logging, which means personally identifiable information ends up stored in the logs π be so serious before you turn this on bestie--obfs4-distBiasβ when it's generating probability distributions for the obfs4 length and timing obfuscation, this makes it generate biased distributions similar to ScrambleSuit π²
πΏ ENVIORNMENT
yes it's spelled "ENVIORNMENT" in the original, I'm not touching it, I'm just the messenger π
lyrebird honors all of the enviornment variables as specified in the Tor Pluggable Transport Specification π (again, their spelling, not mine β¨)
π FILES
DataDirectory/pt_state/lyrebird.logβ the log file. assuming logging is enabled, so like,--enableLoggingbestie πDataDirectory/pt_state/obfs4_state.jsonβ the Bridge (server) auto-generated obfs4 bridge parameters file ποΈ this file will not be created if the administrator specifies them in the torrc via aServerTransportOptionsdirective. so either you let it cook or you do it yourself πDataDirectory/pt_state/obfs4_bridgeline.txtβ the Bridge (server) obfs4 bridge's client parameters π¦ this file gets created and it contains theBridgedirective that a client should add to their torrc to connect to the running server's obfs4 instance. it's literally the lil note that says "hey, here's how to find me" π
π CONFORMING TO
Tor Pluggable Transport Specification β¨
β NOTES
- using the
obfs4protocol requirestor-0.2.5.xor later, no exceptions π°οΈ - the
obfs2protocol is included for backwards compatibility purposes only, and should not be used in new deployments. it's giving legacy. it's giving "we keep it around for the elders" π
π§ EXAMPLE
As a client β to configure tor so it can use obfs4 bridges, add lyrebird to the torrc like thus:
# Use lyrebird to provide the obfs4 protocol.
ClientTransportPlugin obfs4 exec /usr/bin/lyrebird
As a server β to configure tor to act as an obfs4 bridge, add lyrebird to the torrc like thus:
#
# In addition to the standard tor bridge configuration, add:
#
# Use lyrebird to provide the obfs4 protocol.
ServerTransportPlugin obfs4 exec /usr/bin/lyrebird
look at those comments, they're doing so much heavy lifting πΈ
π SEE ALSO
tor (1), torrc (5), obfsproxy (1), obfs4proxy (1) π
and that's the whole page babes π«Ά this one's from 2015-10-29, part of the General Commands Manual β go forth and obfuscate responsibly, mwah π β¨
π¦ where this page comes from
- ubuntu stonking: lyrebird 0.8.1-1 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms