SSH
SSH란 Secure Shell Protocol, 즉 네트워크 프로토콜 중 하나로 컴퓨터와 컴퓨터가 인터넷과 같은 Public Network를 통해 서로 통신을 할 때 보안적으로 안전하게 통신을 하기 위해 사용하는 프로토콜입니다.
Client <---------------------> Server
idrsa(비밀키) id_rsa.pub(공개키)
RSA 암호는 공개키 암호시스템의 하나로, 암호화뿐만 아니라 전자서명이 가능한 최초의 알고리즘으로 알려져 있다. RSA가 갖는 전자서명 기능은 인증을 요구하는 전자 상거래 등에 RSA의 광범위한 활용을 가능하게 하였다.
chapter1 >
1.client는 server에 접속
2.server는 임의의 키를 client에게 전송
chapter2 >
3.client는 임의의 키를 비밀키의 값을 이용해 암호화
4.암호화된 값을 server에게 전송
5.server는 암호화된 값을 공개키를 활용해서 복호화(암호화를 복구)
6.복호화된 값을 client에게 전송
7.client는 처음에 받은 임의의 키값과 복호화된 값이 같으면 인증확인
시작> PoweShell 검색해서 들어가서 ssh-keygen치고 엔터키 누르기 cd. ssh입력 엔터 엔터 엔터
RSA뜨면 ls 치고 엔터(엘에스) 디렉터리 나오고 뭔가 촤르륵 나오면 완료.
C:\Users\user\.ssh 에서 id_rsa 파일과 , pub파일이 생성된 것을 확인 할 수 있다.
googlecloud 로그인해서, 탐색에서 결제에서 카드 등록하고 / 시작하기에서 대시보드 클릭
상단에 노란색 박스부분 클릭하고, 프로젝트 선택 > 새프로젝트 클릭
프로젝트 이름 입력 > 만들기
알림에 프로젝트 선택 클릭
탐색 > computerEngine > VM인스턴스 클릭
설치 클릭
인스턴스만들기 클릭
부팅디스크>변경
노란색 체크부분 변경
방화벽 둘다 체크
보안 > 노란색부분 체크 > 엑세스관리
엑세스관리>수동으로 생성된 SSH 키 추가
여기서 아까 파워쉘을 통해 만들어진 id_rsa.pub파일을 메모장으로 연다음 텍스트 전체복사하여
SSH키1에 입력합니다
만들기 클릭
상단에 생성된 것을 확인.
SSH 누르기
sudo vi /etc/ssh/sshd_config 입력 후 엔터
뭔가 촤르륵 뜨는데 PasswordAuthentication no를 찾아서
no인 것을 확인 후 i를 누른다.
i를 누르고 yes 입력
ctrl+; 단축키를 누르면 :이 최하단에 생긴다
: 부분에 wq 입력 후 엔터
sudo service sshd restart 입력 후 엔터 > 엔터 후에 아무것도 안떠야함!
sudo useradd -m - s /bin/bash - G users test001
파란색 부분은 이름 정하여 입력
sudo passwd test001 입력하고 엔터누르면
New password: 라고 패스워드를 설정하는 것이 뜨는데
이때 입력한 비밀번호는 보안때문에 보이지 않으므로 조심히 입력해주자.
Retype new password: 가 뜨면 입력했던 비밀번호를 다시 한번 입력한다.
하단에 updated successfully라고 뜨면 비밀번호가 잘생성된것
그다음
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
위 링크에 들어가서
파일 다운로드
다운로드받은 putty 열기
외부IP를 클립보드로 복사해주고,
아까 다운 받았던 putty를 켜서
Session > HostName에 외부 IP 붙이기
SSH > Auth>Browse누르고
아까 파워쉘로 만든 id_rsa 파일(pub말고)을 클릭해준다. 그다음 putty에서 버튼 누르고
Accept누르고
login as: 에 아까 정했던 이름을 입력해준다.
그리고 마찬가지로 아까 정했던 비밀번호도 입력해준다.
이렇게 창이 뜨면 올바르게 된 것.
ls를 입력해준다
pwd도 입력하기
다운로드 폴더에 임의로 txt파일을 만들어준다.
다시 파워쉘 열어주고
cd~
cd .\Downloads\
ls
를 차례대로 입력
디렉터리가 나오고 촤르륵 나오면 잘 올라간 것!
아까 창을 열어서 /home/test001 부분을 복사해준다.
파워쉘에
scp .\test.txt test001@외부id:/home/test001을 입력해준다. (외부아이피 뒤에 꼭 : 을 입력해주자)
그다음 yes를 입력하고 (창에는 안보여도 yes 치면됩니다)
아까 지정했던 비밀번호를 입력해준다.
vi test.txt 치면 텍스트 파일 안에 있는 내용이 확인된다.
자 이제 intelli j를 켜봅시다.
도구>배포>원격호스트찾아보기
이름 정해줍니다.
호스트에 아까 사용했던 외부IP입력해주고
사용자이름 : 아까 정해줬던 이름 입력
인증타입: 키쌍
비공개키파일은 자동으로 위치가 지정되어있을텐데, 올바르지않으면 다시 설정해주시면됩니다.
아까 지정했던 비밀번호 기억나시죠? 그대로 입력합니다.
SFTP연결 성공하면
이렇게 변한것을 확인 할 수있습니다.
축하합니다 :) ♡
덧! ☆
도구>SSH세션시작
아까 설정해준 것 클릭
여기서 연습할수있습니다!
구글클라우드서버에 우리의 컴퓨터 하드디스크가 연동되어
우리가 만든 파일을 업로드하기도하고, 가져오기도 할 수 있게 설정해보았다.
'STUDY > SERVER OS' 카테고리의 다른 글
[Server] 서버란 무엇인가? (0) | 2023.01.17 |
---|---|
[Server] WinSCP 설치 방법 (0) | 2023.01.16 |
[Server] PuTTY 설치 방법 (0) | 2023.01.05 |
[Google Cloud] 외부 고정 IP 설정 (0) | 2022.08.09 |
[Google Cloud] gcp 환경 구성 / 네트워크 기초 (0) | 2022.06.14 |