linux

[Linux] configure and secureSSH

broook 2023. 6. 26. 17:27

hardware에 접근하기 위해 kernel이 존재하고 user가 kernel에 직접 명령을 내리기 위해 shell을 사용한다.

corn shell, cshell zbash, bash등 shell의 종류는 다양하며 각 쉘마다 장단점과 특징이 존재한다.    

일반적으로 기본적으로 설치되어있는 shell은 bash shell이다.

 

ssh를 사용하려면 ssh를 먼저 설치해야 한다. ssh 서비스를 실행시키면 sshd 라는 이름으로 데몬이 실행되며 이 데몬이 ssh에 관련된 작업을 수행하게 된다.

 

ssh 키를 통해 서버를 연결하는 방법은 간단하다.

1. ssh  설치확인 후 미설치시 설치 진행 yum list | grep ssh

 미설치 시 yum install openssh-server openssh-clients openssh-askpass

 

2 ssh keygen 으로 public private key 생성

3. ssh-copy-id root@ip

4. ssh root@ip 로 접속

처음 1회 비밀번호를 요구하고 이후부터는 자동으로 접속이 가능해진다.

 

- password를 이용하지 않고 key를 이용해서 ssh 접속을 하는 이유는

매번 패스워드를 치기 귀찮기 때문도 있지만 script를 통한 자동화가 가능해진다는 점이 크다.

 

- /etc/ssh/에는 ssh_config 도 존재하고 sshd_config 파일도 존재한다.

ssh_config 는 해당 서버에서 나가는 traffic에 대한 규칙을 정의한 파일,

sshd_config 해당 서버로 들어오는 traffic에 관한 규칙을 정의하는 파일이라고 생각하면 된다.

 

- ssh를 이용한 통신시에

특정 사용자만 접속을 허용하고 싶다거나

root로 로그인 하는것을 막고 싶다거나

22번이 아닌 다른 port로 ssh 연결을 원하거나 하는 설정들을 지정해주고 싶다면

/etc/ssh/sshd_config 파일에서 해당하는 필드를 찾아 수정해주면 된다.

 

예를들어 vi /etc/ssh/sshd_config 를 통해

ClientAliveInterval 600

ClientAliveCountMax 0

으로 설정해 놓으면 600초가 지나도록 상대방의 응답이없으면 자동으로 logout 하는 기능이 탑재된다.

'linux' 카테고리의 다른 글

kick start 를 사용해서 linux 설치하기  (0) 2025.01.15
[Linux] systemctl 명령어  (0) 2023.04.07