vagrant init <IMAGE>
vagrant up [VM_NAME]
vagrant reload [VM_NAME]
vagrant halt [VM_NAME]
vagrant destroy [VM_NAME]
vagrant ssh [VM_NAME]
Vagrant.configure("2") do |config|
# Define VM
config.vm.define "myvm1" do |centos|
centos.vm.box = "centos/7"
centos.vm.hostname = "myvm1"
centos.vm.network "private_network", ip: "192.168.56.11"
centos.vm.provider "virtualbox" do |vb|
vb.name = "myvm1"
vb.cpus = 2
vb.memory = 2048
end
config.vm.provision "shell", inline: <<-SHELL
#!/bin/bash
echo "hello world" > /tmp/hello.txt
SHELL
end
# Define VM
config.vm.define "myvm2" do |centos|
centos.vm.box = "centos/7"
centos.vm.hostname = "myvm2"
centos.vm.network "private_network", ip: "192.168.56.12"
centos.vm.provider "virtualbox" do |vb|
vb.name = "myvm2"
vb.cpus = 2
vb.memory = 2048
end
config.vm.provision "shell", inline: <<-SHELL
#!/bin/bash
echo "hello world" > /tmp/hello.txt
SHELL
end
end
~/vagrant/ansible/Vagrantfile
Vagrant.configure("2") do |config|
# Define VM
config.vm.define "controller" do |centos|
centos.vm.box = "centos/7"
centos.vm.hostname = "controller"
centos.vm.network "private_network", ip: "192.168.100.10"
centos.vm.provider "virtualbox" do |vb|
vb.name = "controller"
vb.cpus = 2
vb.memory = 2048
end
end
# Define VM
config.vm.define "node1" do |centos|
centos.vm.box = "centos/7"
centos.vm.hostname = "node1"
centos.vm.network "private_network", ip: "192.168.100.11"
centos.vm.provider "virtualbox" do |vb|
vb.name = "node1"
vb.cpus = 2
vb.memory = 2048
end
end
# Define VM
config.vm.define "node2" do |centos|
centos.vm.box = "centos/7"
centos.vm.hostname = "node2"
centos.vm.network "private_network", ip: "192.168.100.12"
centos.vm.provider "virtualbox" do |vb|
vb.name = "node2"
vb.cpus = 2
vb.memory = 2048
end
end
end
파일의 인코딩
라인의 끝
vagrant up
vagrant ssh node1
sudo vi /etc/ssh/sshd_config
PasswordAuthentication yes
sudo systemctl restart httpd
vagrant ssh node2
sudo vi /etc/ssh/sshd_config
PasswordAuthentication yes
sudo systemctl restart httpd
vagrant ssh controller
ssh-keygen
ssh-copy-id vagrant@192.168.100.11
ssh-copy-id vagrant@192.168.100.12
보안의 3요소
암호학 제공 기능:
시저
용어
Plain Text: 평문
Cipher Text: 암호문
Key: 키
암호화: 평문--> 암호문
복호화: 암호문 --> 평문
치환, 전치 얼마나 어렵게 만드는가?
Symmetric
암호화 키 = 복호화 키
기밀성 제공
Symmetric Key
Secret Key
알고리즘
문제점?
속도: 빠르다
Asymmetric
암호화 키 =/ 복호화 키
키 쌍(KeyPair)
A(자신)-B(상대방)
알고리즘
속도: 느려요
Hash Function
Hash Algorithm
One Way Function: 일방향 함수
Message Digest: 메시지 축약
무결성
Input(Message) --f(x)--> Hash Value
Input: 길이 제한 X
Output(Hash Value): 고정된 길이
입력 값 같으면 = 출력 값 같다
알고리즘
해시 문제점: Birthday Paradox
https://ko.wikipedia.org/wiki/SHA
Public Key Infrastructure: 공개키 기반 구조
공개키 방식: 상대방의 공개키를 검증 방법 X
PKI: 제 3자(CA)가 인증서(공개키) 검증을 대신
구조
인증서: x.509 표준