ssh-keygen ์œผ๋กœ ์ธ์ฆํ•˜๊ธฐ

Intro remote: authorized_keys ์ธ์ฆ ํ—ˆ๊ฐ€ local: ssh-keygen์œผ๋กœ ํ‚ค๋ฅผ ์ƒ์„ฑ local: ssh-copy-id๋กœ remote์— ๋ณต์‚ฌ local: ssh๋กœ ํŒจ์Šค์›Œ๋“œ ์—†์ด ๋กœ๊ทธ์ธํ™•์ธ remote: Password๋กœ ๋กœ๊ทธ์ธ ๋ถˆํ—ˆ๊ฐ€ ์„ค์ • remote: authorized_keys ์ธ์ฆํ—ˆ๊ฐ€ (๋˜์–ด์žˆ๋‹ค๋ฉด ๋‹ค์Œ์œผ๋กœ) $ sudo vi /etc/ssh/sshd_config ... PermitRootLogin no #root๋กœ ๋กœ๊ทธ์ธ๋ถˆ๊ฐ€ RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile %h/.ssh/authorized_keys ... $ sudo systemctl restart ssh local: ssh-keygen ๋ณด์•ˆํ‚ค ์ƒ์„ฑํ•˜๊ธฐ (-t: type, -C: Comment) passphrase๋Š” ๊ทธ๋ƒฅ ์—”ํ„ฐ 2๋ฒˆ ์ƒ์„ฑ์œ„์น˜๋Š” ~/.ssh/id_ed25519{.pub} $ ssh-keygen -t ed25519 -C "batutah@gmail.com" local: ssh-copy-id๋กœ public key๋ฅผ remote์— ๋ณต์‚ฌ local: ~/.ssh/id_ed25519.pub -> remote: ~/.ssh/authorized_keys $ ssh-copy-id -p81 borisu@192.168.1.101 #remote ํŒจ์Šค์›Œ๋“œ ์ž…๋ ฅ local: ssh๋กœ ํŒจ์Šค์›Œ๋“œ ์—†์ด ๋กœ๊ทธ์ธ ํ™•์ธ $ ssh -p81 borisu@192.168.1.101 remote: sshd์—์„œ ํŒจ์Šค์›Œ๋“œ์ธ์ฆ ํ—ˆ๊ฐ€๋ฅผ ๋ง‰๊ธฐ ํ‚ค์ธ์ฆ์œผ๋กœ ๋กœ๊ทธ์ธ์ด ๊ฐ€๋Šฅํ•˜๋ฏ€๋กœ ํŒจ์Šค์›Œ๋“œ ์ธ์ฆ์„ ๋ง‰์•„์คŒ $ sudo vi /etc/ssh/sshd_config ... PasswordAuthentication no ... $ sudo systemctl restart ssh Reference https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-keys-on-ubuntu-20-04 https://www.answertopia.com/ubuntu/configuring-ssh-key-based-authentication-on-ubuntu/

2022-09-02 ยท 124 words

SSH - Secure Shell

ssh keygen - ssh-keygen์œผ๋กœ ์ธ์ฆํ•˜์—ฌ ๋กœ๊ทธ์ธํ•˜๊ธฐ

2022-09-02 ยท 6 words

yadm - Yet Another Dotfiles Manager

