[Ubuntu] Certbot을 이용한 인증서 발급하기

[Ubuntu] Certbot을 이용한 인증서 발급하기

노션에서 보기

이채현

snapd 설치하기 (snapd 없는 경우)

최신 버전의 우분투에는 snapd가 설치되어있는 것으로 알고 있음

1
2
3
4
# apt # snap
# Ubuntu
sudo apt install snapd
sudo reboot

certbot 설치하기 (snap)

1
2
3
sudo snap install core; sudo snap refresh core
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot

cloudflare plugin 설치하기

1
2
3
# dns  cloudflare
sudo snap set certbot trust-plugin-with-root=ok
sudo snap install certbot-dns-cloudflare

cloudflare api token 넣기

1
2
3
4
5
6
mkdir -p ~/.secrets/certbot
vi ~/.secrets/certbot/cloudflare.ini
----------------------------------
# Cloudflare API token used by Certbot
dns_cloudflare_api_token = IdgrE2pGEQxdq43kQPJ8*****************
chmod 600 ~/.secrets/certbot/cloudflare.ini

자신의 도메인 인증서 등록하기

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#
# *.4084.live
sudo certbot certonly --dns-cloudflare \\
--dns-cloudflare-credentials ~/.secrets/certbot/cloudflare.ini \\
-d *.4084.live

-----------------
ubuntu@dev-project-app:~$ sudo certbot certonly --dns-cloudflare \\
> --dns-cloudflare-credentials ~/.secrets/certbot/cloudflare.ini \\
> -d *.4084.live
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Enter email address (used for urgent renewal and security notices)
(Enter 'c' to cancel): [email protected]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
<https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf>. You must
agree in order to register with the ACME server. Do you agree?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing, once your first certificate is successfully issued, to
share your email address with the Electronic Frontier Foundation, a founding
partner of the Let's Encrypt project and the non-profit organization that
develops Certbot? We'd like to send you email about our work encrypting the web,
EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y
Account registered.
Requesting a certificate for *.4084.live
Waiting 10 seconds for DNS changes to propagate

Successfully received certificate.
Certificate is saved at: /etc/letsencrypt/live/4084.live/fullchain.pem
Key is saved at: /etc/letsencrypt/live/4084.live/privkey.pem
This certificate expires on 2022-02-26.
These files will be updated when the certificate renews.
Certbot has set up a scheduled task to automatically renew this certificate in the background.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
If you like Certbot, please consider supporting our work by:
* Donating to ISRG / Let's Encrypt: <https://letsencrypt.org/donate>
* Donating to EFF: <https://eff.org/donate-le>
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

생성된 인증서 경로 /etc/letsencrypt/live/4084.live/fullchain.pem /etc/letsencrypt/live/4084.live/privkey.pem

인증서 갱신하기

1
2
3
4
5
#     (--dry-run)
sudo certbot renew --dry-run

#(xx )
sudo certbot renew

crontab을 이용하여 주기적으로 갱신

(매주 일요일 2시 1분에 실행)

1
2
3
4
crontab -e
-----------
# cert renewal
1 2 * * 0 sudo /usr/bin/certbot renew

참고링크


[Ubuntu] EC2 Ubuntu에 접속 후 초기 셋팅

[Ubuntu] EC2 Ubuntu에 접속 후 초기 셋팅

노션에서 보기

이채현

인스턴스를 생성할 때 키페어 생성하여 위치확인하기

키 페어 저장

다운로드 한 키페어를 ~/.ssh 폴더 안에 위치시키고 권한을 600으로 변경한다

1
2
cp ~/Downloads/{keypair-name.pem} ~/.ssh/AWS
chmod 600 {keypair-name.pem}

접속

1
ssh -i ./{keypair-name.pem} ubuntu@{public ipv4 주소}

로그인 후

패키지 업데이트

1
2
sudo apt update
sudo apt upgrade

hostname 변경

1
2
sudo hostnamectl set-hostname {원하는 이름}
# 재접속

타임존 변경

1
sudo timedatectl set-timezone Asia/Seoul

개인PC에서 간단히 접속하기

ssh명령어를 이용하여 접속할 때에는 인증키의 위치를 계정명, 주소를 같이 입력해줘야하는 번거로움이 있다.

