id: 34c8075492ee440a8265b7f1372ac555
parent_id: 
item_type: 1
item_id: 58cb654bcbea46be976ddcc7e9444681
item_updated_time: 1764345565142
title_diff: "[{\"diffs\":[[1,\"SSH原理与运用（二）：远程操作与端口转发 - 阮一峰的网络日志\"]],\"start1\":0,\"start2\":0,\"length1\":0,\"length2\":32}]"
body_diff: "[{\"diffs\":[[1,\"<html>\\\r\\\n<head>\\\r\\\n  <title>SSH原理与运用（二）：远程操作与端口转发 - 阮一峰的网络日志</title>\\\r\\\n  <basefont face=\\\"微软雅黑\\\" size=\\\"2\\\" />\\\r\\\n  <meta http-equiv=\\\"Content-Type\\\" content=\\\"text/html;charset=utf-8\\\" />\\\r\\\n  <meta name=\\\"exporter-version\\\" content=\\\"YXBJ Windows/608924 (zh-CN, DDL); Windows/10.0.0 (Win64); EDAMVersion=V2;\\\"/>\\\r\\\n  <meta name=\\\"application-data:2525275\\\" content=\\\"6692893/s30/6ec37ab1-f1c7-4616-b782-54606b63518c/app.yinxiang.com\\\"/>\\\r\\\n  <meta name=\\\"application-data:ANDROID_CLIP_TYPE\\\" content=\\\"article\\\"/>\\\r\\\n  <style>\\\r\\\n\\tbody, td {\\\r\\\n\\t  font-family: 微软雅黑;\\\r\\\n\\t  font-size: 12pt;\\\r\\\n\\t}\\\r\\\n  </style>\\\r\\\n</head>\\\r\\\n<body>\\\r\\\n<a name=\\\"9800\\\"></a>\\\r\\\n<h1>SSH原理与运用（二）：远程操作与端口转发 - 阮一峰的网络日志</h1>\\\r\\\n\\\r\\\n<div>\\\n<span><div style=\\\"font-size: 16px\\\"><div style=\\\"list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;color:rgb(17, 17, 17);\\\"><div style=\\\"list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;color:rgb(17, 17, 17);font-family:Georgia, serif;letter-spacing:-0.01em;word-spacing:0.2em;font-size:62.5%;background-color:rgb(245, 245, 213);\\\"><div style=\\\"list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;color:rgb(17, 17, 17);background-color:rgb(245, 245, 213);\\\"><div style=\\\"list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;color:rgb(17, 17, 17);\\\"><div style=\\\"list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;color:rgb(17, 17, 17);\\\"><div style=\\\"list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;color:rgb(17, 17, 17);\\\"><div style=\\\"list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;color:rgb(17, 17, 17);\\\"><div style=\\\"list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;color:rgb(17, 17, 17);\\\"><div style=\\\"list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;color:rgb(17, 17, 17);\\\"><div><h1 style=\\\"margin:0.4em 0px 0.2em;padding:0px 0px 0.2em;list-style-type:none;text-align:left;text-decoration:none;font-weight:500;font-style:normal;border:none;color:rgb(0, 0, 0);font-size:2.88em;letter-spacing:-0.03em;border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:rgb(211, 211, 211);font-family:'Trebuchet MS', Arial, 'Lucida Grande', Verdana, Lucida, Helvetica, sans-serif;\\\"><span style=\\\"word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;\\\">SSH原理与运用（二）：远程操作与端口转发</span></h1><div style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);float:right;padding-right:2em;padding-top:1em;\\\"><span style=\\\"word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;\\\"><a href=\\\"http://www.bshare.cn/share\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);font-variant:normal;font-stretch:normal;font-size:12px;font-family:Helvetica, Calibri, Tahoma, Arial, 宋体, sans-serif;background:none;overflow:hidden;height:21px;padding-left:0px;display:block;width:51px;\\\"></a></span></div><div style=\\\"margin:1.5em auto 2em;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);\\\"><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">作者： <a href=\\\"http://www.ruanyifeng.com/\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);\\\">阮一峰</a></p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">日期： <a href=\\\"http://www.ruanyifeng.com/blog/2011/12/\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);\\\"><abbr style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);\\\" title=\\\"2011-12-23T20:21:21+08:00\\\">2011年12月23日</abbr></a></p></div><div style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);\\\"><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">接着前一次的<a href=\\\"http://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:underline;font-weight:normal;font-style:normal;border:none;color:rgb(34, 52, 114);\\\" target=\\\"_blank\\\">文章</a>，继续介绍SSH的用法。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">=======================================</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\"><strong style=\\\"font-weight:800;\\\">SSH原理与运用（二）：远程操作与端口转发</strong></p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">作者：阮一峰</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\"><img src=\\\":/00c4162a877140618e22d59d01c8f139\\\" type=\\\"image/jpeg\\\" data-filename=\\\"Image.jpg\\\" height=\\\"0\\\" style=\\\"cursor: default;\\\" width=\\\"0\\\"/></p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">（Image credit: <a href=\\\"http://www.flickr.com/photos/skiquel/\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:underline;font-weight:normal;font-style:normal;border:none;color:rgb(34, 52, 114);\\\" target=\\\"_blank\\\">Tony Narlock</a>）</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\"><strong style=\\\"font-weight:800;\\\">七、远程操作</strong></p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">SSH不仅可以用于远程主机登录，还可以直接在远程主机上执行操作。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">上一节的操作，就是一个例子：</p><blockquote style=\\\"margin:1em;padding:0.5em 1em;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:0.3em solid rgb(224, 223, 204);color:rgb(17, 17, 17);border-radius:1em;font-family:Consolas, Monaco, 'Andale Mono', monospace;text-shadow:white 0px 1px;overflow:auto;background-color:rgb(245, 242, 240);border-width:0.15em;\\\"><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　$ ssh user@host 'mkdir -p .ssh &amp;&amp; cat &gt;&gt; .ssh/authorized_keys' &lt; ~/.ssh/id_rsa.pub</p></blockquote><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">单引号中间的部分，表示在远程主机上执行的操作；后面的输入重定向，表示数据通过SSH传向远程主机。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">这就是说，SSH可以在用户和远程主机之间，建立命令和数据的传输通道，因此很多事情都可以通过SSH来完成。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">下面看几个例子。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">【例1】</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">将$HOME/src/目录下面的所有文件，复制到远程主机的$HOME/src/目录。</p><blockquote style=\\\"margin:1em;padding:0.5em 1em;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:0.3em solid rgb(224, 223, 204);color:rgb(17, 17, 17);border-radius:1em;font-family:Consolas, Monaco, 'Andale Mono', monospace;text-shadow:white 0px 1px;overflow:auto;background-color:rgb(245, 242, 240);border-width:0.15em;\\\"><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　$ cd &amp;&amp; tar czv src | ssh user@host 'tar xz'</p></blockquote><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">【例2】</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">将远程主机$HOME/src/目录下面的所有文件，复制到用户的当前目录。</p><blockquote style=\\\"margin:1em;padding:0.5em 1em;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:0.3em solid rgb(224, 223, 204);color:rgb(17, 17, 17);border-radius:1em;font-family:Consolas, Monaco, 'Andale Mono', monospace;text-shadow:white 0px 1px;overflow:auto;background-color:rgb(245, 242, 240);border-width:0.15em;\\\"><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　$ ssh user@host 'tar cz src' | tar xzv</p></blockquote><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">【例3】</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">查看远程主机是否运行进程httpd。</p><blockquote style=\\\"margin:1em;padding:0.5em 1em;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:0.3em solid rgb(224, 223, 204);color:rgb(17, 17, 17);border-radius:1em;font-family:Consolas, Monaco, 'Andale Mono', monospace;text-shadow:white 0px 1px;overflow:auto;background-color:rgb(245, 242, 240);border-width:0.15em;\\\"><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　$ ssh user@host 'ps ax | grep [h]ttpd'</p></blockquote><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\"><strong style=\\\"font-weight:800;\\\">八、绑定本地端口</strong></p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">既然SSH可以传送数据，那么我们可以让那些不加密的网络连接，全部改走SSH连接，从而提高安全性。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">假定我们要让8080端口的数据，都通过SSH传向远程主机，命令就这样写：</p><blockquote style=\\\"margin:1em;padding:0.5em 1em;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:0.3em solid rgb(224, 223, 204);color:rgb(17, 17, 17);border-radius:1em;font-family:Consolas, Monaco, 'Andale Mono', monospace;text-shadow:white 0px 1px;overflow:auto;background-color:rgb(245, 242, 240);border-width:0.15em;\\\"><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　$ ssh -D 8080 user@host</p></blockquote><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">SSH会建立一个socket，去监听本地的8080端口。一旦有数据传向那个端口，就自动把它转移到SSH连接上面，发往远程主机。可以想象，如果8080端口原来是一个不加密端口，现在将变成一个加密端口。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\"><strong style=\\\"font-weight:800;\\\">九、本地端口转发</strong></p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">有时，绑定本地端口还不够，还必须指定数据传送的目标主机，从而形成点对点的&quot;端口转发&quot;。为了区别后文的&quot;远程端口转发&quot;，我们把这种情况称为&quot;本地端口转发&quot;（Local forwarding）。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">假定host1是本地主机，host2是远程主机。由于种种原因，这两台主机之间无法连通。但是，另外还有一台host3，可以同时连通前面两台主机。因此，很自然的想法就是，通过host3，将host1连上host2。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">我们在host1执行下面的命令：</p><blockquote style=\\\"margin:1em;padding:0.5em 1em;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:0.3em solid rgb(224, 223, 204);color:rgb(17, 17, 17);border-radius:1em;font-family:Consolas, Monaco, 'Andale Mono', monospace;text-shadow:white 0px 1px;overflow:auto;background-color:rgb(245, 242, 240);border-width:0.15em;\\\"><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　$ ssh -L 2121:host2:21 host3</p></blockquote><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">命令中的L参数一共接受三个值，分别是&quot;本地端口:目标主机:目标主机端口&quot;，它们之间用冒号分隔。这条命令的意思，就是指定SSH绑定本地端口2121，然后指定host3将所有的数据，转发到目标主机host2的21端口（假定host2运行FTP，默认端口为21）。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">这样一来，我们只要连接host1的2121端口，就等于连上了host2的21端口。</p><blockquote style=\\\"margin:1em;padding:0.5em 1em;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:0.3em solid rgb(224, 223, 204);color:rgb(17, 17, 17);border-radius:1em;font-family:Consolas, Monaco, 'Andale Mono', monospace;text-shadow:white 0px 1px;overflow:auto;background-color:rgb(245, 242, 240);border-width:0.15em;\\\"><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　$ ftp localhost:2121</p></blockquote><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">&quot;本地端口转发&quot;使得host1和host3之间仿佛形成一个数据传输的秘密隧道，因此又被称为&quot;SSH隧道&quot;。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">下面是一个比较有趣的例子。</p><blockquote style=\\\"margin:1em;padding:0.5em 1em;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:0.3em solid rgb(224, 223, 204);color:rgb(17, 17, 17);border-radius:1em;font-family:Consolas, Monaco, 'Andale Mono', monospace;text-shadow:white 0px 1px;overflow:auto;background-color:rgb(245, 242, 240);border-width:0.15em;\\\"><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　$ ssh -L 5900:localhost:5900 host3</p></blockquote><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">它表示将本机的5900端口绑定host3的5900端口（这里的localhost指的是host3，因为目标主机是相对host3而言的）。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">另一个例子是通过host3的端口转发，ssh登录host2。</p><blockquote style=\\\"margin:1em;padding:0.5em 1em;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:0.3em solid rgb(224, 223, 204);color:rgb(17, 17, 17);border-radius:1em;font-family:Consolas, Monaco, 'Andale Mono', monospace;text-shadow:white 0px 1px;overflow:auto;background-color:rgb(245, 242, 240);border-width:0.15em;\\\"><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　$ ssh -L 9001:host2:22 host3</p></blockquote><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">这时，只要ssh登录本机的9001端口，就相当于登录host2了。</p><blockquote style=\\\"margin:1em;padding:0.5em 1em;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:0.3em solid rgb(224, 223, 204);color:rgb(17, 17, 17);border-radius:1em;font-family:Consolas, Monaco, 'Andale Mono', monospace;text-shadow:white 0px 1px;overflow:auto;background-color:rgb(245, 242, 240);border-width:0.15em;\\\"><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　$ ssh -p 9001 localhost</p></blockquote><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">上面的-p参数表示指定登录端口。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\"><strong style=\\\"font-weight:800;\\\">十、远程端口转发</strong></p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">既然&quot;本地端口转发&quot;是指绑定本地端口的转发，那么&quot;远程端口转发&quot;（remote forwarding）当然是指绑定远程端口的转发。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">还是接着看上面那个例子，host1与host2之间无法连通，必须借助host3转发。但是，特殊情况出现了，host3是一台内网机器，它可以连接外网的host1，但是反过来就不行，外网的host1连不上内网的host3。这时，&quot;本地端口转发&quot;就不能用了，怎么办？</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">解决办法是，既然host3可以连host1，那么就从host3上建立与host1的SSH连接，然后在host1上使用这条连接就可以了。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">我们在host3执行下面的命令：</p><blockquote style=\\\"margin:1em;padding:0.5em 1em;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:0.3em solid rgb(224, 223, 204);color:rgb(17, 17, 17);border-radius:1em;font-family:Consolas, Monaco, 'Andale Mono', monospace;text-shadow:white 0px 1px;overflow:auto;background-color:rgb(245, 242, 240);border-width:0.15em;\\\"><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　$ ssh -R 2121:host2:21 host1</p></blockquote><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">R参数也是接受三个值，分别是&quot;远程主机端口:目标主机:目标主机端口&quot;。这条命令的意思，就是让host1监听它自己的2121端口，然后将所有数据经由host3，转发到host2的21端口。由于对于host3来说，host1是远程主机，所以这种情况就被称为&quot;远程端口绑定&quot;。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">绑定之后，我们在host1就可以连接host2了：</p><blockquote style=\\\"margin:1em;padding:0.5em 1em;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:0.3em solid rgb(224, 223, 204);color:rgb(17, 17, 17);border-radius:1em;font-family:Consolas, Monaco, 'Andale Mono', monospace;text-shadow:white 0px 1px;overflow:auto;background-color:rgb(245, 242, 240);border-width:0.15em;\\\"><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　$ ftp localhost:2121</p></blockquote><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">这里必须指出，&quot;远程端口转发&quot;的前提条件是，host1和host3两台主机都有sshD和ssh客户端。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\"><strong style=\\\"font-weight:800;\\\">十一、SSH的其他参数</strong></p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">SSH还有一些别的参数，也值得介绍。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">N参数，表示只连接远程主机，不打开远程shell；T参数，表示不为这个连接分配TTY。这个两个参数可以放在一起用，代表这个SSH连接只用来传数据，不执行远程操作。</p><blockquote style=\\\"margin:1em;padding:0.5em 1em;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:0.3em solid rgb(224, 223, 204);color:rgb(17, 17, 17);border-radius:1em;font-family:Consolas, Monaco, 'Andale Mono', monospace;text-shadow:white 0px 1px;overflow:auto;background-color:rgb(245, 242, 240);border-width:0.15em;\\\"><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　$ ssh -NT -D 8080 host</p></blockquote><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">f参数，表示SSH连接成功后，转入后台运行。这样一来，你就可以在不中断SSH连接的情况下，在本地shell中执行其他操作。</p><blockquote style=\\\"margin:1em;padding:0.5em 1em;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:0.3em solid rgb(224, 223, 204);color:rgb(17, 17, 17);border-radius:1em;font-family:Consolas, Monaco, 'Andale Mono', monospace;text-shadow:white 0px 1px;overflow:auto;background-color:rgb(245, 242, 240);border-width:0.15em;\\\"><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　$ ssh -f -D 8080 host</p></blockquote><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">要关闭这个后台连接，就只有用kill命令去杀掉进程。</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\"><strong style=\\\"font-weight:800;\\\">十二、参考文献</strong></p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　* SSH, The Secure Shell: The Definitive Guide: <a href=\\\"http://docstore.mik.ua/orelly/networking_2ndEd/ssh/ch02_04.htm\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:underline;font-weight:normal;font-style:normal;border:none;color:rgb(34, 52, 114);\\\" target=\\\"_blank\\\">2.4. Authentication by Cryptographic Key</a>, O'reilly</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　* SSH, The Secure Shell: The Definitive Guide: <a href=\\\"http://docstore.mik.ua/orelly/networking_2ndEd/ssh/ch09_02.htm\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:underline;font-weight:normal;font-style:normal;border:none;color:rgb(34, 52, 114);\\\" target=\\\"_blank\\\">9.2. Port Forwarding</a>, O'reilly</p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　* Shebang: <a href=\\\"http://shebang.brandonmintern.com/tips-for-remote-unix-work-ssh-screen-and-vnc\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:underline;font-weight:normal;font-style:normal;border:none;color:rgb(34, 52, 114);\\\" target=\\\"_blank\\\">Tips for Remote Unix Work (SSH, screen, and VNC)</a></p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　* brihatch: <a href=\\\"http://www.symantec.com/connect/articles/ssh-host-key-protection\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:underline;font-weight:normal;font-style:normal;border:none;color:rgb(34, 52, 114);\\\" target=\\\"_blank\\\">SSH Host Key Protection</a></p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　* brihatch: <a href=\\\"http://www.symantec.com/connect/articles/ssh-user-identities\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:underline;font-weight:normal;font-style:normal;border:none;color:rgb(34, 52, 114);\\\" target=\\\"_blank\\\">SSH User Identities</a></p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　* IBM developerWorks: <a href=\\\"http://www.ibm.com/developerworks/cn/linux/l-cn-sshforward/\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:underline;font-weight:normal;font-style:normal;border:none;color:rgb(34, 52, 114);\\\" target=\\\"_blank\\\">实战 SSH 端口转发</a></p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　* Jianing YANG：<a href=\\\"http://blog.jianingy.com/2009/09/ssh%E9%9A%A7%E9%81%93%E6%8A%80%E6%9C%AF%E7%AE%80%E4%BB%8B/\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:underline;font-weight:normal;font-style:normal;border:none;color:rgb(34, 52, 114);\\\" target=\\\"_blank\\\">ssh隧道技术简介</a></p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　* WikiBooks: <a href=\\\"http://en.wikibooks.org/wiki/Internet_Technologies/SSH\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:underline;font-weight:normal;font-style:normal;border:none;color:rgb(34, 52, 114);\\\" target=\\\"_blank\\\">Internet Technologies/SSH</a></p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">　　* Buddhika Chamith: <a href=\\\"http://chamibuddhika.wordpress.com/2012/03/21/ssh-tunnelling-explained/\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:underline;font-weight:normal;font-style:normal;border:none;color:rgb(34, 52, 114);\\\" target=\\\"_blank\\\">SSH Tunneling Explained</a></p><p style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);font-size:1.6em;margin-top:1em;margin-left:0.8em;\\\">（完）</p></div><div style=\\\"margin:0px 0px 1em;padding:1.5em;list-style-type:none;text-align:left;text-decoration:none;font-weight:bold;font-style:normal;border:1px solid rgb(211, 211, 211);color:rgb(252, 178, 151);border-radius:1em;-webkit-box-shadow:rgb(238, 238, 238) 0px 1px 0px 0px inset;box-shadow:rgb(238, 238, 238) 0px 1px 0px 0px inset;text-shadow:rgb(238, 238, 238) 1px 1px 0px;background:-webkit-gradient(linear, 0% 0%, 0% 100%, color-stop(0.05, rgb(170, 210, 240)), to(rgb(139, 193, 237))) rgb(170, 210, 240);margin-top:2em;background-color:rgb(222, 235, 247);\\\"><h3 style=\\\"margin:0.4em 0px 0.2em;padding:0px 0px 0.2em;list-style-type:none;text-align:left;text-decoration:none;font-weight:bold;font-style:normal;border:none;color:rgb(85, 102, 119);font-size:1.92em;letter-spacing:-0.03em;border-bottom-width:1px;border-bottom-style:solid;border-bottom-color:gray;\\\">文档信息</h3><ul style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(17, 17, 17);padding-left:2em;padding-right:2em;\\\"><li style=\\\"margin:0px;padding:0px;list-style-type:square;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);font-size:1.6em;\\\">版权声明：自由转载-非商用-非衍生-保持署名（<a href=\\\"http://creativecommons.org/licenses/by-nc-nd/3.0/deed.zh\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);\\\">创意共享3.0许可证</a>）</li><li style=\\\"margin:0px;padding:0px;list-style-type:square;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);font-size:1.6em;\\\">发表日期： <abbr style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(61, 61, 61);\\\" title=\\\"2011-12-23T20:21:21+08:00\\\">2011年12月23日</abbr></li><li style=\\\"margin:0px;padding:0px;list-style-type:square;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);font-size:1.6em;\\\">更多内容： <a href=\\\"http://www.ruanyifeng.com/blog/archives.html\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);\\\" target=\\\"_blank\\\">档案</a> » <a href=\\\"http://www.ruanyifeng.com/blog/computer/\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);\\\">理解计算机</a></li><li style=\\\"margin:0px;padding:0px;list-style-type:square;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);font-size:1.6em;\\\">购买文集：<a href=\\\"http://www.ruanyifeng.com/blog/2014/12/my-blog-book.html\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);\\\" target=\\\"_blank\\\"><img height=\\\"20\\\" style=\\\"cursor: default; height: auto;\\\" width=\\\"20\\\"></img> 《如何变得有思想》</a></li><li style=\\\"margin:0px;padding:0px;list-style-type:square;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);font-size:1.6em;\\\">社交媒体：<a href=\\\"https://twitter.com/ruanyf\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);\\\" target=\\\"_blank\\\"><img height=\\\"20\\\" src=\\\"data:image%2Fpng;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAk1JREFUeNqsVc9rE0EU%2FmZ3dhPNJl2bVIk%2FKm09aFBE8GLvnrwJXvwLxIsgCP4Fnit6E8Gb0IMHwUsL9SSNgiAoooJIpE1Joo1h82uT7IxvxmRN3Q32kAdvdrI773vfe+%2FbDTu9WioDcDAda3Ja8piepQ1avCkCeny0Y+R9KenKwOmHHLvPaKn7AtVOoO8dOWDCMpg+41gMQv5FNEJACgoE8MsPNLDBhgfoutMOsJDmWLmU037C4TApciljwQ%2FkHoohQxV06+wMXNvE7WINuaSpvdYVKLgWnl3O4zAxU3Z1IYVGT+B5qYWV9z2kbQaT%2FcOwTsxOUUYF+mB5Dkmi8HG3h2q9hxsFNwRTdvQgxxnXRrMvIdkEhllis%2FqtiWuLDm4WZnBlPoWnXz28LHdw0uGR7m9Wu3j0qYGEubfn4UlBfXO4gTZltRNMg9w9f0i7kNFxllsBlS0x75gYfxyWTBUjT2W5CSMSPBrQuG21+hiMDS8CeCzF8eSLp13uQ3Ab1IqMFZN8tFHPmgOBF99bYP8Be1Xp6t7OJszJgKpPSiZvaj7uf2hguz2IBQuozDvFH6RDBjuK9wdQDvt0nMpW+8efGyh5UcAeZb2+UcHbnz5Jx4wdlp4yJYU3kLiQtfBwOYeLc8nIwfXtNu69q2Oz4mMxbemYOOOjKarhvq51KUjg3GwiFPIuvcNF6pnSnWK0lOEabNLgQh1aJFAhlGB9rG110B2+oyRNPc0sZbRNFltmLKDKqj4Qrm1ojzOxDz2pyPQ0P7CK4c40%2FwJ+CzAAGYrXsvfFXR4AAAAASUVORK5CYII=\\\" style=\\\"cursor: default; height: auto;\\\" width=\\\"20\\\"></img> twitter</a>，<a href=\\\"http://weibo.com/ruanyf\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);\\\" target=\\\"_blank\\\"><img height=\\\"20\\\" style=\\\"cursor: default; height: auto;\\\" width=\\\"20\\\"></img> weibo</a></li><li style=\\\"margin:0px;padding:0px;list-style-type:square;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);font-size:1.6em;\\\">Feed订阅： <a href=\\\"http://www.ruanyifeng.com/feed.html\\\" style=\\\"margin:0px;padding:0px;list-style-type:none;text-align:left;text-decoration:none;font-weight:normal;font-style:normal;border:none;color:rgb(85, 102, 119);\\\" target=\\\"_blank\\\"><img height=\\\"20\\\" src=\\\"data:image%2Fgif;base64,R0lGODlhFAAUANU2APV1GfmrePZ8IeR5VPq2ieNkLf7p3NpFJveCJ%2FNoFfibVPR1IexiJfvdzuZrNfXGuOhUEueTevaFOfzIpNxDGeZZJNU6IOubifiVTfOnid1aLuZpLOFSJf%2F28vJtIvGcefaLSd5kNu9iFv%2Fz6%2F%2F48%2F%2Ft4uFfLfNkCeJNGuGNc%2FrCof%2F+%2FPVxEeldI%2FV5KeKMbu9nIvB2OvzQtNxMKfOPXP%2F%2F%2FwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAADYALAAAAAAUABQAAAb%2FQJstEjKZCsjCZsl0pIS2QWXaYsA8noVWIEAgFoNhhWNyMESi7Jbr%2FaZCFdRnZJAFJCwAt+vlOkwtEBk1hDUkExJ6bQJaGyYMLTQTDSOFHQF8jAseSFYiJwkuAQ2FE1xaHjBIMDAgARguJwABJIQTLJswDEgeIgSEJQQILAqVNQEiui1HHgkBhTUGCiwYtR0xLS0VJhtaEgoEBoQkGCfPNSoQY9xaCwAsCBPALgmkJA4cZN0CAAgY%2FPJqEIDwgVAECjM0bOAnwcAKGQJclKhRgoGDDjUeUDigkN8vQiBOfByAglSDAxw3IBCgYEU0FyJoEPpA4UGNDjMsaHDQR8EdPVYOMmQYQGHAhQgHLIRIsWAlgASsGMRBMWMGBQtYZ7yIsoBRKkhjOMxAiXJGGCEpHGxIYsSIhrcaQmy1EQQAOw==\\\" style=\\\"cursor: default; height: auto;\\\" width=\\\"20\\\"></img></a></li></ul></div></div></div></div></div></div></div></div></div></div></div></div></span>\\\n</div></body></html>\\u0000\"]],\"start1\":0,\"start2\":0,\"length1\":0,\"length2\":38341}]"
metadata_diff: {"new":{"id":"58cb654bcbea46be976ddcc7e9444681","parent_id":"f67288c3a0be4374b5d532b5dcc3aabc","latitude":"0.00000000","longitude":"0.00000000","altitude":"0.0000","author":"","source_url":"","is_todo":0,"todo_due":0,"todo_completed":0,"source":"joplin-desktop","source_application":"net.cozic.joplin-desktop","application_data":"","order":1764348824125,"markup_language":2,"is_shared":0,"share_id":"","conflict_original_id":"","master_key_id":"","user_data":"","deleted_time":0},"deleted":[]}
encryption_cipher_text: 
encryption_applied: 0
updated_time: 2025-11-28T21:04:00.475Z
created_time: 2025-11-28T21:04:00.475Z
type_: 13