Submitted by gouki on 2021, April 5, 11:25 AM
很多时候我们都不能直接访问内网机器,一般情况下,我们都是先登录跳板机,然后从跳板机上再进行操作。但这样,很容易在跳板机的history里留下记录。而且,如果有时候临时传文件,就相当于要处理两次:上传到跳板机=》传到目标机。
其实如果利用sshconfig进行一下配置,就可以直接操作这种行为:
https://github.com/meolu/walle-web/issues/265
- Host bg-a
- HostName 1.2.3.4
- Port 22
- User ubuntu
- IdentityFile ~/.ssh/prod-ubuntu
-
- Host web-a
- HostName 192.168.200.2
- Port 22
- User ubuntu
- IdentityFile ~/.ssh/prod-ubuntu
- ProxyCommand ssh -q -W %h:%p bg-a
然后你就可以使用 ssh web-a 直接连接到内网的服务器(透过 bg-a),或者 scp /xxx/xxx/x.tar.gz web-a:/tmp/ 这样的操作也支持。【上述内容,其实我本地的sshconfig也有类似操作,只是说我要COPY出来还要修改内容,所以就直接复制线上的】
至于ssh config文件怎么配置,网上有很多教程文章,比如:https://www.toutiao.com/i6700025110645965324/,
其他参考文章:
1、https://github.com/zxdvd/blog/blob/master/content/shell/%E7%94%9F%E4%BA%A7%E5%8A%9B%3A%20ssh%E8%B7%B3%E6%9D%BF%E6%9C%BA%E9%85%8D%E7%BD%AE.md
2、https://github.com/meolu/walle-web/issues/265
3、https://zhuanlan.zhihu.com/p/74193910 (https://mp.weixin.qq.com/s/jUYMulyl0xoPp-Vi3QJ3-Q)
4、https://blog.csdn.net/CityzenOldwang/article/details/77097703 ,这一篇里对.sshconfig的一些配置说明:
XML/HTML代码
- # man 5 ssh_config
- # vim .ssh/config
- Host *
- ForwardAgent yes # 默认转发密钥
- PasswordAuthentication yes # 允许密码登陆
- StrictHostKeyChecking no # 不自动接收公钥,如果设置为 yes,ssh 就不会自动把计算机的密钥加入到 .ssh/known_hosts 文件,并且一旦计算机的密钥发生了变化,就拒绝连接。
- HashKnownHosts yes # 将访问过的 hosts 以 hash 的形式存放,降低被入侵后信息暴露的风险
- Compression yes # 压缩传输,取值on/off/force。在 scp 等传输文件的情况下提高传输速度
- ServerAliveInterval 60
- ServerAliveCountMAx 5
苹果相关 | 评论:0
| 阅读:8714
Submitted by gouki on 2020, December 29, 10:30 AM
git log是有可以带颜色的。但需要自定义,默认只有hash有颜色 。如果只是为了看简单的log,那么git log --pretty=online就行了,这个也有颜色
但要更多的自定义就。。。。复杂了一点,参考 :https://jasonhzy.github.io/2016/05/05/git-log/,我复制了这个脚本:
XML/HTML代码
- git config --global alias.lg "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"
如果不需要有graph显示合并,那就直接将graph去掉就行了。如果要更多的配色,那还是需要再定义。
实际用起来就是:git lg -5,lg就是刚才定义的alias.lg。
苹果相关 | 评论:0
| 阅读:8061
Submitted by gouki on 2020, August 8, 11:40 PM
现在买VPS,默认用户都不再是root,都是一些什么:admin之类的。
如果安装了apache2,你会发现,web目录都是www-data的。然后会有各种小问题
1、命令行生成的文件,权限组怎么弄
2、通过WEB生成的文件,命令行怎么读。
服务器端的配置
此部分在目标服务器上操作
虽然说是无侵入的部署工具,但是还是需要我们来做一些微小的配置的,因为出于安全考虑,我们一般不会开发 root 用户的 SSH 登录,而是使用其它用户,比如 Ubuntu 默认的 ubuntu 用户。
我们 Deployer 是用来部署 web 应用的,所以我们也专门创建一个用户来做这件事情比较好:
$ sudo adduser deployer # 密码什么的,按提示操作即可
我们的 web 项目通常需要一些上传,或者缓存写入这样的操作,所以 deployer 还需要有权限对目录进行修改,比如 Laravel 的 storage 目录需要可写权限,这里以 nginx 默认的用户组 www-data 举例,如果你修改过用户或者组名请对应修改下面的命令里的 www 用户组:
$ sudo usermod -aG www-data deployer
我们通常需要将deployer 用户权限分别设置为创建文件 644 与目录 755,这样一来,deployer 用户可以读写,但是组与其它用户只能读:
$ sudo chfn -o umask=022 deployer
接下来要对我们的 web 根目录授权,假设我们的 web 服务的根目录在 /var/www/ 下,那么需要将这个目录的用户设置为 deployer ,组设置为 www 用户 www-data:
$ sudo chown deployer:www-data /var/www/html # 最后这里不要加斜线哦
为了让 deployer 用户在 /var/www/html 下创建的文件与目录集成根目录的权限设定(用户:deployer,组:www-data),我们还需要一步操作:
$ sudo chmod g+s /var/www/html
OK,Deployer 的用户操作就结束了,接着你需要检查以下配置:
----
更多内容,可以查看原文
苹果相关 | 评论:0
| 阅读:10748
Submitted by gouki on 2020, August 8, 11:20 PM
基于几个小原因,换成了ubuntu
1、配置单网卡路由+WIFI没搞定。每次一折腾就断网(或许有机会,但我没有microHDMI线。所以断了,我就只能重刷机。太累了)
2、ubuntu 20,居然是支持64位的。这里不得不说,人家支持的就是好。。。rasbian现在还是32位的
当然也不是说rasbian就没有超过ubuntu的。比如他的vncserver就比ubuntu好。ubuntu没有,而且装vnc4server也装不上,唯一可以装的居然是xrdp。为了装这个xrdp,居然要1G左右 的下载。
当然最终我还是没有选择桌面,即使这样,下载回来的xz文件。居然也要1.1G左右 。而debian只要400M。
不扯其他的,因为毕竟是两个系统,所以在初始化配置的时候就不太一样。比如rasbian就是创建空ssh文件,和增加wpa_supplicant.conf文件。而ubuntu就不一样,直接改net-config(好象是这个。或者是network-config这个文件)。是一个yml格式的文件,参考一下就OK。【如果你的ssid有空格或者其他的,请用双引号包住】
然后还有一个userdata(或者叫:user-data)文件。里面有一个配置password是不是会过期。。默认是过期的。我开始就是被它折腾。一登录就让我改密码,一改密码就说过期。。。。
其他的都差不多,然后ubuntu装好进去后。居然每次还有提示。让我装microk8s。。。嗯,暂不理他,我还是老规矩:安装pm2 / frp ,更改源为阿里。
苹果相关 | 评论:0
| 阅读:8868
Submitted by gouki on 2020, August 6, 9:42 AM
SSH下有两个简单的方法
1、/opt/vc/bin/vcgencmd measure_temp
这个显示的直接就是可视的温度,如:temp=40.0'C
2、cat /sys/class/thermal/thermal_zone0/temp
这个显示的是数字,需要简单的看一下:39920
苹果相关 | 评论:0
| 阅读:8697