이를 개인pc의 인증서를 등록하여 인증서없이 바로 로그인해보자

id_rsa 키 생성하기 (개인-Mac)

1
2
cd ~/.ssh
ssh-keygen

이후 ~/.ssh 폴더 내부에 생성 된 id_rsa(private) id_rsa.pub(public) 두개의 키를 확인할 수 있다.
이 중 id_rsa.pub의 내용을 복사한다.

authorized_keys 수정하기 (원격-Ubuntu)

1
2
vim ~/.ssh/authorized_keys
위에서 복사한 id_rsa.pub 내용을 붙여넣고 저장한다.
[MySQL] 사용자 계정 생성 및 삭제, 권한관리

[MySQL] 사용자 계정 생성 및 삭제, 권한관리

MySQL 접속

1
2
3
sudo mysql 
-------------------
mysql -u root -p

새로운 유저 생성

1
mysql> CREATE USER 'username'@'host' IDENTIFIED WITH authentication_plugin BY 'password';

사용자 계정 삭제

1
mysql> DROP USER 'user명'@'server명';


새로운 데이터베이스 생성

1
2
mysql> CREATE DATABASE test;
mysql> SHOW DATABASES;

특정 계정에 모든 데이터베이스 사용 권한 부여

1
2
mysql> GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost';
mysql> FLUSH PRIVILEGES;

특정 계정에 특정 데이터베이스 사용 권한 부여

1
2
mysql> GRANT ALL PRIVILEGES ON 데이터베이스이름.* TO 'username'@'localhost';
mysql> FLUSH PRIVILEGES;

특정 권한 부여

1
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,ALTER ON 'database명'.'tabel명' TO 'user명'@'server명';

모든 권한 삭제

1
mysql> REVOKE ALL ON 'database명'.'table명'FROM 'user명'@'server명';

특정 권한 삭제

1
mysql>  REVOKE INSERT, DROP ON 'database명'.'table명'FROM 'user명'@'server명';
[AWS] EC2 Ubuntu에서 MySQL 사용하기

[AWS] EC2 Ubuntu에서 MySQL 사용하기

Ubuntu 패키지 정보 업데이트

1
2
sudo apt update
sudo apt upgrade

MySQL 설치

1
sudo apt install -y mysql-server

MySQL 기본 세팅

1
2
3
sudo ufw allow mysql # 외부 접속 기능 설정 (포트 3306 오픈)
sudo systemctl start mysql # Mysql 실행
sudo systemctl enable mysql # Ubuntu 서버 재시작시 Mysql 자동 재시작

MySQL 외부접속 설정

1
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

bind-address를 127.0.0.1 -> 0.0.0.0 으로 변경

MySQL 언어셋 한글 설정

1
sudo vi /etc/mysql/my.cnf

맨 밑에 다음 코드 첨부

1
2
3
4
5
6
7
8
9
10
11
12
13
14
[client]
default-character-set = utf8

[mysqld]
init_connect = SET collation_connection = utf8_general_ci
init_connect = SET NAMES utf8
character-set-server = utf8
collation-server = utf8_general_ci

[mysqldump]
default-character-set = utf8

[mysql]
default-character-set = utf8
1
2
3
sudo systemctl restart mysql # Mysql 재실행
sudo mysql # MySQL 접속
mysql> status;

MySQL 상태확인

1
sudo systemctl status mysql


MySQL 사용자 등록 및 권한 설정

1
2
mysql> create user '계정이름'@'%' identified by '패스워드';
mysql> grant all privileges on *.* to '계정이름'@'%' with grant option;

인스턴스 인바운드 규칙 설정


외부에서 MySQL 접속확인

MySQL Workbench를 이용하여 접속확인을 한다.

[AWS] Start Amazon EC2

[AWS] Start Amazon EC2

Select Instance(Amazon Linux2 AMI) With t2.micro

Configure Security group - Add types [SSH(22), HTTP(80)]

Instance Spec

2021년 5월 12일 수요일 IT뉴스

1. 카드업계 ‘페이’ 상호개방 합의…”네이버·카카오페이에 대응”

카드업계 ‘페이’ 상호개방 합의…”네이버·카카오페이에 대응”

