보안을 위해서는 포트를 변경하는 것이 최고이다!
만약 ssh의 기본 port를 열어놓는다면 매일 엄청난 중국발 공격을 볼 수 있게 될 것이다.
포트만 변경해도 현저하게 줄어든 공격 횟수를 경험할 수 있을 것이다.
먼저 몇가지 확인이 필요한데...
보안 관련 프로그램이 실행되고 있는지 확인하고,
포트를 변경하기 전 해당 포트를 여는 작업을 해야 한다.
적을게 너무 많아 간단히 적는다.
아래 내용으로 확인이 안된다면 꼭 구글링하여 사전 확인하라.
변경 후 접속 안되면 낭패!!!
// ########### SELinux가 설치되어 있는 경우
// SELinux가 실행중이 아니라면 그대로 진행.
[root@Mansu.Kim ~]# sestatus
SELinux status: disabled
// SELinux가 실행중이라면 종료시키거나 포트를 추가 시킬 것.
[root@Mansu.Kim ~]# sestatus
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: enforcing
Mode from config file: enforcing
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 31
// ########### firewall-cmd가 설치되어 있는 경우
// 포트 추가
[root@Mansu.Kim ~]# firewall-cmd --permanent --zone=public --add-port=12345/tcp
success
[root@conoha-jp ~]# firewall-cmd --reload
success
[root@Mansu.Kim ~]# firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: eno1
sources:
services: cockpit custom--paragent custom--sphinxql dhcpv6-client http https ssh
ports: 12345/tcp 23456/tcp ### 포트 추가된 것 확인
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
[root@Mansu.Kim ~]#
먼저 SSH의 포트를 변경하자!
[root@Mansu.Kim ~]# netstat -anp | grep LISTEN | grep sshd
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 927/sshd
tcp6 0 0 :::22 :::* LISTEN 927/sshd
[root@Mansu.Kim ~]#
[root@Mansu.Kim ~]# cat /etc/ssh/sshd_config | egrep ^\#?Port
#Port 22
[root@Mansu.Kim ~]#
[root@Mansu.Kim ~]# vi /etc/ssh/sshd_config
# If you want to change the port on a SELinux system, you have to tell
# SELinux about this change.
# semanage port -a -t ssh_port_t -p tcp #PORTNUMBER
#
#Port 22
Port 12345 ### 변경하고자 하는 포트로 변경
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::
[root@Mansu.Kim ~]#
[root@Mansu.Kim ~]# systemctl restart sshd
[root@Mansu.Kim ~]#
[root@Mansu.Kim ~]# netstat -anp | grep LISTEN | grep sshd
tcp 0 0 0.0.0.0:12345 0.0.0.0:* LISTEN 2624/sshd
tcp6 0 0 :::12345 :::* LISTEN 2624/sshd
[root@Mansu.Kim ~]#
다음, Mysql(또는 MariaDB)의 포트를 변경하자!
[root@Mansu.Kim ~]# netstat -anp | grep LISTEN | grep mysql
tcp6 0 0 :::3306 :::* LISTEN 984/mysqld
unix 2 [ ACC ] STREAM LISTENING 30138 984/mysqld /var/lib/mysql/mysql.sock
[root@Mansu.Kim ~]
[root@Mansu.Kim ~] vi /etc/my.cnf
# this is only for the mysqld standalone daemon
[mysqld]
port=12345 ### 변경하고자 하는 포트를 적는다.
// my.cnf에 설정 내용이 없고, 다른 디렉토리를 include하는 경우도 있다.
[root@Mansu.Kim ~] vi /etc/my.cnf
#
# This group is read both by the client and the server
# use it for options that affect everything
#
[client-server]
#
# include *.cnf from the config directory
#
!includedir /etc/my.cnf.d ### 실제 설정 내용이 들어 있는 디렉토리
[root@Mansu.Kim ~] vi /etc/my.cnf.d/server.cnf
[root@Mansu.Kim ~]# ls -al /etc/my.cnf.d
합계 28
drwxr-xr-x. 2 root root 99 8월 17 22:04 .
drwxr-xr-x. 124 root root 8192 8월 17 22:07 ..
-rw-r--r--. 1 root root 295 8월 7 00:28 client.cnf
-rw-r--r--. 1 root root 763 8월 7 00:28 enable_encryption.preset
-rw-r--r--. 1 root root 232 8월 7 00:28 mysql-clients.cnf
-rw-r--r-- 1 root root 1090 8월 17 22:04 server.cnf ### 이 파일을 열어서 포트 변경
[root@Mansu.Kim ~] vi /etc/my.cnf.d/server.cnf
# this is only for the mysqld standalone daemon
[mysqld]
port=12345 ### 변경하고자 하는 포트를 적는다.
[root@Mansu.Kim ~]# systemctl restart mariadb
// 변경된 포트 확인
[root@q381-1286 ~]# netstat -anp | grep LISTEN | grep mysqld
tcp6 0 0 :::12345 :::* LISTEN 4918/mysqld
unix 2 [ ACC ] STREAM LISTENING 53434 4918/mysqld /var/lib/mysql/mysql.sock
// 변경된 포트로 접속되는지 확인한다.
[root@Mansu.Kim ~]# mysql -P12345 -uroot -p ### -P 옵션으로 포트를 적어주어야 한다.
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 12
Server version: 10.4.14-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
'재밌는 IT 개발 > 서버는 어려워~ 걍 기본만!' 카테고리의 다른 글
Window 명령어 모음 (0) | 2020.08.19 |
---|---|
나만의 SVN Repository 설치 순서 (0) | 2020.07.29 |
NGINX connection timeout 시간 설정 (0) | 2020.07.27 |
xampp - mysql 설정 (0) | 2020.07.19 |
로컬 개발 환경 설정 (XAMPP, Apache, Database, SVN, TortoiseSVN) (0) | 2020.07.18 |
댓글