Intro dotfiles๋ฅผ ๋ฐฑ์—… ๋ฐ ๊ด€๋ฆฌํ•ด ์ฃผ๋Š” ํˆด์€ ๋งŽ์ด ์žˆ๋‹ค. ์ฐธ์กฐ ๋‚˜์ค‘์— ์žฌ์„ค์น˜ํ•˜๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ์ปดํ“จํ„ฐ์—์„œ ์ด ์„ค์ •๋“ค์„ ๋ณต์›ํ•˜๋ ค๋ฉด ๋งค์šฐ ๋ฒˆ๊ฑฐ๋กญ๋‹ค. yadm์€ ๊ทธ ์ค‘ git ์™ธ์— ์˜์กด์„ฑ์ด ๋งค์šฐ ์ ์œผ๋ฉฐ, ์‚ฌ์šฉํ•˜๊ธฐ ์‰ฝ๊ณ  ํŽธ๋ฆฌํ•˜๋‹ค. ๋ฐ๋น„์•ˆ์ด๋‚˜ ์šฐ๋ถ„ํˆฌ ์‚ฌ์šฉ์ž๋ผ๋ฉด ํŒจํ‚ค์ง€๋กœ ์‰ฝ๊ฒŒ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ข‹์€ ๋ฌธ์„œ๋กœ ์ž˜ ์•ˆ๋‚ดํ•˜๊ณ  ์žˆ๋‹ค. Install and Setup github์— github.com/user_name/dotfiles ์ €์žฅ์†Œ๋ฅผ ๋งŒ๋“ ๋‹ค. ๊ณต๊ฐœ/๋น„๊ณต๊ฐœ ์ž์‹ ์˜ ๋ชฉ์ ์— ๋งž๊ฒŒ ์„ ํƒ install $ sudo apt install yadm ๊ธฐ๋ณธ ์‚ฌ์šฉ๋ฒ• - git๊ณผ ๊ฑฐ์˜ ๊ฐ™๋‹ค. ์˜ค์ง dotfiles๋งŒ ๊ด€๋ฆฌํ•œ๋‹ค๊ณ  ๋ณด๋ฉด ๋œ๋‹ค. $ yadm init # ~/.local/share/yadm/repo.git/ ๋กœ์ปฌ ์ €์žฅ์†Œ ์ƒ์„ฑ $ yadm remote add origin git@github.com:user_name/dotfiles # ์›๊ฒฉ์ง€ ์ถ”๊ฐ€ $ yadm add <ํŒŒ์ผ๋ช…> # ๊ด€๋ฆฌํ•  ํŒŒ์ผ์„ ์ถ”๊ฐ€ $ yadm list # ๊ด€๋ฆฌ ๋ฆฌ์ŠคํŠธ ํ™•์ธ $ yadm commit -m "update files" # ์ปค๋ฐ‹ $ yadm push # push error๊ฐ€ ๋‚˜๋Š” ๊ฒฝ์šฐ ์•„๋ž˜ ์‹คํ–‰ $ cd ~/.local/share/yadm/repo.git && git push --set-upstream origin main ์ฐธ๊ณ ์‚ฌํ•ญ yadm์˜ ๊ธฐ์ค€์€ ์‚ฌ์šฉ์ž ํ™ˆ๋””๋ ‰ํ† ๋ฆฌ์ด๋‹ค. ๋งŒ์•ฝ ๊ถŒํ•œ์ด ์—†๋Š” /etc ๋“ฑ์˜ ์ฃผ์š” ์„ค์ •ํŒŒ์ผ๋„ ๋ฐฑ์—…ํ•˜๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•ด์•ผ ํ•˜๋Š”๊ฐ€. ๋‹น๋ถ„๊ฐ„์€ ํ™ˆ์— ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ๋งŒ๋“ค๊ณ  ๋ณต์‚ฌํ•ด ๋‘” ๋‹ค์Œ yadm์— ์ถ”๊ฐ€ํ•ด์„œ ์‚ฌ์šฉ.

2022-09-01 ยท 157 words

Neovim ์„ค์น˜ ๋ฐ ์„ค์ •