11일 카드업계에 따르면 6개 전업 카드사와 BC카드, 농협은행 NH농협카드는 최근 카드사 모바일협의체 회의에서 각사의 간편결제시스템 개방에 원칙적으로 합의한 것으로 전해졌다. 중소 카드사가 간편결제 앱 이용자 감소 가능성에도 개방에 합의한 것은 카카오페이와 네이버페이에 밀릴 수 있다는 위기의식 때문이다.


2. 이쯤되면 고의? 넷플릭스, 또 한국 역사 왜곡·비하 번역 논란

이쯤되면 고의? 넷플릭스, 또 한국 역사 왜곡·비하 번역 논란 : 네이버 뉴스 (naver.com)

동영상 스트리밍 서비스 업체 넷플릭스가 자막논란에 휩싸였다. /사진=로이터

넷플릭스는 일본해 표기 논란뿐 아니라 해외 콘텐츠 한국어 자막오류, 번역 논란, 조세회피 의혹 등 계속되는 논란에 휘말렸고, 이미 다수의 커뮤니티에서 수많은 자막 오역이 지적돼 온 것.

반크는 “한류 열풍으로 전 세계 한류 팬이 1억명을 돌파하고 특히 넷플릭스에서 방영하는 한국 드라마와 영화에 대한 외국인의 관심이 높아진 지금 영상 매체 속 한국 관련 오류를 조기에 발견하고 시정하는 일이 중요하다”고 지적했다.


3. “2~3일 걸리던 고객층 분석, AWS 클라우드 도입으로 1~2분으로 단축”

“2~3일 걸리던 고객층 분석, AWS 클라우드 도입으로 1~2분으로 단축” : 네이버 뉴스 (naver.com)

홍성봉 아모레퍼시픽 상무는 AWS 클라우드를 도입한 아모레퍼시픽의 성과를 소개했다. 홍 상무는 “커머스, 마케팅 담당자의 관점에서, 누가 어떤 제품을 구매했고 이들의 공통점이 무엇인지 파악하는 게 중요하다”며 “하지만 여기엔 많은 검색 조건 등 빅데이터가 필요하다”고 말했다. 홍상무는 “2~3일 걸리던 고객층 분석 작업을 아마존웹서비스(AWS) 클라우드를 도입한 지 1년 반 만에 1~2분으로 단축하는 데 성공했다”며 “AWS의 기술 지원은 앞으로도 기업들의 혁신을 도울 것이다”라고 밝혔다.


4. [실밸레이더] 구글·애플·인텔·아마존이 뭉쳐 반도체 로비 단체 만들었다

[실밸레이더] 구글·애플·인텔·아마존이 뭉쳐 반도체 로비 단체 만들었다 : 네이버 뉴스 (naver.com)

11일(현지시각) 뉴욕타임스와 로이터 등 외신은 인텔엔비디아, 퀄컴 등 칩 제조업체와 애플, 구글, 마이크로소프트, 아마존 등 이 칩을 구입해 사용하는 테크 기업이 모여 새로운 그룹인 ‘미국 반도체 연합(Semiconductors in America Coalition)을 결성했다고 보도했습니다.

이 기업들이 한 연합체로 뭉친 것은 이례적으로 뉴욕타임스는 “기업들이 반도체 연합을 통해 연방정부의 지원을 받고 반도체 연구와 제조를 추진하려는 목적”으로 함께 뭉쳐서 정부 보조금을 따내기 위한 임시 단체인 것이며, 로이터는 더 노골적으로 “정부의 반도체 보조금을 요구하는 로비 그룹”이라고 했습니다.


5. AWS·구글 등 러스트 도입 박차…C++ 대체하나

https://zdnet.co.kr/view/?no=20210511172039

러스트는 C와 C++의 퍼포먼스를 유지하며도 메모리 버그를 방지할 수 있어 두 언어를 대체할 지 주목받고 있으며, 시스템 및 인프라 개발 분야에서 인기몰이 중이다.

현재 가장 러스트를 적극적으로 활용하고 있는 기업은 AWS이고, 소프트웨어 및 하드웨어 개발, 지원 엔지니어링, 시스템 및 보안 엔지니어링을 비롯해 람다, 서버리스 컴퓨팅 등 다양한 분야에 러스트를 도입을 고려하고 있으며, 이를 위해 러스트 전문 개발자 모집에도 박차를 가하는 중이다.

