ํด๋น ๋ด์ฉ์ ์ค์ต ํ ์ ๋ฆฌํ๊ธฐ ๐
1. SSH ์ ์ ์ ๋ฉ์์ง ์ถ๋ ฅ ์ค์
/etc/ssh/sshd_config ํ์ผ๋ก ๋ค์ด๊ฐ ํ ํ์ผ์์ 22๋ฒ ํฌํธ๊ฐ ์ด๋ ค์๋์ง ํ์ธํด์ผํฉ๋๋ค.
์ฐธ๊ณ ๋ก /etc(์คํํ์ผ)/ssh(ํฌํธ)/sshd_config(daemon์ผ๋ก ๋ฐฑ๊ทธ๋ผ์ด๋ ์ค์ ํ์ผ)๋ก์จ
์์ ๊ฐ์ด ์๊ฐํ์๋ฉด ์ฝ๊ฒ ์์น๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค.
์ ๊ทผ๋ฐ ์ฐ๋ถํฌ๊ฐ ๊ฐ์ฅ ๋ฒ์ฉ์ ์ด๊ณ , ๋์ค์ ์ด๋ ๊ฑฐ๊ธฐ์ ํ๋๊ฒ ์ข๊ฒ ๋ค์
๊ทธ๋ฆฌ๊ณ ํด๋น ๋ชจ๋์ธ ssh์ net-tools๋ ์ค์นํด์ฃผ์ธ์(์ต๊ฐํด์ ์์๊ฑฐ์์)
2. SSH ์ ์ ์ ๋ฉ์์ง ์ถ๋ ฅ ์ค์
SSH์ ๊ด๋ จ๋ ๋ชจ๋์ ์ค์นํด๋ ์๋๋ ๊ฒฝ์ฐ๊ฐ ์ข
์ข
์๋๋ฐ ์ ๋งํฌ๋ฅผ ์ ์ํ์ฌ
ํด๊ฒฐํด๋ณด์ธ์(์ ๋ ๋ค๋ฅธ ๋ฌธ์ ๋ก ์ด์์ด ์์๋๋ฐ sudo passwd๋ก ํ๊ฒฝ์ธ์๋ฅผ ๋ฃ์ด์ผ ๋จ)
์ ๊ทธ๋ฆผ์ ์ฐจ์ด์ ์ ๋ฐฐ๋์ ๋ฌธ๊ตฌ๋ฅผ ๋ฃ์๋ ์ ๋ฃ์๋ ์ฐจ์ด์ธ๋ฐ
์ด์ฒ๋ผ SSH์ ์๊ฒฉ์ ์(์ ํฌ๋ ํ์๋ฅผ ์ํด ๋ก์ปฌ๋ก)๋ก ๋ค์ด์์ ๋ ๋์ค๋ ๋ฌธ๊ตฌ๊ฐ Banner๋ผ๊ณ ํฉ๋๋ค.
๊ทธ๋ผ ํ๋ฒ ๋ฉ์์ง๋ฅผ ์ถ๊ฐํด๋ด
์๋ค.
๋จผ์ /etc/ssh/sshd_config์ ๊ฒฝ๋ก์ ๋ค์ด๊ฐ์ Banner์ ์ฃผ์์ผ๋ก ์ด๋ํฉ๋๋ค.
์ฌ๊ธฐ์ Banner๊ฐ none์ผ๋ก ๋์ด ์๋ค๋ฉด(๋ฒ์ ์
๋ฐ์ดํธ๋ก ์๋๋ ๊ฑฐ ๊ฐ์ผ๋๊น)
apt install -y openssh-server ์ ํ์๋ ๊ฒ๋ ๋์์ง ์์์(ํด๋ ์ ๋ณํ๊ฐ ์๊ธด ํ๋๋ฐ)
๊ทธ๋ฌ๋ฉด ํด๋น ์ฃผ์์ /etc/issue.nat(ํ์ผ์ ์ํ๋ ํํ๋ก ์ถ๋ ฅํด์ค)์ ์ถ๊ฐํ๊ณ
ํด๋น ๊ฒฝ๋ก๋ก ๊ฐ์ ์ํ๋ ๋ฌธ๊ตฌ๋ฅผ ์
๋ ฅํฉ๋๋ค.
๊ทธ๋ฆฌ๊ณ service ssh(d) restart or systemctl restart ssh๋ฅผ ํ๋ฉด ๋ฉ๋๋ค.
๋ ์์ธํ๋ ์ถํ ๋ ์์๋ด
์๋ค.
3. ๋น๋ฐ๋ฒํธ ์ ์ฑ ์ค์
์ผ๋จ ๋ฆฌ๋ ์ค ์์ฒด๊ฐ ์งํฅํ๋ ๋ถ๋ถ ์ค ํ๋๋ ๋ค์ค ์ฌ์ฉ์์ด๋ค. ๊ทธ๋ฌ๊ธฐ์ ๋น๋ฒ ์ ์ฑ ์ค์ ์์๋ณด์
์ผ๋จ ์ ์ ๋ฅผ ์์ฑํด์ค๋ค(root ๊ถํ์ด ์์ด์ผ ์์ฑ ๊ฐ๋ฅํฉ๋๋ค)
๊ทธ ํ ๋น๋ฒ ์ ์ฑ
์ค์ ํ ํ์ธํด๋ด
์๋ค.
/etc/login.defs
login์ default ๊ธฐ๋ณธ ๋น๋ฒ ํญ๋ชฉ์ ์ง์ ํ๋ ํ์ผ
- PASS_MAX_DAYS
: ๋น๋ฒ ์ฌ์ฉํ ์ ์๋ ์ต๋ ์ผ์ - PASS_MIN_DAYS
: ๋น๋ฒ ๋ฐ๊พธ๋ ์ฌ์ด์ ์ต์ ์ผ์ - PASS_MIN_LEN
: ๋น๋ฒ ์ต์ ๊ธธ์ด - PASS_WARN_AGE
: ๋น๋ฒ ๋ง๋ฃ ์ ๊ฒฝ๊ณ ํ๋ ์ผ์
etc/pam.d/command-password
login.defs์ ํ์ผ์์ ์ค์ ํ ์ ์์๋ ์ธ๋ถ๋ด์ฉ
etc/pam.d/command-* ๋ถ๋ถ์์ ์์ด ํด์ ๊ทธ๋๋ก ์ค์ ๊ฐ๋ฅ
์์ ๊ฐ์ด ์ค์ ์ ํ์ จ๋ค๋ฉด ๋๊ฐ์ ์ ๋น๋ฒ ์ค์ ํ๊ฒฝ์ ํ์ธํ์ ๋ค๋ฉด..
์์ ๊ฐ์ด ์ค์ ์ด ๋ ๋ชจ์ต์ ํ์ธ ํ ์ ์์ต๋๋ค.
์ฐธ๊ณ ๋ก ์คํ์ด ์๋๋ค๋ฉด ์๋ก ๋ชจ๋์ ๋ค์ด๋ก๋ ๋ฐ์์ฃผ์ธ์
์์ ๊ฐ์ด ํจํค์ง๋ฅผ ๋ค์ด๋ก๋๋ฅผ ๋ฐ์์ผ ์ ์ฑ
์ค์ ์ด ๊ฐ๋ฅํ๋ค๊ณ ํ๋๋ฐ
์ ๋ ์ํด๋ ๋๋๋ผ๊ณ ์. ๋ฒ์ ์ ๋ฐ๋ผ ์ฑ๊ณต์ ์ ๊ทผ ๋ฐฉ์์ด ๋ฌ๋ผ์ง๋๋ด์
์๋ฐ์ ์ก
/var/log/apache2 diretory permission
๋์ ์ ๊ทผ ๊ถํ์ ๋ค๋ฅด๊ฒ ํ์ฌ ์ ๊ทผํ๋ฉด..(user&root)
์์ ๊ฐ์ด apache2์ ๊ตฌ์ฑ ์์์ ํ์ผ์ด user์ group์ด ๋ฌ๋ผ์ง ๋ชจ์ต์ ํ์ธํ ์ ์์ต๋๋ค.
๊ทธ๋ผ www-data๊ฐ ๋์ฒด ๋ญ๊น์?
www-data๋?
์์์ ์ด๋์ ๋ ์ค๋ช
ํ๊ณ ์์ผ๋ ๊ฐ๋ตํ๊ฒ ์ ๋ฆฌํ์๋ฉด..
์ฐ๋ถํฌ์ ๊ธฐ๋ณธ์ ์ผ๋ก ์กด์ฌํ๋ User๋ก์จ, ์ค์ /etc/passwd ํ์ผ์์ ํ์ธํ๋ฉด ์กด์ฌํฉ๋๋ค.
์์งํ www-data๋ฅผ ์ฌ์ฉํ์ง ์๊ณ ํ์ผ ๊ถํ์ root๋ก ํด๋ ์คํ์๋ ์ง์ฅ X
๊ทธ๋ผ ์ www-data๋ก ๊ณ์ ์ ๋ณ๊ฒฝํ ์ํ๋ฅผ ์งํฅํ๋ฉฐ ์ ๋ง๋ค์ด์ก์๊น์?
๋ค ์ฐ์์ด ์๊ฒ ์ฃ ?
apache2๋ ์น ์๋น์ค๋ฅผ ๊ตฌ๋ํ ๋ ์ฌ์ฉํ๋ฏ๋ก WAS(Node.js, Nginx, Django)์ ๊ฐ์ ์๋ฒ์
๊ตฌ๋ํ๋ค๊ณ ํด๋ ๋ฌด๋ฐฉํฉ๋๋ค(๊ธฐ๋ฅ์ด ์ ์ฌํฉ๋๋ค) ๊ทธ๋ฌ๊ธฐ์ ๊ณต๊ฒฉ ์ทจ์ฝ์ ์ด ๋ฐ์ํ๋ค๋ฉด
์๋ฅผ ๋ค๋ฉด Zero-day → RCE ๊ณต๊ฒฉ์ผ๋ก ์ด์ด์ง๋ค๋ฉด root๊ถํ์ด๋ผ๋ฉด ํผํด ↑
๊ทธ๋ฌ๊ธฐ์ www-data๋ผ๋ ์์ ์ฃผ ๊ถํ์ด ๋ง๋ค์ด์ง๊ฒ์ด๋ฉฐ ํด๋น ๊ถํ์ผ๋ก๋ง apache2๊ฐ ๊ตฌ๋
๊ทธ๋ฌ๊ธฐ์ hacker๊ฐ Exploit๋ฅผ ํด๋ ํด๋น ๊ถํ์ผ๋ก ํ์ ์ ์ผ๋ก ๋์๋๊ฒ ์ฃ
๊ฒฐ๊ตญ ๋ณด์์์ ์ด์ ๋ก ์กด์ฌํฉ๋๋ค(๋ฏธ๋ฌ์ฌ์ดํธ๋..?, ๋ฐฉํ๋ฒฝ์ ์กด์ฌ ์ด์ ๊ฐ ์ ์ฌํ์ฃ )
ํด๋น ๋ช
๋ น์ด๋ ๊ธฐ์ด๋ผ์ ์ ๋ฆฌ ์ํ ๋ ค๊ณ ํ๋๋ฐ ํน์ ๋ชฐ๋ผ์.. ๊ทธ๋๋ก ์ฌ๋ ค๋ด
๋๋ค ใ
chmod๋ ์ต์ํ์ค๊ฑฐ๊ณ chown(er)๋ผ๋ ์๋ฏธ๋ก ์์ ์ ๋ณ๊ฒฝ์
๋๋ค.
์ ์คํฌ๋ฆฝํธ์์๋ ์ค์ํ -R์ด ํต์ฌ์ด๋ผ๋ ์ !!
4. apache2 ํ์ผ ์ ๋ก๋ ๊ถํ ์ค์
/var/www(default front)/apache2/uploads์ ์๋ฌด ํ์ผ์ด๋ ๋ง๋ญ์๋ค.
touch a.txt๋ฅผ ์คํํ๊ณ Index of /uploads ๋ก ํฅํ๋ ๊ฒฝ๋ก๋ฅผ ํ์ธํ๋ค๋ฉด..
๊ทผ๋ฐ.. ์ ๋ apache2์ ํ์ผ ๊ฒฝ๋ก๊ฐ ์๋ฌด๋ฆฌํด๋ ๋์์ ๋์ง๋ง ๊ฒฝ๋ก์ ์๊ธฐ์.. ๋๊ฐํ๋ค
localhost/upload๋ฅผ ๋ค์ด๊ฐ๋ ์ผ์ชฝ์ ์ค๋ฅธ์ชฝ์ผ๋ก ๋ณด์ด๊ฒ ๋ง๋ค์ด์ผํฉ๋๋ค. ๊ทธ๋ฌ๋ฉด..
granted → denied ๋ก ๋ณ๊ฒฝํ๋ฉด ๋ฉ๋๋ค.
์ฌ๊ธฐ์ <Directory /var/www>์ ์๋ฏธ๋ /var/www ๋๋ ํ ๋ฆฌ์ ๋ํ ๊ถํ์ ์๋ฏธํฉ๋๋ค.
- Require all granted : ๋ฌด์กฐ๊ฑด ํ์ฉ
- Require all denied : ๋ฌด์กฐ๊ฑด ๊ธ์ง
- Require ip 192.168 11 : ํน์ IP๋ง ์ ๊ทผ ํ์ฉ(Ex. 192.168๊ณผ 11๋ก ์์๋๋ ๋์ญ๋๋ง ํ์ฉ)
5. sudo ํน์ ๋ช ๋ น ์ ํ
sudoers ํ์ผ์ด๋?
root๋ ์๋ฒ์ ๋ชจ๋ ์์
์ ์ํํ์ง๋ง, ์ผ๋ฐ ์ ์ ๋ ๋ชจ๋ ์์
์ ํ ์ ์๊ฒ ๊ถํ์ ์ ํํฉ๋๋ค.
๊ทผ๋ฐ ์๋ฒ๋ฅผ ์ด์ฉํ๋ฉด ์ผ๋ฐ ์ ์ ๋ฅผ ์์ฑํ ๊ฒฝ์ฐ๊ฐ ๋ง์ด ์๊น๋๋ค.
๊ทธ๋ฐ๋ฐ ๋ง์ฝ ์ผ๋ฐ ์ ์ ๊ฐ ๊ด๋ฆฌ์๋ง ์ฌ์ฉํ ์ ์๋ ๋ช
๋ น์ ์คํํ๋ค๋ฉด..
(๊ด๋ฆฌ์ ๊ณ์ ์ด ์์ด์ผํ๊ณ ๊ถํ ๋ถ์ฌํด ๋ชจ๋ ๋ช
๋ น์ด๋ฅผ ๋ถ์ฌ ์ฆ, SetUID๊ฐ์ ๊ฒฝ์ฐ๋ฅผ ์ต์ํ ใฑ)
sudoers ํ์ผ์ ์ผ๋ฐ ์ ์ ๊ฐ ๊ด๋ฆฌ์๋ง ์ฌ์ฉํ ์ ์๋ ๋ช ๋ น์ ์ฌ์ฉํ ์ ์๊ฒ ํ๊ฑฐ๋ ์ ํ์ด ๊ฐ๋ฅ
/etc/sudoers ํ์ผ์ ๋ํ์ฌ ๊ทธ๋ผ ์์๋ด ์๋ค.
sudoers ํ์ผ์ ๊ธฐ๋ณธ์ ์ผ๋ก r(์ฝ๊ธฐ ๊ถํ)๋ง ์กด์ฌํ๊ธฐ ๋๋ฌธ์ ํ์ผ ์์ X
์์ ๊ฐ์ด chmod +w /etc/sudoers ํ์ผ์ ์ฐ๊ธฐ ๊ถํ์ ๋ถ์ฌํฉ๋๋ค.
ํฌ๊ฒ ๋๊ฐ์ง ๋ฐฉ๋ฒ์ผ๋ก ์์ ํ ์ ์์ต๋๋ค.
์ฒซ๋ฒ์งธ๋ chmod๋ก ํ์ผ ๊ถํ ๋ณ๊ฒฝ ํ ์์ ํ๋ ๊ฒ์ด๊ณ ,
๋๋ฒ์งธ๋ visudo ๋ช
๋ น์ด๋ฅผ ํตํด ํ์ผ์ ์์ ํ๋ ๊ฒ์
๋๋ค.
ํนํ visudo๋ ์ข ์์ํ๋ค์
update-alternatives --config editor๋ก visudo๋ ๊ธฐ๋ณธ์ ์ผ๋ก nano๋ผ์
์์ ์ด ๋ณํ ์๋ํฐ๋ก ๋ฐ๊พธ๋ฉด ๋ฉ๋๋ค.(์ ๋ vim์ด ํธํด์)
๊ทธํ ํ์ผ์ ์์ ํด๋ด
์๋ค.
Cmnd_Alias SHUTDOWN=/sbin/... ๋ผ๋ ์์ ์ด๋ฏธ์ง๋๋ก ๋ฃ๋๋ค.
์ฌ๊ธฐ์ /sbin/ ๋๋ ํ ๋ฆฌ์ ์๋ ๋ช
๋ น์ด๋ค์ ํ์ฉ X ๋ผ๋ ์๋ฏธ์ด๋ค.
๊ทธ๋ฆฌ๊ณ %sudo ๊ฐ ์๋ ๋ผ์ธ์์ !SHUTDOWN์ ํตํด ํด๋น์ ์๋ ๋ชจ๋ ๊ฒ์ False ์ฒ๋ฆฌ๋ฅผ ํฉ๋๋ค.
์์๋ฅผ ํ์ธํ๋ฉด sudo update๋ ์ ์คํ๋์ง๋ง, reboot&halt ๋ฑ SHUTDOWN์ผ๋ก ์ง์ ํ
๋ช
๋ น์ด๋ ์คํ์ด ์๋๋ ๋ชจ์ต์
๋๋ค.
6. ๋ฐฑ์ ์คํฌ๋ฆฝํธ ์์ฑ
์๋ฒ ๊ด๋ฆฌ ์์๋ ๋ฐฑ์
์ด ์ค์ํ๊ณ ์
ธ ์คํฌ๋ฆฝํธ๋ฅผ ํ์ฉํ๋ฉด ๋ฐฑ์
์ ํจ์จ์ ์ผ๋ก ํ๋ฏ๋ก
ํ๋ฒ ๋ฐฐ์ธ ๊น์ ๊ณต๋ถํด๋ด
์๋ค.
ํด๋น ์ ์ ๊ณ์ ์ backup ๋๋ ํ ๋ฆฌ๋ฅผ ๋ง๋ค๊ณ ํด๋น ํ์ผ์
/var/log/* ํ์ผ๊ณผ /etc/* ํ์ผ์ .tar.gz ํ์ผ๋ก ์์ถํด ๋ฐฑ์
ํ๋ ์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํด๋ด
์๋ค.
์๋ค์ ์ก - ์์ถ ํ์์ ์์๋ด ์๋ค.
์์ถ ํฌ๋ฉง์ ํ์ฅ์๋ .zip .tar .gz(gzip) .7z ๋ฑ ๋ฌด์ง ๋ง์ต๋๋ค.
์ฌ๊ธฐ์ .tar.gz ์ค์ ์ผ๋ก ์์๋ด ์๋ค.
.tar ๋ ์ฌ๋ฌํ์ผ์ ๋ฌถ๋ ๋ฐฉ๋ฒ์ด๊ณ .gz๋ ๋ฌถ์ ํ์ผ์ ์๊ฒ ์์ถ
๊ทธ๋ฌ๊ธฐ์ ๋๊ฐ๋ฅผ ๋์์ ์ฌ์ฉํ์ฌ ์์ ์ ์ฝ ๋ฐ ํจ์จ์ฑ์ ๋๋ฆผ
> tar ๋ช ๋ น์ด ์ต์
๋ฐฑ์ ์คํฌ๋ฆฝํธ ์์ฑ
์์ ๊ฐ์ด ๋ฐฑ์
์คํฌ๋ฆฝํธ๋ฅผ ์์ฑํ ์ ์์ต๋๋ค.
์ฐธ๊ณ ๋ก Shell_Script๋ C์ธ์ด์ ๋ฆฌ๋
์ค ๋ช
๋ น์ด์ ๋น์ทํ๋ฏ๋ก ์ง๊ด์ ์ผ๋ก ๋ณด์ผ ๊ฒ๋๋ค.
๋ค๋ง ๋ฌธ๋ฒ ํ์ฉ ๋ถ๋ถ์์ ์ต์ํ์ง ์์ ์ ์์ ๋ฏ ์ถ๋ค์(์ ๋ ์ฝ๊ฐ ๊ทธ๋์ ใ
)
Tip. ์๋ฒ ๊ด๋ฆฌ
์๋ฒ๋ฅผ ๊ด๋ฆฌํ๋ฉด ์๋ํ์ ๋ํ์ฌ ๋ง์ ๋ถ๋ถ์ ๊ณ ๋ฏผํด์ผํฉ๋๋ค.
ํนํ ๋ฐฑ์
์คํฌ๋ฆฝํธ๋ ์๋ํ๋ฅผ ์ํด ๋ง๋ค์์ง๋ง ๋จ์ ๋ ๋ช
ํํ๊ฒ ๋ณด์
๋๋ค.
๋งค๋ฒ ๋ฐฑ์
์ ํ๊ธฐ ์ํด์ backup.sh ํ์ผ์ ์คํํด์ผํ๋๊น์
๊ทธ๋ฌ๊ธฐ์ Cron์ด๋ผ๋ ์๋ํ๋ฅผ ์ํ ๋๊ตฌ๋ฅผ ์๊ฐํฉ๋๋ค.
Crontab(Windows์ ์ค์ผ์ฅด๋ฌ ๊ฐ์ ๊ณ๋
) ์๋ ๊ฐ์ ๊ณ๋
์
๋๋ค.
์ด Crontab์ ์ด์ฉํ์ฌ backup Script์ ๋์์ ๋จ์ ์ ํด๊ฒฐํฉ์๋ค.
์์ธํ ๋ด์ฉ์ ์์ ๋งํฌ๋ฅผ ํตํด ํ์ต ํ ํ์ฉํ์๊ธธ ๋ฐ๋๋๋ค.
๊ทธ๋ผ Crontab + Shell Script๋ฅผ ํตํด ํน์ ์ฃผ๊ธฐ๋ง๋ค ๋ช
๋ น์ด๋ฅผ ์คํ
์ฆ, ์๋ ๋ฐฑ์
๋ ๊ฐ๋ฅํ๋ค๋ ์ ์ด ๋ณด์ด๊ฒ ์ฃ ?
7. SSH ์ธ์ฆ ์ต๋ ํ์ ์ ํ
SSH ์ธ์ฆ ์ต๋ ํ์ ์ ํ๊ณผ ๋ฉ์์ง ๋์ฐ๊ธฐ ํด๋ด
์๋ค.
ํด๋น ๊ฒฝ๋ก์์ ํธ์ง์ MaxAuthTries ์ฃผ์์ ํด์ ํ ํ ์ง์ ํ๋ฉด..
์ ๋ SSH ์ค์ ์์ ๋ญ ๋ฌธ์ ์๊ฒจ์ ์๋ฌ๋๋ฐ
์ค์ ๋ก๋ Too many auth.. failures ๋จธ๋ผ๋จธ๋ผ ๋์ต๋๋ค.
์ด๊ฑด ์ง์ง ๊ฐ๋จํ ๋ฌธ์ ๋ค์ฌ;;
Vi ํธ์ง๊ธฐ ์๋ํ ํด๊ฒฐ์ฑ
sed๋ผ๋ ํค์๋๊ฐ ํต์ฌ์
๋๋ค.
sed๋ฅผ ์ด์ฉํ ๋ช
๋ น์ ์ ๊ณ ์ ์คํฌ๋ฆฝํธ๋ฅผ ์คํํ๋ฉด ์ ์ ๋ก ํ์ผ์ด ์์ ๋ฉ๋๋ค.
sed๋?
์์ , ์นํ, ์ญ์ , ๊ธ ์ถ๊ฐ ๋ฑ ํธ์ง๊ธฐ์ ์ฌ์ฉํ ์ฌ๋งํ ๊ธฐ๋ฅ ์ฌ์ฉ๊ฐ๋ฅ
๊ทธ๋ฆฌ๊ณ ๋ช ๋ น์ด๋ก ์ธ ์ ์๋ค๋ฉด ์ ์คํฌ๋ฆฝํธ๋ก ์ฌ์ฉํ ์ ์๋ค๋ ๋ป์ด ๋ฉ๋๋ค!!
-s : ์นํ
Ex) sed 's/AAAAA/BBBBB/' ./Hello.txt
์์ ๊ฐ์ด ์
๋ ฅํ๋ฉด AAA..๊ฐ BBB..๋ก ๋ฐ๋์ด ์ถ๋ ฅ๋์ง๋ง,
ํ์ผ์ ๋ณ๊ฒฝ๋์ง ์์ต๋๋ค.
-i : ์ ๋ ฅ
Ex) sed -i 's/AAAAA/BBBBB/' ./Hello.txt
์ ํค์๋์ -i๋ฅผ ์ฝ์ ํ์ ๋ฟ์ธ๋ฐ, ํ์ผ ๋ด์ฉ๋ ๋ณ๊ฒฝ๋ ๋ชจ์ต
sed์ ์ฅ์ ?
- ํ์ผ์ ๋ด์ฉ์ ์ผ๊ด์ ์ผ๋ก ์์ &์์ฑ ๊ฐ๋ฅ
- awk, grep ๋ช ๋ น์ด ๋ฑ๊ณผ ์ฐ๋ ๊ฐ๋ฅ - regex์ ๊ฐ์ ์ ๊ท ํํ์์ผ๋ก ์ ๋ฐํ๊ณ ์ธ๋งํ ์์ ๊ฐ๋ฅ
- ๋ค์ํ ํ์ผ์ ์์ ํ๋ ๊ฒ์ ์๋ํ ํ ๋ ์ ๋ง ์ ์ฉ
๋์ฑ ์์ธํ ๋ด์ฉ์ ์๋ก ๋งํฌ์์ ์ฐธ๊ณ ๋ฐ๋๋๋ค.
์ ๋ ๊ณต๋ถํ ๋ ๋์์ด ๋ง์ด ๋ ์๋ฃ์
๋๋ค.
์ฐธ๊ณ ์๋ฃ
์ฐธ๊ณ ์ด๋ฏธ์ง
'๐โSystem_Study > ๐โEtc..' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[2023]Kali_linux Establish (2) | 2023.04.13 |
---|---|
Ubuntu ์ค์ (0) | 2023.03.08 |