前言
毕业论文中有时公式、图表等很多,编号后若改动其中一个,后面都需要一个个改,段落文字中的引用也需要改,很可能漏改、复杂等等。
有时候停止好奇心,才知道自己真正需要什么。
虽然连接内网其他主机的意义不大,但是却能验证一些问题。
例如前一篇ssh连接内网主机A文章中,所有设置都没问题却发现最后每次连接内网主机A时都会被拒绝。于是尝试局域网内连接主机A同样被拒绝,查阅资料发现原来主机A的sshserver没有安装。(ubuntu默认安装了ssh-client,但没有安装sshserver)(sudo apt-get install openssh-server解决!)
局域网内使其他主机能够通过SSH连接主机A
1 | ps -ef|grep sshd |
如果有像下面sshd字样一般是安装了server,如果不放心可以重新装一遍。
1
sudo apt-get install openssh-server #安装ssh-server
重启ssh-server1
2sudo /etc/init.d/ssh stop
sudo /etc/init.d/ssh start
一般默认端口是22,但是确认一下比较好1
cat /etc/ssh/ssh_config #

可以看到没有设置端口号(因为#把port注释了),可以自己定义成其他端口号,如222。修改后需要重启ssh-server。
1 | ifconfig |

现在在其他主机上执行下面命令:1
2
3ssh -p 22 userA@192.168.1.46
#userA是主机A的一个用户
#接下来需要输入主机A的密码即可
完~

假设外网主机 B 的 ip 是 110.73.180.212,拥有一个名为 userB 的用户,ssh 对外暴露的端口号是 4086
内网主机A:我们想要连接的主机,userA,SSH端口22
1 | ssh-keygen #生成密钥 |
1 | cat .ssh/id_rsa.pub #查看是否生成了密钥 |
1 | ssh-copy-id -i .ssh/id_rsa.pub uaerB@110.73.180.212 -p portB |
1 | ssh -p '4086' 'userB@110.73.180.212' |
1 | vim /etc/ssh/sshd_config #添加 GatewayPorts yes |
1 | service sshd restart #重启SSH |
基本方法:1
2
3
4
5$ ssh -N -f -R 1111:localhost:22 userB@110.73.180.212 -p 4086
# -N 参数表明我们只做端口转发,而不执行远程命令。
# -R 1111:localhost:22 则表明当有人试图用 1111 端口来连接主机 B 的时候,就把它转发给主机 A 的 22 端口(即主机 A 的本地 ssh 端口)。1111可以更改为不冲突的任意端口
# -f 参数,只是指定 ssh 在后台运行而已。
# -p
优化方法:1
2
3
4autossh -M 1122 -N -f -R 1111:localhost:22 userB@110.73.180.212 -p 4086
# 仅多了一个-M参数,这个参数的意思就是用本机的1122端口来监听ssh,每当他断了就重新把他连起来
# 若autossh未安装,先安装
sudo apt-get install autossh
利用一个额外的端口监控1111端口,每当1111断了就重新把他连起来
1 | ssh userA@110.73.180.212 -p 1111 #登录内网机器A |
[TOC]
今天在自己win10上搭建了Hexo博客,这是我第一篇博客,所以主要目的仅仅是验证测试。之前自己也在自己的服务器上搭建了wordpress,虽然搭建不是很难,而且搭建后几乎不会像Hexo这样使用命令行控制,但是wordpress使用中感觉很臃肿,markdown编辑支持也不是很好。
贴出主要的参照网站,方便以后维护。
搭建过程主要参照这篇文章:从零开始使用 Hexo 搭建博客
使用主题为Next,官网中有该主题的具体美化方法,包括字体字号、打赏功能等等。介绍清晰,感兴趣的可以看看。
hexo官网
常见命令
1 | hexo new "name_of_articl" #新建文章 |
1 | hexo clean #最好先清除缓存 |
1 | hexo s == hexo generate ##本地预览,浏览器打开http://localhost:4000即可 |
1 | hexo d == hexo deploy #上传至github |
1 | hexo s -g #生成并本地预览 |
更多的命令参见hexo官网