CentOS 7 ssh 설정 및 ssh 포트 변경 쉽고 정확하게
- IT/linux
- 2019. 12. 3. 05:37
최신 리눅스 배포판에는 기본적으로 openssh rpm이 설치되어 있습니다. 그렇기 때문에 굳이 따로 설치할 필요는 없지만 워낙 많이 사용되고 있기 때문에 혹시나 없으면 굉장히 불편한 게 바로 ssh입니다.
이번 시간에는 centos 7 ssh 설정 방법에 대해서 정확하면서 쉽게 설명드리겠습니다. 가시죠!!
# ssh 프로토콜 사용 조건 * openssh-server RPM이 설치되어 있고, 프로세스가 동작 중 이어야 한다. * 22번(default port number) tcp 포트에 대해 방화벽 정책에서 허용되어야 한다.
|
# 설치 유무 확인 아래와 같이 최근 리눅스 배포판에는 기본적으로 openssh-server가 탑재되어 있습니다. [root@Eloquence ~]# rpm -qa | grep -i openssh-server
또는
[root@Eloquence ~]# which sshd /usr/sbin/sshd
# 설치 방법 설치 유무 확인 과정에서 openssh-server가 보이지 않는 경우 yum으로 설치 진행 [root@Eloquence ~]# yum install openssh-server
. . . (중략)
Intsalling : openssh-server-7.4p1-21.e17.x86_64 1/1 Verifying : openssh-server-7.4p1-21.e17.x86_64 1/1
Installed: openssh-server.x86_64 0:7.4p1-21.e17
Complete!
# 설치 확인 [root@Eloquence ~]# rpm -qa | grep -i openssh-server
또는
[root@Eloquence ~]# which sshd /usr/sbin/sshd
|
# ssh config 파일 설정 [root@Eloquence ~]# vi /etc/ssh/sshd_config # $OpenBSD: sshd_config,v 1.100 2016/08/15 12:32:04 naddy Exp $
. . . (중략)
. . . (중략)
# Authentication: 위 값들은 보안상 '#'주석 제거 후 설정 적용이 권장된다.
|
# 방화벽 설정 (CentOS6, 7 그리고 Ubuntu 각각 방법이 상이하다) ssh를 사용하기 위해 특정 포트를 방화벽에서 허용시켜준다.
# CentOS 6 - iptables (방화벽) [root@Eloquence ~]# iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
# CentOS 7 - firewalld (방화벽) [root@Eloquence ~]# firewall-cmd --zone=public --add-port=22/tcp --permanent
# Ubuntu - ufw (방화벽) [root@Eloquence ~]# ufw allow 22/tcp
|
# ssh-server 프로세스 실행 # CentOS 6 [root@Eloquence ~]# service sshd start [root@Eloquence ~]# service sshd status . . . (후략)
[root@Eloquence ~]# ps -ef | grep sshd
# CentOS 7 [root@Eloquence ~]# systemctl start sshd [root@Eloquence ~]# systemctl status sshd
|
설치 및 모든 설정이 끝났습니다. 이제는 서버 ip 확인 후 클라이언트에서 ssh를 이용하여 서버로 접근할 수 있겠네요!!
아! 혹시나 ssh default port 22번을 바꾸고 싶다면 아래 설명을 참고하세요.
# ssh 포트 변경 임시로 포트를 2222로 변경하는 것으로 가정하겠습니다.
# ① sshd_config 파일 수정 [root@Eloquence ~]# vi /etc/ssh/sshd_config # $OpenBSD: sshd_config,v 1.100 2016/08/15 12:32:04 naddy Exp $
. . . (중략)
# ② services 파일 수정 [root@Eloquence ~]# vi /etc/services
. . . (중략)
ftp 21/tcp
# 방화벽 설정 # CentOS 6 - iptables (방화벽) [root@Eloquence ~]# iptables -A INPUT -p tcp -m tcp --dport 2222 -j ACCEPT
# CentOS 7 - firewalld (방화벽) [root@Eloquence ~]# firewall-cmd --zone=public --add-port=2222/tcp --permanent
# Ubuntu - ufw (방화벽) [root@Eloquence ~]# ufw allow 2222/tcp
# ssh-server 프로세스 재시작 [root@Eloquence ~]# systemctl restart sshd [root@Eloquence ~]# systemctl status sshd . . . (후략)
[root@Eloquence ~]# ps -ef | grep sshd
# 변경된 포트 확인 [root@Eloquence ~]# netstat -natp tcp6 0 0 ::1:25 :::* LISTEN 1156/master
※. 3번째 정보는 현재 클라이언트에서 서버로 ssh 프로토콜로 1대가 접속되어 있어서 나오는 정보.
|
centos 7 ssh 포트 변경 방법까지 자세하게 알아봤습니다. 위 방법대로 진행하면 어려운 거 하나 없이 ssh 프로토콜을 설정하고 사용하실 수 있습니다. 감사합니다.
'IT > linux' 카테고리의 다른 글
[리눅스] Linux xinetd(슈퍼데몬) 설치 및 설정 (0) | 2019.12.30 |
---|---|
CentOS 7 ssh root 접속 제한/허용 (access denied) (0) | 2019.12.29 |
CentOS 7 ifconfig 명령어 안될 때 (0) | 2019.12.02 |
리눅스 hostname 변경 (CentOS 6,7 + 대문자 변경) (0) | 2019.12.01 |
리눅스 CentOS 7 설치 방법 (4) - 그 외 설정 (0) | 2019.06.27 |