SSH(Secure Shell)

minseok·2024년 12월 5일
post-thumbnail

💬 SSH

  • protocol 종류
  • remote 서버에 접근하려고 할 때 사용
  • ssh를 사용하면 scp, sftp도 같이 동반해서 사용된다. (파일 전송, 명령어도 사용 가능하다.)
  • 현재는 SSH가 사용되지만 예전에는 telnet, rlogin같은 것을 사용

💬 준비해야하는 것
SSH Client : linux, macos의 경우 설치되어 있음, window의 경우 putty같은 client를 설치해야 함

Server And Credentials : SSH server의 ip와 hostname와 추가적으로 username + passwordSSH Key 중 1가지 방식을 필요로 함

ex)
# ssh cmd
ssh username@hostname

# with port
ssh -p 2222 username@hostname

ssh server가 준비되어 있다면 sftp, scp로도 연결 가능
# scp 
scp [sourceFile] username@hostname:[destinationDirectory]

# sftp
sftp username@hostname
추가)
sshd(ssh deamon)이 실행되어 있어야 접근할 수 있다.(아마?)
"ps aux | grep sshd"로 확인하자.

💬 Key로 접근하기
우선 키를 만들어준다.
ssh-keygen -t rsa -b 4096 -f [key path]

예시를 들어서 아래처럼 하면 만들어진다.

command : 
ssh-keygen -t rsa -b 4096 -f /home/{username}/keys/test_key

result:
[{username}@localhost keys]$ ls
test_key  test_key.pub

pub 확장자를 가진 test_key.pubserver에 둔다. (public key)

나머지 1개의 파일 test_key는 client에게 전달한다. (private key)

이제 pub 키를 서버에 저장해준다.
ssh-copy-id를 사용해도 되고 ~/.ssh/authorized_keys에 직접 pub 키 값을 추가해도 좋다.

이제 클라이언트에서 private key를 참조해서 ssh 명령어를 사용하면 된다.
ssh -i [privat key path] username@hostname

profile
즐겁게 개발하기

0개의 댓글