网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
在 RHEL、CentOS 上,你需要添加 EPEL 存储库,然后安装 SSLH,如下所示:
$ sudo yum install epel-release -y
$ sudo yum install sslh -y
**在 Fedora:**
$ sudo dnf install sslh -y
如果它在默认存储库中不可用,你可以如 这里 所述手动编译和安装 SSLH。
**配置 Apache 或 Nginx Web 服务器**
如你所知,Apache 和 Nginx Web 服务器默认会监听所有网络接口(即 0.0.0.0:443)。我们需要更改此设置以告知 Web 服务器仅侦听 localhost 接口(即 127.0.0.1:443 或 localhost:443)。
为此,请编辑 Web 服务器(nginx 或 apache)配置文件并找到以下行:
listen 443 ssl;
将其修改为:
listen 127.0.0.1:443 ssl;
如果你在 Apache 中使用虚拟主机,请确保你也修改了它。
VirtualHost 127.0.0.1:443
保存并关闭配置文件。不要重新启动该服务。我们还没有完成。
## 配置 SSLH
使 Web 服务器仅在本地接口上侦听后,编辑 SSLH 配置文件:
$ sudo vi /etc/default/sslh
找到下列行:
Run=no
将其修改为:
Run=yes
![在这里插入图片描述](https://img-blog.csdnimg.cn/20200519153728569.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQwOTA3OTc3,size_16,color_FFFFFF,t_70)
然后,向下滚动一点并修改以下行以允许 SSLH 在所有可用接口上侦听端口 443(例如 0.0.0.0:443)。
DAEMON_OPTS=“–user sslh --listen 0.0.0.0:443 --ssh 127.0.0.1:22 --ssl 127.0.0.1:443 --pidfile /var/run/sslh/sslh.pid”
这里,
* –user sslh:要求在这个特定的用户身份下运行。
* –listen 0.0.0.0:443:SSLH 监听于所有可用接口的 443 端口。
* –sshs 127.0.0.1:22 : 将 SSH 流量路由到本地的 22 端口。
* –ssl 127.0.0.1:443 : 将 HTTPS/SSL 流量路由到本地的 443 端口。
保存并关闭文件。
最后,启用并启动 sslh 服务以更新更改。
**centos启动命令**
$ sudo systemctl enable sslh
$ sudo systemctl start sslh
**Ubuntu启动命令**
#service sslh enable
#service sslh restart
**测试**
**检查 SSLH 守护程序是否正在监听 443。**
$ ps -ef | grep sslh
sslh 2746 1 0 15:51 ? 00:00:00 /usr/sbin/sslh --foreground --user sslh --listen 0.0.0.0 443 --ssh 127.0.0.1 22 --ssl 127.0.0.1 443 --pidfile /var/run/sslh/sslh.pid
sslh 2747 2746 0 15:51 ? 00:00:00 /usr/sbin/sslh --foreground --user sslh --listen 0.0.0.0 443 --ssh 127.0.0.1 22 --ssl 127.0.0.1 443 --pidfile /var/run/sslh/sslh.pid
sk 2754 1432 0 15:51 pts/0 00:00:00 grep --color=auto sslh
![**加粗样式**](https://img-blog.csdnimg.cn/20200519161422293.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQwOTA3OTc3,size_16,color_FFFFFF,t_70)
现在,你可以使用端口 443 通过 SSH 访问远程服务器:
$ ssh -p 443 [email protected]
示例输出:
[email protected]'s password:
Welcome to Ubuntu 18.04.2 LTS (GNU/Linux 4.15.0-55-generic x86_64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
System information as of Wed Aug 14 13:11:04 IST 2019
System load: 0.23 Processes: 101
Usage of /: 53.5% of 19.56GB Users logged in: 0
Memory usage: 9% IP address for enp0s3: 192.168.225.50
Swap usage: 0% IP address for enp0s8: 192.168.225.51
* Keen to learn Istio? It’s included in the single-package MicroK8s.
https://snapcraft.io/microk8s
61 packages can be updated.
22 updates are security updates.
Last login: Wed Aug 14 13:10:33 2019 from 127.0.0.1
![img](https://img-blog.csdnimg.cn/img_convert/023dc933c7f7089326c40ada2f1db7a8.png)
![img](https://img-blog.csdnimg.cn/img_convert/5e79df8e77f79aab004414a49c809ca4.png)
![img](https://img-blog.csdnimg.cn/img_convert/e5b00764db45a394a52fb8f41c216da4.png)
**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!**
**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**
**[需要这份系统化的资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618631832)**
年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!**
**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**
**[需要这份系统化的资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618631832)**