结合阿里云服务器,设置家中jetson tk1随时远程登陆

前提条件:

1.路由配置dmz主机为tk1的ip ,设置路由器中ssh 端口22的访问权限

2.有一台远程服务器,服务器安装了php可以运行php文件(我使用的是阿里云)

家中tk1配置:

脚本python 部署在jetson tk1上,然后设置crontab 定时执行

把python脚本放在 /jetson/testip.py 

crontab -e 

*/10 * * * * /jetson/testip.py >>/dev/null 2>&1

/*----------------------testip.py-------------------------------*/

#!/usr/bin/python

import re,httplib

conn = httplib.HTTPConnection("1111.ip138.com")

conn.request("GET", "/ic.asp")

r1 = conn.getresponse()

data1 = r1.read()

conn.close()

matchObj = re.search( r'(\d+)\.(\d+)\.(\d+)\.(\d+)', data1, re.M|re.I)

if matchObj:

    ip=matchObj.group()

    conn = httplib.HTTPConnection("remotedIP")

    conn.request("GET", "/testip.php?debug="+ip)

    r1 = conn.getresponse()

    print r1.read()

    conn.close()

else:

    print "error"

2.远程服务器配置,直接在php网站目录下放下面php代码 

/*------------testip.php--------------*/

<?php

$ipfile = "/var/log/homeip.txt";

if (isset($_GET['debug'])) {

	$ip = $_GET['debug'];

	preg_match_all('|\d{1,3}.\d{1,3}.\d{1,3}.\d{1,3}|', $ip, $out, PREG_PATTERN_ORDER);

	if (!empty($out[0][0])) {

		$ip = $out[0][0];

	} else {

		die();

	}

	$myfile = fopen($ipfile, "w") or die("Unable to open file!");

	echo ($ip);

	fwrite($myfile, $ip);

	fclose($myfile);

	die();

}

$myfile = fopen($ipfile, "r") or die("Unable to open file!");

echo fread($myfile, filesize($ipfile));

fclose($myfile);

die();

 使用:

http://远程服务器ip/testip.php 

返回得到家中jetson tk1 的公网地址,然后 ssh ip就可以登陆上家里的机器了

 

 

 

你可能感兴趣的:(服务器)