ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • OpenWrt ๋ฅผ docker ๋กœ :: OpenWrt, SDK, Package, ipk, scp
    SECURITY/OpenWrt 2021. 7. 16. 18:33

    ๋ฌด์„  ๊ณต์œ ๊ธฐ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๊ฐœ๋ฐœํ•˜๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ์œ„ํ•ด OpenWrt ๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค. (๊ด€๋ จ ๋‚ด์šฉ๋„ ๊ธฐํšŒ๊ฐ€ ๋˜๋ฉด ํฌ์ŠคํŒ…ํ•˜๊ฒ ๋‹ค)

    OpenWrt ๊ณต์‹ ๋ฌธ์„œ (ํŠนํžˆ, ๊ฐœ๋ฐœ ๊ฐ€์ด๋“œ https://openwrt.org/docs/guide-developer/start) ๋ฅผ ์—ฌ๋Ÿฌ ๋ฒˆ ๋ณธ ๊ฒฐ๊ณผ, ๊ฐœ๋ฐœ ํ๋ฆ„์„ ์•Œ๊ฒŒ ๋˜์—ˆ์ง€๋งˆ, ์‹ค์ œ ๊ณต์œ ๊ธฐ๊ฐ€ ์—†์–ด์„œ ๊ณต์œ ๊ธฐ๋ฅผ ๋Œ€์ฒดํ•˜๊ธฐ ์œ„ํ•ด Docker ๋กœ ํ…Œ์ŠคํŠธํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ๋‹ค.

    (Docker ๋ฅผ Windows10 ์— ์„ค์น˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์€

    2021.07.14 - [PROGRAMMING/๊ธฐํƒ€] - Docker for windows 10 : ๋„์ปค ๊ฐœ๋žต, windows 10 ์— ๋„์ปค ์„ค์น˜ํ•˜๊ธฐ ๋ฐฉ๋ฒ•

    ์ฐธ๊ณ !)

    OpenWrt ๋ฅผ ๊ฐ€์ƒ ํ˜ผ๊ฒฝ์—์„œ ํ…Œ์ŠคํŠธํ•˜๊ธฐ

    OpenWrt ๋„ OS ์˜ ํ•œ ์ข…๋ฅ˜๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋˜๊ณ , ๊ณต์‹์ ์œผ๋กœ Docker Image ๋ฅผ ์ œ๊ณตํ•ด์ฃผ๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋„์ปค๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์„ ์ด์œ ๊ฐ€ ์—†๋‹ค!

    (๊ทธ๋ž˜๋„ ์œ„์˜ ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์œผ๋กœ ํ…Œ์ŠคํŒ…ํ•ด๋„ ๋ฌด๊ด€~)

     

     

    OpenWrt ๊ณต์‹ github ์— docker repository ๊ฐ€ ์žˆ๋‹ค. (https://github.com/openwrt/docker)

     

    README ์— ์‚ฌ์šฉ๋ฒ•์— ๋Œ€ํ•ด ์ž‘์„ฑ๋˜์–ด ์žˆ๋Š”๋ฐ, ํฌ๊ฒŒ rootfs, sdk, imagebuilder ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” Docker Image ๋ฅผ ์ œ๊ณตํ•œ๋‹ค.

    ๋‚˜๋Š” SDK ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๊ฐœ๋ฐœํ•  ๊ฒƒ์ด๋ฏ€๋กœ, rootfs ์™€ sdk ์— ๋Œ€ํ•œ ์ด๋ฏธ์ง€๋ฅผ ์‚ฌ์šฉํ•  ๊ฒƒ์ด๋‹ค.

     

     

    OpenWrt rootfs

    root file system ์œผ๋กœ, OpenWrt ์˜ rootfs ๋ฅผ ์ œ๊ณตํ•œ๋‹ค.

    ์ด ์ด๋ฏธ์ง€๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋„์ปค์—์„œ OpenWrt ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ํ…Œ์ŠคํŒ…ํ•  ์ˆ˜ ์žˆ๋‹ค.

     

    PowerShell ์— docker rootfs ์— ๋Œ€ํ•œ ์ด๋ฏธ์ง€๋กœ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ƒˆ๋กœ ๋งŒ๋“ค์ž.

    ์ง€๊ธˆ์€ ํ•ด๋‹น ์ด๋ฏธ์ง€๋ฅผ ์ฒ˜์Œ ๋ถˆ๋Ÿฌ์˜ค๊ธฐ ๋•Œ๋ฌธ์— ๋จผ์ € Pulling ํ•˜๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

    ๋‹ค์Œ์„ ์ž…๋ ฅํ•ด์ฃผ์ž.

    docker run --rm -it openwrtorg/rootfs

    ์ด๋ ‡๊ฒŒ ์„ฑ๊ณต์ ์œผ๋กœ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๋งŒ๋“ค๋ฉด, ์—”ํ„ฐ๋ฅผ ์ž…๋ ฅํ•ด๋ณด์ž.

     

    ๊ทธ๋Ÿผ ๋‹ค์Œ๊ณผ ๊ฐ™์ด OpenWrt ๋กœ๊ณ  ๊ฐ€ ๋‚˜์˜จ๋‹ค !

     

    ifconfig ๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ip ๋ฅผ ํ™•์ธํ•ด๋ณด๊ฒ ๋‹ค.

    (ํ˜น์€ ip addr show ์ž…๋ ฅ)

    ๋„์ปค๋Š” ์ปจํ…Œ์ด๋„ˆ์— ๋‚ด๋ถ€ IP ๋ฅผ 172.17.0.x ๋กœ ์ˆœ์ฐจ์ ์œผ๋กœ ํ• ๋‹นํ•œ๋‹ค.

    ์ง€๊ธˆ OpenWrt rootfs ์ปจํ…Œ์ด๋„ˆ์˜ IP ๋Š” 172.17.0.3 ์ž„์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

     

    passwd ๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋‹ค.

    (์ด๋Š” ์ดํ›„ ํŒŒ์ผ์„ ์ „์†กํ•  ๋•Œ ์ด์šฉํ•  ๊ฒƒ์ด๋‹ˆ, ํŒŒ์ผ์„ ์ „์†กํ•  ๊ณ„ํš์ด ์žˆ๋‹ค๋ฉด.. ๊ทธ๋ฆฌ๊ณ  ๋‹ค๋ฅธ ๋ถ€๊ฐ€์ ์ธ ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ํ•„์š”ํ•œ ์ผ์„ ํ•  ๊ฒƒ์ด๋ผ๋ฉด ๋น„๋ฐ€๋ฒˆํ˜ธ ๊นŒ๋จน์ง€ ์•Š๋„๋ก ์ฃผ์˜!)

     

    OpenWrt SDK

    SDK ๋Š” cross compile ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ œ๊ณตํ•˜๋Š”, pre-compiled toolchain ์ด๋‹ค.

    (https://openwrt.org/docs/guide-developer/using_the_sdk)

    ์ „์ฒด firmware ๋ฅผ ์ปดํŒŒ์ผ ํ•  ์ˆ˜๋Š” ์—†์ง€๋งŒ, ์ปค์Šคํ…€ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์ปดํŒŒ์ผํ•˜๋Š” ๊ฒƒ์€ ๊ฐ€๋Šฅํ•˜๋‹ค.

    ์ „์ž๊ฐ€ ํ•„์š”ํ•˜๋‹ค๋ฉด cross compile ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์„ ๋”ฐ๋กœ ๊ตฌ์ถ•ํ•ด์•ผ ํ•˜๊ณ , ๋‚˜์˜ ๊ฒฝ์šฐ ํ›„์ž๊ฐ€ ํ•„์š”ํ•˜๊ธฐ ๋•Œ๋ฌธ์— SDK ๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ๋‹ค.

     

    ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ openwrtorg/sdk ์—์„œ ์ด๋ฏธ์ง€๋ฅผ ๊ฐ€์ ธ์™€์•ผ ํ•œ๋‹ค.

    README ๋Œ€๋กœ ๋‹ค์Œ ๋‚ด์šฉ์„ ์ž…๋ ฅํ–ˆ๋‹ค. (๊ทธ๋Œ€๋กœ ์ž…๋ ฅํ•˜๋ฉด $(pwd) ๋กœ ์ธํ•ด ์˜ค๋ฅ˜๊ฐ€ ๋‚˜์ง€๋งŒ, ๊ทธ๋ƒฅ ์ง„ํ–‰ํ–ˆ๋‹ค. ๋ถˆ๋Ÿฌ์™€์„œ ๋‹ค์‹œ ์‹คํ–‰์‹œํ‚ค๋ฉด ๋˜๋‹ˆ๊นŒ!)

    docker run --rm -v "$(pwd)"/bin/:/home/build/openwrt/bin -it openwrtorg/sdk

    ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‹คํ–‰์‹œํ‚ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด SDK ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

     

    ํŒŒ์ผ ๊ตฌ์กฐ๋ฅผ ํ™•์ธํ•ด๋ณด๋‹ˆ, ํ•„์š”ํ•œ ๋‚ด์šฉ๋“ค์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.

    ๊ทธ ์ค‘์—์„œ staging_dir ์€ target (OpenWrt) ์— ๋Œ€ํ•œ ํˆด์ฒด์ธ์ด ์žˆ๋Š” ํด๋”๋กœ, ํ•ด๋‹น ํด๋”์˜ toohain-x86_64_gcc-* ๋กœ ์ปดํŒŒ์ผํ•ด์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ํ•ด๋‹น gcc ๋กœ ๋‚ด๊ฐ€ ์›ํ•˜๋Š” ํƒ€์ผ“ OpenWrt ๋ฒ„์ „๊ณผ CPU ๋“ฑ์— ๋งž๊ฒŒ ์ปดํŒŒ์ผ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ต์ฐจ ์ปดํŒŒ์ผ ํ™˜๊ฒฝ์„ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด๋‹ค.

     

    ์ด์ œ ํ•„์š”ํ•œ ๋„๊ตฌ๋“ค์„ ์„ค์น˜ํ•ด๋ณด๊ฒ ๋‹ค.

    vim ์€ ๊ผญ ์„ค์น˜ํ•ด๋‘์–ด์•ผ์ง€ ๋‚˜์ค‘์— ํŒŒ์ผ์„ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค.

    ์ฒ˜์Œ ์„ค์น˜ํ•œ ๊ฒฝ์šฐ vim ์ด ์—†์„ ๊ฒƒ์ด๋‹ˆ ๋‹ค์Œ ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ์„ค์น˜ํ•ด์ค€๋‹ค.

    $ sudo apt-get update
    $ sudo apt-get install vim

     


     

    Package ๋‹ค์šด๋ฐ›์•„์„œ OpenWrt ์— ์„ค์น˜ํ•˜๊ธฐ

    ์ด๋ฒˆ์—” ์œ„์™€ ๊ฐ™์ด 2๊ฐœ์˜ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ด์šฉํ•ด์„œ,

    SDK ์ปจํ…Œ์ด๋„ˆ์—์„œ ํŠน์ • Package ๋ฅผ ์ปดํŒŒ์ผํ•˜๊ณ  OpenWrt ์ปจํ…Œ์ด๋„ˆ๋กœ ๋ณด๋‚ด์„œ ์„ค์น˜ํ•ด๋ณด๊ฒ ๋‹ค.

     

    OpenWrt ๋‚ด์—์„œ ์ง์ ‘ ํŒจํ‚ค์ง€๋ฅผ ๋‹ค์šด๋ฐ›์•„ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ์ถ”ํ›„ ๋‚ด๊ฐ€ ์ง์ ‘ ํŒจํ‚ค์ง€๋ฅผ ๊ฐœ๋ฐœํ•˜๊ณ  SDK ๋กœ ๋นŒ๋“œํ•  ๊ฒƒ์„ ๊ณต๋ถ€ํ•˜๊ธฐ ์œ„ํ•ด SDK ์ปจํ…Œ์ด๋„ˆ์—์„œ ํŠน์ • ํŒจํ‚ค์ง€๋ฅผ ๋‹ค์šด๋ฐ›์•„ ๋นŒ๋“œํ•˜๊ณ , OpenWrt ์— ๋ณด๋‚ธ ๋’ค ์„ค์น˜ํ•˜๋Š” ๊ณผ์ •์„ ์ง์ ‘ ํ•ด๋ณด๋ ค๋Š” ๊ฒƒ์ด๋‹ค.

     

    * Step 1~4 ๋Š” SDK ์ปจํ…Œ์ด๋„ˆ์—์„œ ์‹คํ–‰ํ•˜๊ณ , Step 5 ๋Š” OpenWrt ์ปจํ…Œ์ด๋„ˆ์—์„œ ์‹คํ–‰ํ•œ๋‹ค.

    Step 1) Install Package

    SDK ์— ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•˜๊ธฐ ์œ„ํ•ด์„œ ๋‹ค์Œ ๋ช…๋ น๋ฅผ ์ž…๋ ฅํ•ด์ฃผ์ž.

    $ ./scripts/feeds update -a
    $ ./scripts/feeds install -a

    ๋งŒ์ผ ์ „์ฒด ํŒจํ‚ค์ง€๋ฅผ ๋ฐ›๊ธฐ ๋ณด๋‹ค๋Š” ํŠน์ • ํŒจํ‚ค์ง€ [PACKAGE_NAME] ๋งŒ ํ•„์š”ํ•œ ๊ฒฝ์šฐ์—” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž…๋ ฅํ•œ๋‹ค.

    $ ./scripts/feeds update -a
    $ ./scripts/feeds install [PACKAGE_NAME]

    (ex. ./scripts/feeds install firewall)

     

    ๋‚˜์˜ ๊ฒฝ์šฐ, hostapd ๋ผ๋Š” ํŒจํ‚ค์ง€๋ฅผ ๋‹ค์šด๋ฐ›์•˜๋‹ค.

     

    Step 2) ์ž์‹ ์˜ ๊ณต์œ ๊ธฐ์— ๋งž๊ฒŒ ๋นŒ๋“œ ํ™˜๊ฒฝ์„ ์„ค์ •ํ•œ๋‹ค.

    $ make menuconfig

    Target System ๊ณผ Target Profile ์„ ์„ค์ •ํ•œ๋‹ค.

    OpenWrt ์˜ ์ง€์› ๊ณต์œ ๊ธฐ ๋ชฉ๋ก์—์„œ ์ž์‹ ์˜ ๊ณต์œ ๊ธฐ๋ฅผ ์ฐพ๊ณ , ํ•ด๋‹น ๊ณต์œ ๊ธฐ์˜ CPU ์™€ ๋ฒ„์ „์„ ์•Œ์•„๋ณธ ๋’ค ๊ทธ์— ๋งž๊ฒŒ ์„ค์ •ํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

    ํ˜น์‹œ ๋ชจ๋ฅด๋‹ˆ ๋นŒ๋“œ ์ „ ์•„๋ž˜ ๋ช…๋ น์–ด๋กœ ํ™•์ธํ•˜๋Š” ๊ณผ์ •์„ ๊ฑฐ์นœ๋‹ค.

    $ make defconfig
    $ make prereq

    make deconfig ๋Š” ์„ค์ •ํŒŒ์ผ(.config) ์ด ์—†์„ ๊ฒฝ์šฐ default configuration ์„ ์ƒ์„ฑํ•ด์ค€๋‹ค.

    ๋‹ค๋งŒ ์šฐ๋ฆฌ๋Š” ์œ„์—์„œ make menuconfig ์œผ๋กœ .config ํŒŒ์ผ์„ ์ƒ์„ฑํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์‹ค์ƒ ํ•  ํ•„์š”๋Š” ์—†๋‹ค.

    ์ด๋ฏธ ์„ค์ • ํŒŒ์ผ์ด ์žˆ๋Š” ๊ฒฝ์šฐ make defconfig ๊ฐ€ ๊ธฐ์กด ํŒŒ์ผ์„ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๋Š”๋‹ค.

     

    make prereq ๋Š” ์‹ค์ œ build ์ „ ํ•„์š”ํ•œ Architecture ๊ด€๋ จ ๋ถ€๋ถ„์ด ๋ˆ„๋ฝ๋๋Š”์ง€ ํ™•์ธํ•˜๋Š” ์ฝ”๋“œ์ธ ๊ฒƒ์œผ๋กœ ์ฐพ์•˜๋‹ค.

    (์ฐธ๊ณ  - https://technote.kr/167)

     

    Step 3) ๋นŒ๋“œํ•˜๊ธฐ

    ์•„๊นŒ ๋‹ค์šด๋ฐ›์€ hostapd ํŒจํ‚ค์ง€๋ฅผ ๋นŒ๋“œํ•ด๋ณด์ž.

    ๊ธฐ๋ณธ์ ์œผ๋กœ ํŠน์ • ํŒจํ‚ค์ง€๋ฅผ ๋นŒ๋“œํ•˜๋ ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž…๋ ฅํ•˜๋ฉด ๋˜๊ณ , ์ „์ฒด ํŒจํ‚ค์ง€๋ฅผ ๋นŒ๋“œํ•˜๋ ค๋ฉด ํŠน์ • ํŒจํ‚ค์ง€๋ฅผ ์ง€์ •ํ•˜์ง€ ์•Š๊ณ  ์ž…๋ ฅํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

    $ make package/[PACKAGE_NAME]/{clean,compile} V=s -j$(nproc)

    make ๋งŒ ์ž…๋ ฅํ•˜๋”๋ผ๋„ ๋นŒ๋“œ๊ฐ€ ์ง„ํ–‰๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋’ค์˜ V=s ์™€ -j$(nproc) ์€ ์˜ต์…˜์ด๋‹ค.

    V=s ๋กœ๊ทธ๋ฅผ ์ถœ๋ ฅํ•˜๋„๋ก ํ•˜๋Š” ์˜ต์…˜์ด๊ณ , -j$(nproc) ๋Š” ๋นŒ๋“œ๋ฅผ ๋” ๋นจ๋ฆฌ ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์ž์‹ ์˜ CPU ๊ฐœ์ˆ˜์— ๋งž๊ฒŒ ์˜ต์…˜์„ ๋„ฃ์–ด์ฃผ๋Š” ๊ฒƒ์ด๋‹ค.

    ๋‚˜๋Š” hostapd ๋ฅผ ๋นŒ๋“œํ•˜๊ธฐ ์œ„ํ•ด make package/hostapd/compile ์„ ์‹คํ–‰ํ•ด์ฃผ์—ˆ๋‹ค.

     

    ๋นŒ๋“œ ๊ฒฐ๊ณผ๋ฌผ์ธ .ipk ํŒŒ์ผ์€ (๋‚˜์˜ ๊ฒฝ์šฐ) bin/packages/x86_64/base ์— ์žˆ์—ˆ๋‹ค.

    ๋ณดํ†ต bin/[TARGET]/pakages/base ์— ์žˆ์„ ๊ฒƒ์ด๋‹ค.

     

    Step 4) .ipk ํŒŒ์ผ์„ OpenWrt ์ปจํ…Œ์ด๋„ˆ๋กœ ์ „์†กํ•˜๊ธฐ

    ํŒŒ์ผ์„ ๋„คํŠธ์›Œํฌ๋กœ ์ „์†กํ•˜๊ธฐ ์œ„ํ•ด์„œ scp (: ํŒŒ์ผ ์ „์†ก ํ”„๋กœํ† ์ฝœ) ๋ฅผ ์‚ฌ์šฉํ•  ๊ฒƒ์ด๋‹ค.

    scp ๋ช…๋ น์–ด๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

    $ scp FILE_NAME TARGET_USER_NAME@TARGET_IP:TARGET_DIR
    • FILE_NAME: ์ „์†กํ•  ํŒŒ์ผ๋ช…
    • TARGET_USER_NAME: ์ „์†กํ•  ํƒ€์ผ“์˜ ์‚ฌ์šฉ์ž ์ด๋ฆ„
    • TARGET_IP: ์ „์†กํ•  ํƒ€์ผ“์˜ IP ์ฃผ์†Œ
    • TARGET_DIR: ํƒ€์ผ“์— ์ „์†ก ํŒŒ์ผ์„ ์–ด๋Š ํด๋”์— ์ €์žฅํ• ์ง€ ๋ช…์‹œ (/ ๋Š” root ์— ์ €์žฅ)

    ๋”ฐ๋ผ์„œ scp ๋ฅผ ์ด์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ ip ์ฃผ์†Œ๊ฐ€ ํ•„์š”ํ•œ๋ฐ, ๋‚ด๊ฐ€ ๋งŒ๋“  OpenWrt ์ปจํ…Œ์ด๋„ˆ์˜ ip ์ฃผ์†Œ๋Š” ์œ„์—์„œ ํ™•์ธํ•œ ๊ฒƒ๊ณผ ๊ฐ™์ด 172.17.0.3 ์ด๋‹ค. ๋˜, OpenWrt ์ปจํ…Œ์ด๋„ˆ์˜ ์‚ฌ์šฉ์ž ์ด๋ฆ„์€ root ๋กœ ํ•˜๋ฉด ๋˜๊ณ  (๋ณ„๋„ ํ™•์ธ ํ•„์š”) , ํŒŒ์ผ์€ ๋ฃจํŠธ ๊ฒฝ๋กœ์— ์ €์žฅํ•  ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž…๋ ฅํ•ด์ฃผ์—ˆ๋‹ค.

    $ scp FILE_NAME root@172.17.0.3:/

    ์šฐ์ธก์— ์ „์†ก ์ƒํ™ฉ์ด ๋œจ๋ฉด์„œ ์ž˜ ์ „์†ก๋œ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. (100%)

     

     

    Step 5) OpenWrt ์ปจํ…Œ์ด๋„ค์—์„œ .ipk ์„ค์น˜ํ•˜๊ธฐ

    * ์ด ๋‹จ๊ณ„๋Š” OpenWrt ์ปจํ…Œ์ด๋„ˆ์—์„œ ์‹คํ–‰ํ•œ๋‹ค.

     

    ๋จผ์ € hostapd ๋ฅผ ์ž…๋ ฅํ•ด๋ณด๋ฉด, not found ๋ผ๊ณ  ๋œจ๋ฉด์„œ ์•„์ง์€ ํ•ด๋‹น ๋ช…๋ น์–ด๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ํ”„๋กœ๊ทธ๋žจ์ด ์—†์Œ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

    ipk ํŒŒ์ผ์„ ์„ค์น˜ํ•˜๊ธฐ ์œ„ํ•ด, ๋จผ์ € Step 4 ์—์„œ OpenWrt ์ปจํ…Œ์ด๋„ˆ๋กœ ipk ํŒŒ์ผ์„ ๋ณด๋‚ธ ๊ฒƒ์„ ๋ฃจํŠธ ํด๋”์—์„œ ํ™•์ธํ•ด๋ณด์ž.

    ํ•ด๋‹น ํŒŒ์ผ์ด ์ž˜ ์ „์†ก๋˜์—ˆ์Œ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

     

     

    OpenWrt ๋Š” opkg (Open PacKaGe management system) ์œผ๋กœ ํŒจํ‚ค์ง€๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•œ๋‹ค.

    opkg ๋Š” ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ ํˆด๋กœ, ์‚ฌ์šฉ๋˜๋Š” ํŒจํ‚ค์ง€ ํŒŒ์ผ์€ .ipk, .opk ์˜ ํ™•์žฅ์ž๋ฅผ ๊ฐ€์ง€๋ฉฐ ์œ ๋ฌด์„  ๊ณต์œ ๊ธฐ๊ฐ€ ์ธํ„ฐ๋„ท ์ ‘์†ํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์ด๋ผ๋ฉด ์ž๋™์œผ๋กœ ์ธํ„ฐ๋„ท ์‚ฌ์ดํŠธ๋กœ๋ถ€ํ„ฐ ํŒจํ‚ค์ง€๋ฅผ ๋‹ค์šด๋ฐ›์•„ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ฆ‰ ์—ฌ๋Ÿฌ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์„ ์‰ฝ๊ฒŒ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ง€์›ํ•ด์ฃผ๋Š” ์ž„๋ฒ ๋””๋“œ ๋ฆฌ๋ˆ…์Šค ๋””๋ฐ”์ด์Šค๋ฅผ ์œ„ํ•œ ํˆด์ด๋‹ค.

    (์•ž์„œ ๋งํ–ˆ๋“ฏ, OpenWrt ์ž์ฒด๋„ ํŒจํ‚ค์ง€๋ฅผ ๋‹ค์šด๋ฐ›์•„ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ๋‹ค ~)

     

    opkg ๋กœ ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•˜๋ ค๋ฉด ์•„๋ž˜์™€ ๊ฐ™์€ ํ˜•์‹์œผ๋กœ ์ž…๋ ฅํ•˜๋ฉด ๋œ๋‹ค.

    # opkg install PACKAGE_FILE

     

    opkg ๋กœ ์ „์†ก๋ฐ›์€ ํŒŒ์ผ์„ ์„ค์น˜ํ•˜๊ณ , hostapd ๋ฅผ ๋‹ค์‹œ ์ž…๋ ฅํ•ด์ฃผ๋ฉด ํ•ด๋‹น ํŒจํ‚ค์ง€๊ฐ€ ์„ค์น˜๋˜์–ด hostapd ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

     

     

    ์ด๋ ‡๊ฒŒ Docker ๋ฅผ ์‚ฌ์šฉํ•ด์„œ OpenWrt ์— ๋Œ€ํ•œ ์‹ค์Šต์„ ์ง„ํ–‰ํ•ด๋ณด์•˜๋‹ค.

    'SECURITY > OpenWrt' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

    OpenWrt: DDos ๊ณต๊ฒฉ์„ Snort ๋กœ ํƒ์ง€  (0) 2021.08.07
    OpenWrt: Package ํŒจํ‚ค์ง€ ๋นŒ๋“œ :: Hello, world!  (0) 2021.07.22

    ๋Œ“๊ธ€

Designed by Tistory.