暴露端口 | 映射端口 | 用途 |
---|---|---|
1688 | 1688 | KMS |
2222 | 22 | SSH |
4009 | 4009 | FRPS |
4455 | 445 | Samba |
51981 | 4455 | Samba at Home |
Office server port mapping
2020-05-08
暴露端口 | 映射端口 | 用途 |
---|---|---|
1688 | 1688 | KMS |
2222 | 22 | SSH |
4009 | 4009 | FRPS |
4455 | 445 | Samba |
51981 | 4455 | Samba at Home |
新建文件:/etc/init.d/nginx
内容如下:
#! /bin/sh
### BEGIN INIT INFO
# Provides: nginx
# Required-Start: $all
# Required-Stop: $all
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: starts the nginx web server
# Description: starts nginx using start-stop-daemon
### END INIT INFO
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/local/bin/nginx
NAME=nginx
DESC=nginx
test -x $DAEMON || exit 0
# Include nginx defaults if available
if [ -f /etc/default/nginx ] ; then
. /etc/default/nginx
fi
set -e
. /lib/lsb/init-functions
case "$1" in
start)
echo -n "Starting $DESC: "
start-stop-daemon --start --quiet --pidfile /usr/local/nginx/logs/$NAME.pid \
--exec $DAEMON -- $DAEMON_OPTS || true
echo "$NAME."
;;
stop)
echo -n "Stopping $DESC: "
start-stop-daemon --stop --quiet --pidfile /usr/local/nginx/logs/$NAME.pid \
--exec $DAEMON || true
echo "$NAME."
;;
restart|force-reload)
echo -n "Restarting $DESC: "
start-stop-daemon --stop --quiet --pidfile \
/usr/local/nginx/logs/$NAME.pid --exec $DAEMON || true
sleep 1
start-stop-daemon --start --quiet --pidfile \
/usr/local/nginx/logs/$NAME.pid --exec $DAEMON -- $DAEMON_OPTS || true
echo "$NAME."
;;
reload)
echo -n "Reloading $DESC configuration: "
start-stop-daemon --stop --signal HUP --quiet --pidfile /usr/local/nginx/logs/$NAME.pid \
--exec $DAEMON || true
echo "$NAME."
;;
status)
status_of_proc -p /usr/local/nginx/logs/$NAME.pid "$DAEMON" nginx && exit 0 || exit $?
;;
*)
N=/etc/init.d/$NAME
echo "Usage: $N {start|stop|restart|reload|force-reload|status}" >&2
exit 1
;;
esac
exit 0
添加运行权限:
chmod a+x /etc/init.d/nginx
设置开机自动运行:
update-rc.d -f nginx defaults
#检查并安装编译依赖
apt update && apt install build-essential zlib1g-dev
#配置openssl编译参数
./config shared zlib --prefix=/usr/local/openssl-1.1.1e
编译并安装openssl到制定位置
make clean && make && make install
#备份旧版本
mv /usr/bin/openssl /usr/bin/openssl.old
mv /usr/include/openssl /usr/include/openssl.old
#链接新版本
ln -s /usr/local/openssl-1.1.1e/bin/openssl /usr/bin/openssl
ln -s /usr/local/openssl-1.1.1e/include/openssl/ /usr/include/openssl
echo "/usr/local/openssl-1.1.1e/lib" >> /etc/ld.so.conf
#加载动态库
ldconfig -V
#查看版本
openssl version
#如果查看版本过程中提示错误,可能还要链接其它库文件 /somewhere
ln -s /usr/local/openssl-1.1.1e/lib/libssl.so.1.1 /somewhere/libssl.so.1.1
ln -s /usr/local/openssl-1.1.1e/lib/libcrypto.so.1.1 /somewhere/libcrypto.so.1.1
以下为各种参考:
升级你的OPENSSL
帮Nginx升级,报错的却是OpenSSL?
Linux系统安装 OpenSSL两种方法
Linux系统OpenSSL版本升级
从启用 HTTP/2 导致网站无法访问说起
Using TLS1.3 With OpenSSL
开启 VM host 的 SSH 服务
vmkfstools -x check /path/to/machine.vmdk
vmkfstools -x repair /path/to/machine.vmdk
通常情况下,Ubuntu 18.04 下的程序遵循 Gnome Tweaks 下设置的字体渲染配置进行渲染。
但 Chrome 是读取 Linux 系统 fontconfig 配置进行渲染的,
而默认情况下系统 fontconfig 没有对字体 hint 属性进行配置,
所以 Chrome 始终以完全 hint 模式对字体进行渲染。
对没有 hint 信息的字体进行 hint 渲染,效果肯定不会好。
在 /etc/fonts/ 下创建一个文件名为 local.conf,并在其中写入如下内容全局关闭 hint:
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<match target="font">
<edit name="hintstyle" mode="assign">
<const>hintnone</const>
</edit>
</match>
</fontconfig>
重启生效。
知识来源: https://soulike.tech/article?id=34
为了验证仓库的归属,在执行 git push 操作的时候需要输入用户名和对应的密码,
此限定对于频繁推送远程仓库来说是不人性化的。
为此 Git 至少提供了 2 种方法让开发者“一劳永逸”—— 一旦设定,不再频繁输入用户名和对应的密码。
方法一:使用SSH协议,配置密钥
方法二:使用HTTPS协议,把输入的用户名和密码保存下来,下一次推送的时候就不用再重新输入,命令如下:
git config --global credential.helper store
在 /etc/sudoers 中添加以下内容:
youname ALL=NOPASSWD:ALL
Enjoy it!