본문 바로가기

Study/기타13

[MAC] SSH 비밀번호를 Keychain에서 관리하기 1. ssh 키 생성하기 $ ssh-keygen -t ed25519 2. SSH 키를 키체인에 저장하기 $ ssh-add --apple-use-keychain ~/.ssh/id_ed25519 3. SSH 설정 파일 구성하기 Host example IdentityFile ~/.ssh/id_ed25519 AddKeysToAgent yes UseKeychain yes 2024. 3. 22.
AWS ECR Image Dump 방법 AWS에서는 ECR(Elastic Container Registry)에 Docker Image를 업로드하여 관리할 수 있습니다. 이번 포스팅에서는 AWS ECR 내에 있는 Docker Image를 Pull하여 Dump하는 방법을 알려드리려고 합니다. AWS-Vault 설치 및 사용 방법은 아래의 포스팅을 참고해주세요. [MAC] AWS-Vault 설치 및 사용법 AWS-Valut란? 기본으로 제공되는 AWS-Cli의 경우 인증 정보를 설정 파일 내에 평문으로 저장하고 있어 보안 사고가 발생할 가능성이 있습니다. AWS-Vault의 경우 Keychain에 인증 정보를 안전하게 저장하 hacksms.tistory.com AWS ECR Image Pull을 위해 필요한 권한은 아래와 같습니다. ecr:GetI.. 2023. 9. 9.
DNS(Domain Name Server), CNAME, A Record DNS (Domain Name Server) 흔히 우리가 아는 hacksms.tistory.com와 같은 도메인은 실제로는 IP와 연결되어 있습니다. hacksms.tistory.com -> 218.217.14.6 (이렇게 구성된 하나의 연결을 Record라고 함) 사람들은 일반적으로 218.217.14.6과 같은 IP 주소를 기억하기 힘들기 때문에 쉽게 접할 수 있는 단어들을 조합하여 Domain을 만든 것입니다. 이렇게 생성된 Domain을 관리하는 서버가 별도로 존재하며, 이 서버를 우리는 바로 DNS(Domain Name Server)라고 부릅니다. A Record A Record는 하나의 Domain에 하나의 IP Address가 매핑되는 방식 입니다. 즉, 아래와 같이 A Record가 매핑될.. 2023. 5. 16.
MySQL Server 꿀팁 Query 특정 Database 내 OPTIMIZE TABLE 구문 생성 SELECT CONCAT('OPTIMIZE TABLE ', table_schema, '.', table_name, ';') FROM information_schema.TABLES WHERE table_schema = "database_name"; 특정 Database 내 Table Size 확인 SELECT table_schema "Data Base Name", table_name "Table Name", round(((data_length + index_length) / 1024 / 1024), 2) "Size in MB" FROM information_schema.TABLES WHERE table_schema = 'database_name.. 2023. 2. 14.
MYSQL-SERVER Query 결과, File로 저장하기 SQL Query (my-sql) SELECT * FROM atable INTO OUTFILE '/tmp/test.txt' 만약 mysql-server가 --secure-file-priv 옵션으로 실행될 경우 출력할 수 있는 디렉터리가 제한되나, 이런 상황에서는 secure_file_priv로 설정된 디렉터리 내에 파일을 저장함으로써 해결할 수 있음 secure_file_priv 경로 확인 SHOW VARIABLES LIKE "secure_file_priv"; secure_file_prive 경로 변경 $sudo vi /etc/mysql/my.cnf [mysqld] secure-file-priv="" $sudo systemctl restart mysql 2023. 2. 10.
AWS Volume 용량 증설 후 File System 확장 방법 AWS 서버를 이용하여 정보 수집 프로그램을 실행하고 있었는데, 디스크 용량이 점점 부족해졌습니다. 이때 AWS에서 Volume의 크기를 증가시킨 뒤, 아래의 명령어를 통하여 서버의 용량을 증설된 용량만큼 확장시킬 수 있습니다. 1. Linux 서버 용량 확인 명령어 $ sudo lsblk 2. 파티션 확장 명령어 $ sudo growpart /dev/xvdf1 1 $ sudo lsblk 3. File System 크기 재설정 $ sudo resize2fs /dev/xvdf1 $ df -h 2023. 1. 4.
Presigned URL 이란? 모든 객체 및 버킷은 Default로 Private으로 설정되어, 접근 권한이 있는 소유자만이 접근을 할 수 있습니다. 보통 Private S3로 구축된 서버의 경우 아래와 같은 흐름으로 동작합니다. 1. 클라이언트가 서버에게 데이터를 전송 2. S3 권한을 갖고 있는 서버가 데이터를 S3로 업로드 그러나 이렇게 되면 동일한 데이터를 총 2번(서버 1번, S3 1번) 사용하게 된다는 문제점이 있습니다. 이러한 문제점을 해결하기 위해 나온 것이 바로 Presigned URL 입니다. AWS S3 Presigend URL Presigned URL을 직역해보면 미리 서명된 URL이라는 뜻을 가지고 있습니다. 그렇다면 무엇이 미리 서명된 URL일까요? 바로 보안 자격 증명을 미리 서명했다는 의미로 볼 수 있습니.. 2022. 11. 17.
Package-lock.json이란? NPM을 사용하여 Build를 하다보면, package-lock.json이 생긴 것을 확인할 수 있습니다. package-lock.json 파일은 NPM을 이용하여 node_modules Tree나 package.json 파일을 수정할 경우 자동으로 생성되는 파일로써 파일이 생성된 시점의 의존성에 대한 정확한 정보를 담고 있습니다. 샘플 파일을 통하여 좀 더 정확하게 알아보도록 하겠습니다. typescript 정보만 나열되어 있는 packge.json 파일과 해당 파일을 통해 생성된 package-lock.json 파일입니다. package.json { "dependencies": { "typescript": "^4.8.4" } } package-lock.json { "name": "typescript".. 2022. 11. 16.
[MAC] AWS-Vault 설치 및 사용법 AWS-Valut란? 기본으로 제공되는 AWS-Cli의 경우 인증 정보를 설정 파일 내에 평문으로 저장하고 있어 보안 사고가 발생할 가능성이 있습니다. AWS-Vault의 경우 Keychain에 인증 정보를 안전하게 저장하고 있으며, Key 사용 시에도 AWS STS(Security Token Service)로 임시 세션 키를 발급 받는 방식을 사용하고 있어 훨씬 뛰어난 보안성을 제공하고 있습니다. AWS-Vault 설치 $ brew install --cask aws-vault AWS-Vault Profile 생성 $ aws-vault add sms Enter Access Key ID : Enter Secret Access Key : Added credentials to profile "sms" in V.. 2022. 11. 10.