[CentOS 7] 내가 정한 포트로 SSH 구현하기
Linux Server 2018. 9. 4. 16:02 |CentOS7에는 기본으로 OpenSSH 서버가 설치된다.
따라서 별도의 설치가 필요하지 않으나, 설치여부를 확인할 필요는 있다.
[keysco@server ~]$ rpm -qa openssh-server openssh-server-6.6.1p1-11.el7.x86_64 [keysco@server ~]$
OpenSSH 서버 패키지가 설치되어 있는지 확인하고,
[keysco@server ~]$ systemctl status sshd sshd.service - OpenSSH server daemon Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled) Active: active (running) since 화 2018-09-04 15:29:12 KST; 2min 44s ago Main PID: 1122 (sshd) CGroup: /system.slice/sshd.service └─1122 /usr/sbin/sshd -D [keysco@server ~]$
sshd 데몬(서비스)의 가동 여부를 확인한다.
[keysco@server ~]$ sudo vi /etc/ssh/sshd_config
SSH 포트번호를 바꾸고 싶다면 "sshd_config" 파일을 열어서 "#Port 22" 를 "Port xxxx"로 바꿔준다.
[keysco@server ~]$ sudo service sshd restart Redirecting to /bin/systemctl restart sshd.service
SSH 데몬을 재시작한다.
[keysco@server ~]$ ss -nalt State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 *:22 *:* LISTEN 0 128 127.0.0.1:631 *:* LISTEN 0 100 127.0.0.1:25 *:* LISTEN 0 128 :::22 :::* LISTEN 0 128 ::1:631 :::* LISTEN 0 100 ::1:25 :::* [keysco@server ~]$
새로 지정한 포트가 리스닝 상태인지 확인하고
만약 새로 지정한 포트가 없다면 SELinux의 SSH포트 정의에 추가해줘야 한다.
[keysco@server ~]$ sudo semanage port -l | grep ssh ssh_port_t tcp 22 [keysco@server ~]$
현재 SSH포트를 확인하고
[keysco@server ~]$ sudo semanage port -a -t ssh_port_t -p tcp 12345 [keysco@server ~]$
ssh_port_t 정의에 TCP 포트 xxxx를 추가한다.
[keysco@server ~]$ sudo service sshd restart Redirecting to /bin/systemctl restart sshd.service [keysco@server ~]$ ss -nalt State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 *:12345 *:* LISTEN 0 128 127.0.0.1:631 *:* LISTEN 0 100 127.0.0.1:25 *:* LISTEN 0 128 :::12345 :::* LISTEN 0 128 ::1:631 :::* LISTEN 0 100 ::1:25 :::* [keysco@server ~]$
다시 SSH 데몬을 돌리고 포트를 확인한다.
이제 포트는 열렸지만 SSH접속은 아직도 불가능하다. 방화벽에서 차단되었기 때문이다.
[keysco@server ~]$ firewall-cmd --list-all public (default, active) interfaces: enp2s1 sources: services: dhcpv6-client ssh ports: masquerade: no forward-ports: icmp-blocks: rich rules: [keysco@server ~]$
현재의 방화벽 상태 확인
[keysco@server ~]$ sudo firewall-cmd --permanent --zone=public --add-port=12345/tcp success [keysco@server ~]$
새로운 포트를 방화벽 허용규칙에 추가해주고
[keysco@server ~]$ sudo firewall-cmd --reload success [keysco@server ~]$
방화벽 재시작
[keysco@server ~]$ firewall-cmd --list-all public (default, active) interfaces: enp2s1 sources: services: dhcpv6-client ssh ports: 12345/tcp masquerade: no forward-ports: icmp-blocks: rich rules: [keysco@server ~]$
변경된 방화벽 확인.
Copyright (c) 2002-2017 NetSarang Computer, Inc. All rights reserved. Type `help' to learn how to use Xshell prompt. [c:\~]$ ssh 192.168.10.1 12345 Connecting to 192.168.10.1:12345... Connection established. To escape to local shell, press 'Ctrl+Alt+]'. Last login: Tue Sep 4 15:30:21 2018 [keysco@server ~]$
마지막으로 변경된 SSH포트로 접속 테스트.
'Linux Server' 카테고리의 다른 글
[CentOS 7] 공개키 인증으로 공개된 망에서 SSH 사용하기 (1) | 2018.12.28 |
---|---|
[CentOS 7] 보다 안전한 SMB(Samba) 서버로 파일 공유하기 (0) | 2018.12.24 |
[CentOS 7] VNC로 원격 데스크톱 구현하기 (0) | 2018.09.07 |
[CentOS 7] C컴파일러, GCC 설치하기 (0) | 2016.12.11 |
[CentOS 7] CUI 부팅하기 (0) | 2016.10.06 |
fstab - permanent mount (0) | 2015.09.06 |