[AWS] Amazon Web Service's survey

[AWS] Amazon Web Service's survey

Survey (EC2, Auto Scaling, S3, RDS)

What is Amazon EC2?

Abbreviation for Amazon Elastic Compute Cloud, it provides scalable computing capacity in the Amazon Web Services (AWS) cloud.

With Amazon EC2, you can,

  • Build as many virtual servers as you want,
  • Manage security, network configuration, storage
  • •Reduces the need to predict server traffic more

What is Amazon Auto Scaling?

With AWS Auto Scaling, you can configure automatic scaling of the AWS resources in your application in minutes.

Amazon Auto Scaling monitors your application,

  • Set up scaling quickly,
  • Make smart scaling decisions,
  • Maintain performance automatically,
  • Reliable,
  • Pay only for what you need. (the lowest possible cost) more

What is Amazon S3?

Abbreviation for Amazon Simple Storage Service, it provides storage through a web service interface.

With Amazon S3, you can easily

  • Organize your data,
  • Fine-grained access controls according to your specific business, organization, and compliance requirements.
  • Designed to provide 99.999999999% durability more

What is Amazon RDS?

Abbreviation for Amazon Relational Database Service, Amazon RDS is a web service that operates in the cloud.

With it, you can easily

  • Set up, Operate, and Scale your relational database in the cloud.
  • Automate Hardware provisioning, Database setup, Patching and Backups more

Survey (Detail Specification of EC2)

Instance Types:

It is divided into “General purpose(T2, T3…)”, “Computing optimization(C4, C5…)”, “Memory optimization(z1d, R5…)”, “Accelerated computing(P4…)”, and “Storage optimization(H1, I3…)”. more

Pricing Plans:

  • On-Demand Instance - You are charged for what you use. However, since the unit of billing is 1 minute, even if you use 1 second, you will be charged 1 minute.
  • Spot Instance – You can use EC2 resources that are not currently in use by receiving a cheap bid at auction. They are offered at a discount of up to 90% compared to the On-Demand rate.
  • Reserved Instance - When you reserve the usage period (1 or 3 years) and usage (No/Partial/All Upfront) and pay the initial prepayment, you receive a discount on the hourly usage fee. more

2021년 3월 29일 월요일 IT뉴스

1. “어차피 개발자들에게 ‘평생직장’은 없다”

“어차피 개발자들에게 ‘평생직장’은 없다” : 네이버 뉴스 (naver.com)

img

IT·게임업계 개발자 영입 경쟁이 불붙자 네이버가 ‘비전공자 공채 신설’과 ‘정기적 경력 공채’라는 새로운 전략을 내놓았다.

29일 네이버는 올해 개발자 신규 채용 규모를 역대 최대인 900여명으로 정했다면서, 신입 공개 채용을 연 2회로 늘리고 비전공자 채용·육성 트랙을 신설한다고 밝혔다.

  • 비전공자 트랙이란 대학에서 컴퓨터공학 등 개발 관련 전공을 하지 않았어도 IT 개발자로 자질이 있으면 선발해 개발자로 육성하는 제도다.
  • 추가: 매월 1~10일 경력자를 뽑는 ‘월간 영입’ 프로그램을 신설해 매달 정기적으로 경력 사원을 모집한다. 첫 경력 사원 모집은 다음달 1일부터 시작한다.
    7월에 입사 예정인 상반기 신입 개발자 공채는 다음달 2일부터 12일까지 네이버 채용 홈페이지에서 모집을 실시하고, 12월에 입사하는 하반기 공채는 9월에 모집을 실시한다.

2. ‘국민비서’ 카카오·네이버, 건강검진·면허갱신 미리 알려준다

‘국민비서’ 카카오·네이버, 건강검진·면허갱신 미리 알려준다 : 네이버 뉴스 (naver.com)

img

카카오와 네이버가 29일부터 국민비서 알림 서비스를 시작하며, 이날부터 제공되는 서비스는 국민건강보험공단 건강검진 안내, 도로교통공단 운전면허 갱신 알림, 경찰청 교통 과태료 납부 안내 등 교통, 교육, 건강 등 3개 분야 8종이다.