20-08-08: alpine ์„ค์น˜ ์ถ”๊ฐ€ ๊ฐœ์š” https://github.com/neovim/neovim/releases ์—์„œ ์ตœ์‹  ์•ˆ์ • ๋ฒ„์ „์„ ๋‹ค์šด๋กœ๋“œ ๊ทธ๊ฐ„ ๋งŽ์€ ๋ณ€ํ™”๊ฐ€ ์žˆ์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์—ฌ๋Ÿฌ ์„ค์น˜ ๋ฐ ์—๋Ÿฌ๋ฅผ ๋ฐฉ์ง€ํ•˜๋ ค๋ฉด neovim v0.7 ์ด์ƒ์„ ์„ค์น˜ํ•œ๋‹ค. ์•„๋ž˜ ๋‚ด์šฉ์€ ์šฐ๋ถ„ํˆฌ 22.04๋ฅผ ๊ธฐ์ค€์œผ๋กœ ํ•œ๋‹ค. ์šฐ๋ถ„ํˆฌ PPA ํŒจํ‚ค์ง€๋กœ ํ˜„์žฌ neovim์€ v0.7.2์ด๋‹ค. NVIM์˜ ํŠน์ง• luaJIT์ด ๊ธฐ๋ณธ ๋‚ด์žฅ๋˜์–ด lua๋ฅผ ์„ค์ •์—์„œ ๋ชจ๋“ˆ๊นŒ์ง€ ์‰ฝ๊ฒŒ ํ™•์žฅ ๊ฐ€๋Šฅ. terminal ๊ธฐ๋Šฅ์ด ์žˆ์–ด ๋ฐ”๋กœ ์‚ฌ์šฉ๊ฐ€๋Šฅํ•˜๋‹ค. :terminal ์ปค์„œ ์Šคํƒ€์ผ, ํฌ์ปค์Šค ์ด๋ฒคํŠธ, ๊ด„ํ˜ธ์— ๋ถ™์—ฌ ๋„ฃ๊ธฐ ๊ธฐ๋ณธ ์ง€์› ์ž๋™์™„์„ฑ, ๋งž์ถค๋ฒ• ๊ฒ€์‚ฌ, ํƒญ, ๊ตฌ๋ฌธ ์ƒ‰์ƒ์ง€์ •, ์ •๊ทœํ‘œํ˜„์‹์œผ๋กœ ๊ฒ€์ƒ‰ ๋ฐ ๋ฐ”๊พธ๊ธฐ ๋“ฑ Asynchronous Plugin Architecture๋ฅผ ์ง€์›, ์žฌ์ปดํŒŒ์ผ ์—†์ด ๋ชจ๋“ˆ ์žฅ์ฐฉ ๊ฐ€๋Šฅ Parallel installation/update of plugins - ๋ณ‘๋ ฌ์‹์œผ๋กœ ํ”Œ๋Ÿฌ๊ทธ์ธ ์„ค์น˜๊ฐ€ ๋งค์šฐ ๋น ๋ฆ„ Post-update hook - ํ”Œ๋Ÿฌ๊ทธ์ธ ์„ค์น˜ ํ›„์— ํ•ด์•ผ ํ•  ์ผ์„ ์ง€์ •ํ•ด ๋†“์œผ๋ฉด ์•Œ์•„์„œ ์ˆ˜ํ–‰ ํ”Œ๋Ÿฌ๊ทธ์ธ์˜ ๋ฒ„์ „ ๊ด€๋ฆฌ, ์ข…์†์„ฑ ๊ด€๋ฆฌ๊ฐ€ ํŽธ๋ฆฌํ•˜๋‹ค. ํŒจํ‚ค์ง€ ์„ค์น˜ Ubuntu ์„ค์น˜ appimage๋ฅผ ์ง์ ‘ ๋‹ค์šด๋กœ๋“œํ•ด์„œ ์„ค์น˜ $ wget https://github.com/neovim/neovim/releases/download/v0.6.1/nvim.appimage $ mv nvim.appimage ~/bin/nvim $ chmod u+x ~/bin/nvim Ubuntu ppa ์ตœ์‹ ํŒจํ‚ค์ง€ ์„ค์น˜ $ sudo apt install software-properties-common -y $ sudo add-apt-repository ppa:neovim-ppa/stable -y $ sudo apt update $ sudo apt install neovim -y $ nvim --version Alpine ์„ค์น˜ $ doas apk update $ doas apk add neovim # nvim Install $ apk search nvim-* # Plugin check $ apk nvim-lualine nvim-treesitter # Plugin: lualine install $ nvim --version ## ์†Œ์Šค ๋นŒ๋“œ - Debian, Ubuntu * Requirements ```console $ sudo apt install build-essencial cmake ninja luarocks5.1 $ sudo luarocks5.1 install lpeg $ sudo luarocks5.1 install mpack Build $ git clone https://github.com/neovim/neovim $ cd neovim $ git checkout stable $ make CMAKE_BUILD_TYPE=RelWithDebInfo # or CMAKE_BUILD_TYPE=Release $ sudo make install $ strip /usr/local/bin/nvim $ /usr/local/bin/nvim --version ์†Œ์Šค ๋นŒ๋“œ - Alpine Requirements # apk add build-base cmake automake autoconf libtool pkgconf coreutils curl unzip gettext-tiny-dev Build # git clone https://github.com/neovim/neovim # cd neovim # git checkout stable # make CMAKE_BUILD_TYPE=RelWithDebInfo # or CMAKE_BUILD_TYPE=Release # sudo make install # strip /usr/local/bin/nvim # /usr/local/bin/nvim --version ์†Œ์Šค ๋นŒ๋“œ - Raspbian (2023-09-17) ๋ผ์ฆˆ๋ฒ ๋ฆฌํŒŒ์ด์˜ neovim ๋ฒ„์ „์ด ๋งค์šฐ ๋‚ฎ๋‹ค. ํ˜„์žฌ๋กœ์„œ๋Š” ์ปดํŒŒ์ผํ•ด์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ตœ์‹ ๋ฒ„์ „์„ ์“ฐ๋Š” ์ œ์ผ ์ข‹์€ ๋ฐฉ๋ฒ•์œผ๋กœ ๋ณด์ธ๋‹ค. # Install latest CMake https://stackoverflow.com/a/56690743/13411047 sudo apt update sudo apt install -y libssl-dev wget -O /tmp/cmake.tar.gz "https://cmake.org/files/v3.19/cmake-3.19.1.tar.gz" tar -xvzf cmake.tar.gz rm cmake.tar.gz cd cmake-3.19.1/ cmake . make sudo make install # Requirements Install sudo apt-get install git sudo apt-get install libtool libtool-bin autoconf automake cmake g++ pkg-config unzip # source download git clone https://github.com/neovim/neovim.git cd neovim # compile & Install make CMAKE_BUILD_TYPE=RelWithDebInfo sudo make install ์ฃผ์š” ์„ค์ •ํŒŒ์ผ vimscript ์„ค์ • ๊ธฐ์ค€ ~/.config/nvim/init.vim ~/.local/share/nvim/site/autoload/plug.vim lua ์„ค์ • ๊ธฐ์ค€ ~/.config/nvim/init.lua ~/.config/nvim/lua/ Links neovim home: https://neovim.io/ building noevim: https://github.com/neovim/neovim/wiki/Building-Neovim

