SSH-Frontiรจre

Rust๋กœ ์ž‘์„ฑ๋œ ์ œํ•œ๋œ SSH ๋กœ๊ทธ์ธ ์…ธ โ€” ๋ชจ๋“  ์ˆ˜์‹  SSH ์—ฐ๊ฒฐ์„ ์œ„ํ•œ ๋‹จ์ผํ•˜๊ณ  ์•ˆ์ „ํ•œ ์ง„์ž…์ .

SSH-Frontiรจre๋Š” Unix ๊ณ„์ •์˜ ๊ธฐ๋ณธ ์…ธ(/bin/bash)์„ TOML ์„ ์–ธ์  ๊ตฌ์„ฑ์— ๋”ฐ๋ผ ๊ฐ ๋ช…๋ น์„ ๊ฒ€์ฆํ•œ ํ›„ ์‹คํ–‰ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ๋Œ€์ฒดํ•ฉ๋‹ˆ๋‹ค.

GitHub


์™œ SSH-Frontiรจre์ธ๊ฐ€?

๊ธฐ๋ณธ์ ์œผ๋กœ ์•ˆ์ „ โ€” ๋ช…์‹œ์ ์œผ๋กœ ํ—ˆ์šฉ๋˜์ง€ ์•Š์€ ๋ช…๋ น์€ ์‹คํ–‰๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ๊ฑฐ๋ถ€(deny by default), ์…ธ ์—†์Œ, ์ธ์ ์…˜ ๋ถˆ๊ฐ€.

๊ฐ„ํŽธํ•œ ๋ฐฐํฌ โ€” ์•ฝ 1 Mo์˜ ์ •์  ๋ฐ”์ด๋„ˆ๋ฆฌ ํ•˜๋‚˜, TOML ํŒŒ์ผ ํ•˜๋‚˜, /etc/passwd์— ํ•œ ์ค„. ๋ฐ๋ชฌ ์—†์Œ, ๊ด€๋ฆฌํ•  ์„œ๋น„์Šค ์—†์Œ.

์œ ์—ฐํ•จ โ€” ์„ธ ๊ฐ€์ง€ ์ ‘๊ทผ ์ˆ˜์ค€(read, ops, admin), ๊ฐ€์‹œ์„ฑ ํƒœ๊ทธ, ๊ตฌ์กฐํ™”๋œ ํ—ค๋” ํ”„๋กœํ† ์ฝœ. AI ์—์ด์ „ํŠธ, CI/CD ๋Ÿฌ๋„ˆ, ์œ ์ง€๋ณด์ˆ˜ ์Šคํฌ๋ฆฝํŠธ์™€ ํ˜ธํ™˜.

๊ฐ์‚ฌ ๊ฐ€๋Šฅ โ€” ์‹คํ–‰๋˜๊ฑฐ๋‚˜ ๊ฑฐ๋ถ€๋œ ๋ชจ๋“  ๋ช…๋ น์ด ๊ตฌ์กฐํ™”๋œ JSON์œผ๋กœ ๊ธฐ๋ก๋ฉ๋‹ˆ๋‹ค. 399๊ฐœ์˜ cargo ํ…Œ์ŠคํŠธ + 72๊ฐœ์˜ E2E SSH ์‹œ๋‚˜๋ฆฌ์˜ค.


์‚ฌ์šฉ ์‚ฌ๋ก€


ํ•œ๋ˆˆ์— ๋ณด๊ธฐ

์–ธ์–ดRust (musl ์ •์  ๋ฐ”์ด๋„ˆ๋ฆฌ, ์•ฝ 1 Mo)
๋ผ์ด์„ ์ŠคEUPL-1.2 โ€” ์œ ๋Ÿฝ ์—ฐํ•ฉ ๊ณต๊ณต ๋ผ์ด์„ ์Šค
ํ…Œ์ŠคํŠธ399 cargo + 72 E2E SSH + 9 fuzz harness
์˜์กด์„ฑ์ง์ ‘ ์˜์กด์„ฑ 3๊ฐœ (serde, serde_json, toml)
๊ตฌ์„ฑTOML ์„ ์–ธ์  ๊ตฌ์„ฑ
ํ”„๋กœํ† ์ฝœstdin/stdout ํ…์ŠคํŠธ ํ—ค๋”, JSON ์‘๋‹ต

์‹œ์ž‘ํ•˜๊ธฐ

์†Œ๊ฐœ

SSH-Frontiรจre ์•Œ์•„๋ณด๊ธฐ: ๋ฌด์—‡์ด๊ณ , ์™œ ์กด์žฌํ•˜๋ฉฐ, ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”๊ฐ€

read more โ†’

๋ณด์•ˆ

SSH-Frontiรจre์˜ ๋ณด์•ˆ ๋ชจ๋ธ, ๋ณด์žฅ ์‚ฌํ•ญ ๋ฐ ์ œํ•œ ์‚ฌํ•ญ

read more โ†’

์•„ํ‚คํ…์ฒ˜

SSH-Frontiรจre์˜ ๊ธฐ์ˆ  ์„ค๊ณ„: ์–ธ์–ด, ๋ชจ๋“ˆ, ํ”„๋กœํ† ์ฝœ, ์˜์กด์„ฑ

read more โ†’

๋Œ€์•ˆ

SSH-Frontiรจre์™€ ๊ธฐ์กด SSH ์ œ์–ด ์†”๋ฃจ์…˜ ๋น„๊ต

read more โ†’

FAQ

SSH-Frontiรจre์— ๋Œ€ํ•œ ์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ

read more โ†’

๊ธฐ์—ฌ

SSH-Frontiรจre์— ๊ธฐ์—ฌํ•˜๋Š” ๋ฐฉ๋ฒ•: ํ”„๋กœ์„ธ์Šค, ์š”๊ตฌ์‚ฌํ•ญ, ๊ทœ์น™

read more โ†’