한성숙 네이버 대표이사는 “네이버 전자문서 서비스는 앞으로도 사용자가 내게 필요한 생활밀착형 정보를 빠짐 없이 확인할 수 있고 차질 없이 일정을 챙기는 데 도움을 주도록 최선을 다할 것”이라고 말했다.

3. 하이닉스서 나온 매그나칩 중국에 매각 … “여전한 中 반도체 굴기 야욕”

하이닉스서 나온 매그나칩 중국에 매각 … “여전한 中 반도체 굴기 야욕” : 네이버 뉴스 (naver.com)

img매그나칩반도체 회사 로고. 매그나칩반도체 제공

2004년 하이닉스반도체(옛 SK하이닉스)에서 분사된 매그나칩반도체가 중국에 1조원대로 매각되며, 미국의 집중 견제로 반도체 자립이 어려워진 중국이 자금력을 앞세워 공격적인 해외 반도체 기업 인수에 나선 모양새다.

안기현 한국반도체산업협회 전무는 “매그나칩 인수에 대해 가장 우려되는 부분은 대상이 중국이라는 점으로 결국 중국에 기술과 인력이 넘어가게 될 것”이라며 “이에 따라 디스플레이 쪽에서 중국의 추격이 더 빨라질 수 있다”고 우려했다.

  • 매그나칩: 매그나칩반도체 주요 제품으로는 유기발광다이오드(OLED) 디스플레이 드라이버 구동칩(DDI)과 자동차용 전력 반도체 등이다. 매그나칩반도체의 DDI는 삼성전자에 이어 세계 2위에 올라 있다. 지난해 매출은 5억705만9,000달러(약 5,740억 원), 영업이익은 3,264만5,000달러(약 370억 원) 규모였다. 8,800여 명의 임직원 대부분이 한국인으로 구성된 매그나칩반도체 사업장은 모두 국내에 자리하고 있다.
  • DDI: DDI는 디스플레이를 구성하는 수많은 화소들을 조정해 다양한 색을 구현토록 하는 디스플레이 구동칩이다.

4. 화상회의 피로감에 가상 출퇴근, 노 테크 데이 나선 기업들

화상회의 피로감에 가상 출퇴근, 노 테크 데이 나선 기업들 : 네이버 뉴스 (naver.com)

최근 일부 기업들은 화상회의를 줄이려는 노력을 하고 있으며, 마이크로소프트는 다음 달부터 협업툴 ‘팀즈’ 내에 가상 출퇴근 기능(Virtual Commute)을 운영한다.

글은 매주 화요일 밤을 전자기기를 사용하지 않는 날로 삼고 ‘테크기기 없는 화요일(No tech Tuesday)’ 캠페인을 진행하고 있으며, 원격근무가 장기화하고 화상회의 솔루션 등 기기를 통한 비대면 소통이 강조되면서 일과 사생활의 경계가 없어지는 직원들을 위한 처방이다.

5. 클라우드 빌드·배포 등 단순업무, 오픈소스로 한 번에 해결

클라우드 빌드·배포 등 단순업무, 오픈소스로 한 번에 해결 : 네이버 뉴스 (naver.com)

img김동현 개발자가 깃허브에 공개한 SSM 샌드 커맨드(이미지=깃허브)

29일 만난 앰포의 김동현 개발자는 오픈소스 AWS SSM send-command(이하 샌드커맨드)를 깃허브를 통해 공개했으며, 이를 활용하면 개발자는 AWS 인스턴스에 접속하지 않고도 코드 테스트와 빌드, 배포 등의 업무를 자동으로 처리할 수 있다.

샌드커맨드는 최근 깃허브에 추가된 깃허브 액션스를 활용해 제작됐으며, 김 개발자는 “액션스는 개인 깃허브 저장소에 발생하는 모든 이벤트에 알림을 보내는 일종의 자동화 도구로 아직 많이 알려지지 않았지만 활용범위는 상당히 크다고 생각한다”며 “기존에는 젠킨스를 사용하려 했는데 오래된 기술이라 인터페이스도 불편하고 사용하기 쉽지 않았다”라고 설명했다.