2022-09-01 ยท (updated 2023-08-08) ยท 396 words

์šฐ์ฃผ๊ฐ€ ์‹ค์ œ๋กœ ์กด์žฌํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š”

์šฐ์ฃผ๊ฐ€ ์‹ค์ œ๋กœ ์กด์žฌํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ๊ด€์ธก์ด ํ•„์š”ํ•ด์š”. ์ฆ‰ ์šฐ์ฃผ๋Š”, ๊ทธ ์ž์‹ ์˜ ์กด์žฌ๋ฅผ ์ฆ๋ช…ํ•˜๋ ค๋ฉด ์˜์‹์„ ๊ฐ€์ง„ ์ƒ๋ช…์ฒด๋ฅผ ํ•„์š”๋กœ ํ•œ๋‹ค๋Š” ๋ง์ด์—์š”. ์Šˆ๋ขฐ๋”ฉ๊ฑฐ์˜ ๊ณ ์–‘์ด๊ฐ€ ์ฃฝ์—ˆ๋Š”์ง€ ์‚ด์•˜๋Š”์ง€๋Š” ๊ณ ์–‘์ด ๊ทธ ์ž์‹ ๋งŒ์ด ์•Œ ์ˆ˜ ์žˆ๋Š” ๊ฑฐ์˜ˆ์š”. ์œ ์ง„ ์œ„๊ทธ๋„ˆ

2022-09-01 ยท (updated 2022-09-09) ยท 31 words