远程服务器服务进程部署与端口开放
之前在做网络编程的时候,想把服务端程序部署在远程服务器上,在本地用客户端与其连接,但是一直没有连接成功,今天在做软件安全实验时要求“远程部署溢出程序,并进行溢出测试“,再次遇到了这个问题,将其解决了,故作一记录。云服务的环境为ubuntu18.04 64位。
- 在云服务器安全组中打开指定端口,此处为8888;
- 在云服务器上开放指定端口,
iptables -I INPUT -p tcp --dport 8888 -j ACCEPT
iptables-save
- 这个时候端口应该是已经开放了,但是本地netstat -na查看该端口并没有处在监听状态,远程telnet也无法与其建立连接。原因是没有在该端口开启服务进程,下一步是开启一个服务进程ncat -vc ./stack_example -kl 0.0.0.0 8888,这边ip 0.0.0.0则可以接收所有原地址的连接请求,8888为该服务进程绑定的端口,./stack_example为我跑的服务的文件名。开启后再次用netstat -na查看,可以看到该端口已经处于监听状态。
同时远程telnet也连接成功,可以正常与该服务进程进行通信。