BV1AL 之無所不記

2019-05-31

單一port提供多種protocol

原本每個port有各自專門用的protocol, 像 443是https, 22是ssh,
但有時可能只有一個port可以用, 卻想要分別有多種service, 這時可以藉由sslh
來管理, 會根據request protocol來轉給相對應的service.

最主要的設定在 /etc/default/sslh 而最基本的三行就夠用:
RUN=no
DAEMON=/usr/sbin/sslh
DAEMON_OPTS="\
--user sslh
--listen 192.168.10.5:8000
--ssh 127.0.0.1:22
--ssl 127.0.0.1:443
--pidfile /var/run/sslh/sslh.pid"

這樣當遠端對這台機器的port 8000要求ssh 連線時, sslh 會把封包轉成local
的port 22去找sshd service, 而當遠端對這台機器的port 8000要求https 連線時,
sslh 又會把封包轉給local 的port 443 去找secure http的service.

sslh 是由 systemctl 來控制起降.
如果搭配firewall 讓22 跟443 都不會被外界access, 只有開啟 sslh 後才能access,
這樣安全又增加了一層.

標籤: ,

0 Comments:

張貼留言

<< Home