1. selinux 사용시 sshd 포트를 1024 이하로 변경 하면 selinux에서 작업을 해야 함

 : selinux 에서 허용되지 않은 계정이 1024 이하 포트를 사용 못하게 막는듯

 

2. sshd의 경우 /etc/passwd 에 등록된 sshd 계정으로 실행 되는듯

: service sshd start를 하면 sshd 계정으로 되고 /usr/sbin/sshd 를 그냥 실행하면 root로 되는듯

 selinux on 상태에서 포트는 1024 이하로 하고 service 로 실행시 bind 실패,

 /usr/sbin/sshd 직접 실행시 바인드 되어서 실행 됨 

 

 

---------- 2023.03.08 ----------

 

[root@RHEL87 ~]# systemctl start sshd
Job for sshd.service failed because the control process exited with error code.
See "systemctl status sshd.service" and "journalctl -xe" for details.

 

SELinux is preventing /usr/sbin/sshd from name_bind access on the tcp_socket port 19222.

*****  Plugin bind_ports (92.2 confidence) suggests   ************************

If you want to allow /usr/sbin/sshd to bind to network port 19222
Then you need to modify the port type.
Do
# semanage port -a -t PORT_TYPE -p tcp 19222
    where PORT_TYPE is one of the following: ssh_port_t, vnc_port_t, xserver_port_t.

 

[root@RHEL87 ~]# semanage port -a -t ssh_port_t -p tcp 19222
[root@RHEL87 ~]# systemctl start sshd
[root@RHEL87 ~]# systemctl status sshd
● sshd.service - OpenSSH server daemon
   Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2023-03-08 16:13:11 KST; 4s ago
     Docs: man:sshd(8)
           man:sshd_config(5)
 Main PID: 9865 (sshd)

 

[root@RHEL87 ~]# vi /etc/firewalld/services/ssh.xml

<port protocol="tcp" port="19222"/>

 

[root@RHEL87 services]# firewall-cmd --reload
success

Posted by 까만핀치
,