μ격 νΈμ€νΈλ‘ νμΌ μ μ‘νκΈ°
μΉ κ°λ°μκ° λ°±μλ λλ νλ‘ νΈμλ μ½λλ₯Ό μμ±νκ³ μλ²λ₯Ό μ€νν μ μλ μ ν리μΌμ΄μ λΉλ νμΌκ³Ό νλ‘ νΈμλ μ½λλ₯Ό μ€νν μ μλλ‘ λΉλλ μμ νμΌλ€μ νλμ μμ€ν μΌλ‘μ¨ λ°°ν¬νκΈ° μν΄μ λ°±μλ κ°λ°μ λλ μλ² μμ§λμ΄κ° ꡬμ±ν΄λμ μΈνλΌ νκ²½μ μλ 리λ μ€ μλ²μ νμΌμ μ μ‘ν΄μΌ ν©λλ€. μ‘°μ§ λλ μμ€ν μ λν μΈνλΌ κ΅¬μ±μ λ°λΌμ μ¬λ¬κ°μ§ λ°©μμΌλ‘ λΉλ νμΌμ μ μ‘ν μ μλλ° κ°μΈμ μΈ κ²½νμ ν λλ‘ μ격 νΈμ€νΈμ λΉλ νμΌμ μ λ¬νλ λ°©λ²μ λν΄μ μ 리νλ €κ³ ν©λλ€.
TL;DR
μΉ κ°λ°μ λλ μλ² μμ§λμ΄κ° μ격 νΈμ€νΈμ νμΌμ μ μ‘νκΈ° μν΄μλ SCP λλ SFTP λͺ λ Ήμ΄λ₯Ό μ¬μ©ν μ μμΌλ©° ν΄λΌμ°λ μλΉμ€μμ μ 곡νλ S3μ κ°μ μλΉμ€λ₯Ό ν΅ν΄μλ μΈλΆ μΈν°λ·μΌλ‘ μ μμ΄ λΆκ°λ₯ν νκ²½μμλ νμΌμ κ°μ Έμ¬ μ μμ΅λλ€.
SCP
SCP λͺ λ Ήμ΄λ SSH νλ‘ν μ½μ μ¬μ©νμ¬ νμΌμ μ μ‘νλ λ°©λ²μΌλ‘μ¨ SSH μ μμ΄ κ°λ₯ν 리λ μ€ μλ²λ‘ νμΌμ 볡μ¬νκΈ° μν΄μ μ¬μ©λ©λλ€.
PS C:\Users\Mambo\docker\nginx.conf> ls
λλ ν°λ¦¬: C:\Users\Mambo\docker\nginx.conf
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2022-02-22 μ€μ 6:49:27 static
-a---- 2022-02-22 μ€μ 6:49:27 19245297 demo-0.0.1-SNAPSHOT.jar
-a---- 2022-02-22 μ€ν 11:26:45 473 docker-compose-local.yaml
-a---- 2022-02-22 μ€ν 11:05:42 573 docker-compose.yaml
-a---- 2022-02-22 μ€ν 11:26:28 241 localhost+3-key.pem
-a---- 2022-02-22 μ€ν 11:26:28 1318 localhost+3.pem
-a---- 2022-05-21 μ€μ 8:13:15 3017 nginx-local.conf
-a---- 2022-02-22 μ€ν 11:05:40 2896 nginx.conf
-a---- 2022-02-22 μ€μ 6:49:27 2036 README.md
-a---- 2022-02-22 μ€μ 6:49:27 1436 server.crt
-a---- 2022-02-22 μ€μ 6:49:27 246 server.key
# SCP λͺ
λ Ήμ΄λ₯Ό μ¬μ©ν΄μ λ‘컬 μ»΄ν¨ν°μ μλ νμΌμ μ격 νΈμ€νΈλ‘ μ μ‘ν©λλ€.
PS C:\Users\Mambo\docker\nginx.conf> scp ./demo-0.0.1-SNAPSHOT.jar ubuntu@192.168.0.18:/home/ubuntu/java/
ubuntu@192.168.0.18's password:
demo-0.0.1-SNAPSHOT.jar 100% 18MB 44.0MB/s 00:00
μ λ‘컬 μ»΄ν¨ν°μλ κ°μ νκ²½ λ¨Έμ μ ν΅ν΄μ μ€νν΄λμ μ°λΆν¬ 리λ μ€(192.168.0.18)μ΄ μ€λΉλμ΄μμΌλ©° μμ κ°μ΄ demo-0.0.1-SNAPSHOT.jar λΌλ λΉλ νμΌμ΄ μ‘΄μ¬νμ¬ μ΄κ²μ SCP λͺ λ Ήμ΄λ₯Ό μ¬μ©ν΄μ μ격 νΈμ€νΈμ μ¬μ©μ ν κ²½λ‘ νμμ javaλΌλ ν΄λμ 볡μ¬νμμ΅λλ€.
SFTP
μΌλ°μ μΌλ‘ FTP νλ‘ν μ½μ μ¬μ©νμ¬ μλ²μ ν΄λΌμ΄μΈνΈ κ°μ νμΌ μ μ‘μ μννλλ°μ. μ€λ¬΄μμλ SFTPλ₯Ό μ¬μ©νλ©° ν°λ―Έλ λͺ λ Ήμ΄λ³΄λ€λ νμΌμ§λΌ(FileZilla)μ κ°μ GUIλ₯Ό μ 곡νλ FTP ν΄λΌμ΄μΈνΈλ₯Ό μ¬μ©νλ νΈμ λλ€. SFTPλ μλ²μ ν΄λΌμ΄μΈνΈ λ°©μμ΄λ―λ‘ SCPμ λ¨μΌ λͺ λ Ήμ΄λ‘ νμΌμ μ μ‘νλ κ²κ³Ό λ€λ₯΄κ² λνν λͺ λ Ήμ΄λ₯Ό μ¬μ©νμ¬ νμΌμ μ μ‘ν μ μμ΅λλ€.
PS C:\Users\Mambo\docker\nginx.conf> sftp ubuntu@192.168.0.18
ubuntu@192.168.0.18 password:
Connected to ubuntu@192.168.0.18.
sftp> lls
C:\Users\Mambo\docker\nginx.conf λλ ν°λ¦¬
2022-02-27 μ€μ 10:59 <DIR> .
2022-02-27 μ€μ 10:59 <DIR> ..
2022-02-22 μ€μ 06:49 19,245,297 demo-0.0.1-SNAPSHOT.jar
2022-02-22 μ€ν 11:26 473 docker-compose-local.yaml
2022-02-22 μ€ν 11:05 573 docker-compose.yaml
2022-02-22 μ€ν 11:26 241 localhost+3-key.pem
2022-02-22 μ€ν 11:26 1,318 localhost+3.pem
2022-05-21 μ€μ 08:13 3,017 nginx-local.conf
2022-02-22 μ€ν 11:05 2,896 nginx.conf
2022-02-22 μ€μ 06:49 2,036 README.md
2022-02-22 μ€μ 06:49 1,436 server.crt
2022-02-22 μ€μ 06:49 246 server.key
2022-02-22 μ€μ 06:49 <DIR> static
10κ° νμΌ 19,257,533 λ°μ΄νΈ
3κ° λλ ν°λ¦¬ 51,521,728,512 λ°μ΄νΈ λ¨μ
# java ν΄λλ‘ μ΄λν ν νμΌμ 볡μ¬ν©λλ€.
sftp> cd java
sftp> put demo-0.0.1-SNAPSHOT.jar
Uploading demo-0.0.1-SNAPSHOT.jar to /home/ubuntu/java/demo-0.0.1-SNAPSHOT.jar
demo-0.0.1-SNAPSHOT.jar 100% 18MB 68.8MB/s 00:00
λ‘컬 μ»΄ν¨ν°μμ λͺ λ Ήμ΄λ₯Ό μννκΈ° μν΄μ λ‘컬(l)μ΄ λΆμ llsλ₯Ό λ¨Όμ μ€ννμ¬ λ‘컬 μ»΄ν¨ν°μμ λ°λΌλ³΄λ κ²½λ‘λ₯Ό νμΈνκ³ μ격 νΈμ€νΈμ λν λͺ λ Ήμ΄λ₯Ό μνν΄μ νμΌμ 볡μ¬νμ΅λλ€. κ·Έλ¬λ©΄ SCP λͺ λ Ήμ΄κ° μλλ°λ λΆκ΅¬νκ³ SFTP νλ‘ν μ½μ λ³λλ‘ μ¬μ©νλ μ΄μ λ 무μμΌκΉμ?
SFTP νλ‘ν μ½μ λ³λλ‘ μ¬μ©νλ μ΄μ μ λν΄μλ μμΈν λͺ¨λ¦ λλ€. λ€λ§, κ°μΈμ μΈ μ€λ¬΄ κ²½νμ ν λλ‘ μ΄μΌκΈ°ν΄λ³΄μλ©΄ λ°°μ€μ² νΈμ€νΈμ λν SSH μ μ μ OTPλ‘ 2FA μΈμ¦μ μꡬνλ©° λ°°μ€μ² νΈμ€νΈμ λν λͺ λ Ήμ΄ μνμ κΈ°λ‘νκΈ° μν΄μ SCP λͺ λ Ήμ΄μ κ°μ΄ μΈν°λμ μΈμ μ΄ μλ μ§μ λͺ λ Ήμ΄λ₯Ό μννλ κ²μ μ νλμ΄ μμ μ μμ΅λλ€.
=============================================================
=====================================================================
/####### /## /##
| ##__ ## | ## |__/
| ## \ ## /###### /####### /###### /## /###### /#######
| ####### |____ ## /##_____/|_ ##_/ | ## /##__ ##| ##__ ##
| ##__ ## /#######| ###### | ## | ##| ## \ ##| ## \ ##
| ## \ ## /##__ ## \____ ## | ## /##| ##| ## | ##| ## | ##
| #######/| ####### /#######/ | ####/| ##| ######/| ## | ##
|_______/ \_______/|_______/ \___/ |__/ \______/ |__/ |__/
=====================================================================
=============================================================
Verification code: ******
This bastion supports interactive sessions only. Do not supply a command
μ΄μ κ°μ μΈνλΌ νκ²½μμλ SFTP μλ²μ μ λ‘λλλ νμΌλ€μ λ°°μ€μ² νΈμ€νΈμ νΉμ κ²½λ‘μ λ§μ΄νΈλμ΄ SSH μ μμ μνν ν SCP λͺ λ Ήμ΄λ₯Ό μ¬μ©ν΄μ μ€μ 리λ μ€ μλ²λ‘ νμΌμ μ λ¬ν μ μμ΅λλ€. SFTP λͺ λ Ήμ΄μ λν λ μμΈν λ΄μ©μ μκ³ μΆμ κ²½μ° How To Use SFTP to Securely Transfer Files with a Remote Serverλ₯Ό μ°Έκ³ νλ©΄ μ’μ΅λλ€.
S3
μμ¦μλ IDCμ κ°μ μ¨νλ λ―Έμ€ ν경보λ€λ AWSμ κ°μ ν΄λΌμ°λ μλΉμ€ νκ²½μ μΈνλΌλ₯Ό ꡬμ±νλ κ²½μ°κ° λ§μ΅λλ€. AWS μμλ S3λΌλ μ€ν λ¦¬μ§ μλΉμ€λ₯Ό μ 곡νλλ° S3 λ²ν·μ λν κΆνμ κ°μ§λ IAMμ μ격μ¦λͺ μ μ¬μ©ν΄μ μ½κ² νμΌμ μ λ‘λν μ μκ³ EC2 μΈμ€ν΄μ€ μν μ S3 λ²ν·μ λν μ κ·Ό κΆνμ λΆμ¬ν΄λμΌλ©΄ EC2 μΈμ€ν΄μ€ λ΄μμλ S3 λͺ λ Ήμ΄λ₯Ό μ¬μ©ν΄μ νμΌμ κ°μ Έμ¬ μ μμ΅λλ€.
# λ‘컬 μ»΄ν¨ν°μ μλ νμΌμ S3 λ²ν·μ 볡μ¬ν©λλ€.
aws s3 cp demo-0.0.1-SNAPSHOT.jar s3://mambo.kr/java/ --profile mambo
# EC μΈμ€ν΄μ€ λ΄μμ S3 λ²ν·μ μλ νμΌμ 볡μ¬ν©λλ€.
aws s3 cp s3://mambo.kr/java/demo-0.0.1-SNAPSHOT.jar ./
νμ¬ μ‘°μ§μμλ νΌλΈλ¦ μ‘μΈμ€κ° λΆκ°λ₯ν λ²ν·μ λλ©μΈ μΈμ¦μ λλ μΌλΆ λ°μ΄ν°λ² μ΄μ€μ λν ν¨μΉ μ€ν¬λ¦½νΈ λ±μ μ λ‘λνκ³ λ¦¬λ μ€ μλ²μ μ μνμ¬ ν΄λΉ νμΌλ€μ 볡μ¬νμ¬ μ¬μ©νκ³ μμ΅λλ€. νΌλΈλ¦ μ‘μΈμ€κ° κ°λ₯νλλ‘ μ€μ λ λ²ν·μ νμΌμ μ λ‘λν΄λλ©΄ μ‘°μ§μ μΈλΆλ‘ νμΌμ 곡μ ν΄μΌν λ HTTP μλν¬μΈνΈλ₯Ό μ λ¬ν μ μμΌλ―λ‘ λ€μνκ² νμ©ν μλ μμ΅λλ€.
μ΄μ²λΌ μ격 νΈμ€νΈμ νμΌμ μ μ‘νλ λ°©λ²μ μΈνλΌ κ΅¬μ±μ λ°λΌμ λ€μνκ² μ¬μ©ν΄μΌν μ μμ΅λλ€. IT λΆμΌκ° μ΄λ €μ΄ μ΄μ λ μκ°λ³΄λ€ λ€μν λΆλΆμ λν΄μ μ λ΅μ΄λΌλ λ°©μμ΄ μκΈ° λλ¬Έμ κ°λ°μλ§λ€ μ‘°μ§μμ μ΄λ ν λ°©μμ μ·¨νλλμ λ°λΌ λ€μν κ²½νμ ν μ μλ€λ κ²μ μμ΅λλ€.
κ°μ¬ν©λλ€.