Cody Blog

Software development

SSH Tunnel

使 ssh 遠端連線的人很多, 但是 ssh 這個指令其實還有一些很有趣的tunnel用法,可以讓你擺脫一些限制。這邊稍微筆記一下:

Local port forwarding

在本地端開一個 port,然後 remote machine 會把封包轉送到指定的位置:

::bash
ssh -L <local_port>:<target_host>:<target_port> remote_user@remote_host

例如本地端防火牆只有開 22 port, 而封鎖了8080 port, 此時可以透過 local port forward 的方式,達到連線到遠端 8080 port。

::bash
ssh -L 1234:localhost:8080 cwliu@118.100.100.1

這時連到 localhost:1234,就相當於連線到 118.100.100.1:8080,避開防火牆的效果

Remote port forwarding (Reverse SSH)

這邊的-R代表的是 remote 之意,直接舉個例子

::bash
ssh -R 5900:localhost:22 guest@remote-pc

在遠端 remote-pc 會開一個 5900 port,其流量會導到 localhost 的 ...

安裝ThinkFan風扇控制軟體

安裝 Thinkfan

$ sudo apt-get install thinkfan

開啟風扇控制權

系統預設並不容許直接控制風扇速度,所以需要特別設定thinkpad-acpi的config值:

$ sudo echo "options thinkpad_acpi fan_control=1" | sudo tee /etc/modprobe.d/thinkpad_acpi.conf

重新載入thinkpad_acpi driver 套用新的設定值

$ sudo modprobe -rv thinkpad_acpi
$ sudo modprobe -v thinkpad_acpi

修改 thinkfan 設定檔

thinkfan 設定檔在 /etc/thinkfan.conf,主要可以設定的要用那些sensor以及設定溫度與轉速的規則。首先先找到溫度量測的檔案:

$ find /sys/devices -type f -name "temp*_input"

以x220為例,一共找到四個檔:

/sys/devices/virtual/hwmon/hwmon0/temp1_input
/sys/devices/platform/coretemp.0/temp3_input
/sys/devices/platform/coretemp.0/temp1_input
/sys/devices/platform/coretemp.0/temp2_input

把這四行寫入到 /etc/thinkfan.conf

sensor /sys/devices/virtual/hwmon/hwmon0/temp1_input
sensor /sys/devices/platform/coretemp.0/temp3_input
sensor /sys ...