- VPC : AWS에서 사용하는 네트워크
- 만약 랜카드가 두개가 존재하고, CentOS에서 랜카드 하나가 켜져있지 않을 수 있다.
vi /etc/sysconfig/network-scripts/ifcfg-enp0s8 ONBOOT=yes systemctl restart network
- 파일 -> 환경설정 -> 네트워크
- 오른쪽에 +를 눌러서 NatNetwork를 새로 만든다.
- 또, VM에서 네트워크를 NatNetwork로 설정해준다.
- 여기서 NatNetwork를 선택할 수 있는데, 이는 NatNetwork도 여러개를 선택할 수 있기 떄문이다.- NAT와 NatNetwork의 차이점은, 하나의 IP로 같이 쓰는지(NAT), IP를 다르게 주는지의 차이이다.(NatNework), 또 이것은 Virtual Box만의 특징이고 다른환경에서는 이렇지 않다.
- HostOnly를 사용하면 Manager(Host Win10)으로는 들어갈 수 있지만, 외부에서는 들어올 수 없다.
- 10.0.X.X랑 192.168.X.X랑은 다르다.
- 이를 연결하려면, 라우팅이나 포트포워딩이 필요하며, 이것이 공유기가 하는 역할이다.
- Virtual Box에서는 환경설정->네트워크 설정에서 세팅할 수 있다.
- VM이 사설 네트워크 안에서 여러개가 존재할 때,
NAT를 이용하면 동일한 IP를 가지게 된다. 따라서, 각 VM에 접속할 떄, Port를 다르게 주어 포트포워딩을 해야한다.- 그러나 그렇게하려면 각VM마다 다르게 설정해야 하기 때문에 하나의 NatNetwork로 VM을 관리하며, 각 다른 IP와 하나의 NatNetwork규칙으로 컨트롤 할 수 있다.
- NatNetwork규칙에서 HostIP는 Win10의 IP를 넣고, Guest IP는 각 VM의 IP를 입력해준다.
- 또, 규칙마다 다른 port를 주어 VM마다 다른 Port를 가지게 한다.
- 설정 후, CMD에서 VM에 접속할 때, ssh root@[HostIP]로 접속 할 수 있지만 여기에 port번호를 추가로 넣어 VM을 구분하여 들어갈 수 있다.
- 네트워크는 리소스 (예 : 프린터 및 CD)를 공유하거나 파일을 교환하거나 전자 통신을 허용하기 위해 연결된 두 대 이상의 컴퓨터로 구성된다.
- CentOS7 리눅스 서버 (AWS EC2 - Amazon Linux 2 Image와 비슷하다.)
- 키 쌍은, 특정 인증 프로토콜에 사용되는 공개 키 (자물쇠-서버, Public), 프라이빗 키(열쇠 - 개인 폴더, Private; *.pem) 파일을 나타낸다.
- 퍼블릭클라우드의 보안은 대부분 암호방식이 아닌 키방식이다.
# VM접속 후, ssh root@[IPaddress] mkdir /root/.ssh # 다시 host CMD로 이동 eixt # 키페어 생성 ssh-keygen -t rsa cd %UserProfile%\.ssh # 키 VM으로 Copy scp id_rsa.pub root@192.168.56.120:/root/.ssh/authorized_keys # 키로 접속해보기 ssh -i id_rsa root@192.168.56.120 vi /etc/ssh/sshd_config PasswordAuthentication no Syste.ctl restart sshd
cd %UserProfile%\.ssh
: id_rsa가 있는 위치로 간다.ssh -i id_rsa root@192.168.0.69
: 키로 접속
- HTTP는 HTML문서와 같은 리소스들을 가져올 수 있도록 해주는 프로토콜이다.
- 저번시간에 했던 웹페이지가 접속이 안된다.
curl 127.0.0.1
-curl
: HTML 코드를 출력해준다.
127.0.0.1
: 자기자신에게 제공하는 Loopback IP, 내 서버를 테스트하는데 사용한다.systemctl status httpd
: httpd의 상태를 확인하는 명렁어systemctl start httpd
: 서버 구동하기systemctl status httpd
: 서버 Active(start)된거 확인하기curl 127.0.0.1
: HTML소스 출력되는거 확인하기systemctl stop httpd
: start와 반대로 httpd종료하는 명령어systemctl restart httpd
: httpd 다시시작 하는 명령어
- httpd 서버는 VM이 꺼졌다 켜질 때, 서버가 항상 꺼져있다.
- VM이 켜져있을 떄, 자동으로 시작(Active)하려면 시작프로그램에 등록을 해야한다.
systemcrl enable httpd
: 자동으로 httpd가 작동시키려면enable명령어
를 사용한다.
- enable 명령어는 시작프로그램들 중, Symbol링크를 시작프로그램에 넣어준다.- 즉, httpd를 start명령어로 start해주고, enable로 등록해주어야 한다.
- 서버 프로그램들은 주로 start를 해줘야 하고, 꺼졌다 켜지면 다시 켜질 수 있도록 enable명령어로 등록해 줘야 한다.
- 매번 자동으로 올라오는 서비스도 있지만, 만약 수동으로 OnOff해주려면
systemctl disable httpd
명령어를 사용한다.
- 이 명령어는 stop의 의미는 없어 작동이 유지되나 reboot하면 꺼져있다.
- 방화벽은 내부에서 나가는 것을 제외하고 밖에서 시작된 접속을 막는다.
- 그중 필요한 포트, 필요한 규칙을 만들어 규칙에 맞는것만 오픈한다.
firewall-cmd
: firewall어플리케이션을 컨트롤하는 명령어firewall-cmd --get-active-zone firewall-cmd --zone=public #지금 zone하나밖에 없어서 생략가능하다. firewall-cmd --permanent --add-servid=http #서비스에 http를 삭제 firewall-cmd --reload
- http 서비스를 추가가 아닌 삭제하려면
firewall-cmd --permanent --remove-service=http
firewall-cmd --permanent --add-port=22/tcp
: 이렇게 port번호로도 가능하다.- (참고)
--옵션.풀네임
,-옵션.줄임말
,--
와-
의 차이는 풀네임이냐 아니야의 차이이다.-permanent
는 껐다가 켜도 실행하게하기 위해 넣은 옵션이다?
마운트(nound)s는 컴퓨터 과학에서 저장 장치에 접근할 수 있는작업이다.
좁은 의미로는 유닉스 계열의 운영 체제에서의 mount 명령어 또는 그 명령을 사용하는 것입니다.
mount 명령어를 사용하면 저장 장치의 접근 경로를 원하는 위치에 생성할 수 있다.
마운트를 이용하면 분산 파일 시스템으로 확장하기가 용이하다. 사용자는 마운트된 미디어된 미디어의 파일들에만 접근이 가능하다.
df -h
: 현재 디스크 사용량 보기
lsblk
: 디스크별 사용량을 보여준다.VBox에서 현재VM에 설정에 들어가 디스크에 동적할당 으로 8Gb 가상디스크를 생성해준다.
sda : sd는 디스크를 말하는 것이고, a는 windows로 따지면 C드라이브다.
- win에서 C D E 순으로 생성되고, Linux에서는 A B C 순으로 생성된다.
- sbB (8Gb)가 잘 연결된 것을 볼 수 있다.
mkfs -t xfs /dev/sdb
: /dev/sdb 여기서 sdb라는 장치파일을 xfs로 포맷하는 명령어이다.-t
는 포맷의 타입을 설정할 수 있는 옵션이다. 여기서는 xfs로 설정했다.
- xfs는 linux에서 사용하는 포맷형식이다.
- 윈도우는 아래 형식으로 포맷된다.
포맷 후 이런 출력이 나온다.
- 여기서 bsize는 블록 사이즈를 뜻한다.
새로 연결하기 위한 생성한 디스크는 sdb이고, 이것을 직접 사용할 수는 없고,
/data라는 폴더를 sdb에
mount하여 그 폴더를 sdb처럼 사용한다.
- /data는 결국 sdb로 들어가는 문이 되는 것이고, 실제 데이터는 sdb에 있다.
- 그래서 umount /data하면 /data에는 아무것도 없게 된다.
VM poweroff 후, VM Vbox에서 XFCE에서 연결 해제하고, Minimal에 연결하고, mount후 내부를 보면 file1이 존재한다.
Minimal에서 Mount까지 진행하였다. 그러나 이때
reboot
하면 mount가 풀려버린다.
그래서 항상 자동으로 mount하기위해 시작프로그램에 올린다.
cp /etc/fstab /etc/fstap.orig
: fstab 원본을 /etc/fstap.orig로 복사해서 백업을 만들어 놓는다.
blkid
: 디스크의 UUID들을 보여준다.
sdb 의 UUID를 복사한 후
vi /etc/fstab
: 에 마지막에 붙혀넣어준다
UUID를 얻어 /etc/fstab 마지막에 붙혀넣어 주었다.
lsblk를 살펴보면 sdb가 /data에 잘 mount된 것을 볼 수 있다.
또, file1또한 존재함을 볼 수 있다.
- 서버 메시지 블론 (Server Message Block, SMB)은 도스나 윈도우에서 파일이나 디렉터리 및 주변 장치들을 공휴나느데 사용되는 메시지 형식입니다.
- NetBIOS라는 SMB 형식에 기반을 두고 있으며, 많은 네트워크 제품들도 SMB를 사용합니다. 이러한 SMB 기반의 네트워크에는 랜매니저, 윈도우 포 워크그룹(Windows for Workgroups), 윈도우 NT, 그리고 랜 서버(Lan Server) 등이 있습니다.
- 서로 다른 운영 체제 사이에 파일을 공유할 수 있도록 하기 위해 SMB를 사용하는 제품들도 많이 있습니다. 그 중 하나가 삼바인데, 유닉스와 윈도우 컴퓨터 공간에 디렉터리와 파일을 공유할 수 있게 합니다.
yum install -y samba
: 삼바 설치mkdir -p /var/samba/share
: mkdir에 -p옵션을 주어서 폴더가 없으면 만들면서 share란 dir을 생성한다.
chmod 777 /var/samba/share
adduser [ID]
: 우리는 'kosa'가 있으니 넘어간다.passws [PW]
smbpasswd -a kosa
: 삼바용 id와 비밀번호 생성- 제어판->네트워크및인터넷->네트워크및공유센터
- 위 이름을 확인한다.
vi /etc/samba/smb/conf
: 이곳에 들어가서, SAMBA를 지우고, workgroup = [위사진 네트워크 이름]으로 바꿔준다.
- 또, valid users = kosa로 바꿔준다.
systemctl enable --now smb
: smb를 시작하면서 상시 켜져있도록 enable해준다.
-enable --now
옵션은start + enble
을 한번에 해주는 것이다.systemctl enable --now nmb
: 위와 같이 nmb도 시작과 동시에 상시 켜져있도록 enable해준다.
윈도우 클라이언트 접속 방법- 실행창에 \[Host IP주소]로 검색해서 들어간다.
- share폴더에 test_samba.txt를 만들어준다.
CentOS7 클라이언트 접속 방법- Minimal VM으로 접속한다.
- `yum install -y samba-client
smbclient //[samba server IP]/share -U kosa
- 네트워크 파일 시스템(Network File System, NFS)은 1984년에 썬 마이크로시스템즈(현재 Oracle)가 개발한 프로토콜이다.
- 클라이언트 컴퓨터의 사용자가 네트워크 상의 파일을 직접 연결된 스토리지에 접근하는 방식과 비슷한 방식으로 접근하도록 도와준다.
- 다른 수많은 프로토콜과 마찬가지로 ONC RPC시스템을 기반으로 한다. 또, 오픈소스이므로 누구나 구현할 수 있다.