背景:因为使用脚本进行上传、杀进程、部署一键部署springboot,为了服务器安全,决定使用普通用户来操作
问题:内置tomcat启动失败:java.net.SocketException: Permission denied
原因:百度得知非root用户不允许使用1024以下的端口号
解决方法无非就是修改项目端口号。可是改了端口用户就不能使用默认端口访问。所以必须要做端口转发。一开始想到用nginx,但是又太麻烦。百度又得知,centos使用内置iptables就能做转发,大喜过望。
具体步骤如下:
- 切root用户,修改/etc/sysctl.conf
vim /etc/sysctl.conf
在末尾加入如下配置:
net.ipv4.ip_forward=1
保存后,执行:
sysctl -p
使配置生效
2. 添加iptables规则(本地转发):
iptables -t nat -A PREROUTING -p tcp --dport 2222 -j REDIRECT --to-port 22
更多关于端口转发的信息(包括转发到远程服务器)请访问参考博客:Linux端口转发的几种常用方法