2021年2月17日 星期三

如何更改遠端桌面Remote Desktop Listening Port 由外部網路連線


 因應家裡有電腦跟Raspberry Pi 需要透過遠端連線控制

習慣上我是使用微軟(MSFT)  Remote Desktop Protocol (RDP) 的軟體來做遠端控制

但此軟體是以IP來決定要對哪個Taget端做連線,因此家裡的內網就勢必無法直接連線

而解決的方式有兩種: 

1. 用Router Forwarding。

2. 建立 VPN  Server 連至家裡內網。

本篇是打算用第1種方法來達成目的,Router Forwarding 這邊就先多做介紹。

首先開啟Regedit 到 機碼

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp

 RDP Default listening port 是3389

更改成自己要的port(如3390),並記得在Router Forwarding 上設定對應的 內網IP、Port


然後從外部連線的部分就可以直接連線到Router 的實體IP,再加上 Port Number


這樣就以可依照不用的Port來對應遠端連線至不用的電腦上



2021年1月25日 星期一

智慧家庭-Home Assistant - 使用 Docker-Compose 安裝 Home-Assistant ( Hassio )

直接進入正題 Home-Assistant 的 Docker-Compose 安裝yml檔

以下包含 portainer安裝的設定,如果你已經有安裝了,可以先把portainer的部分刪除

================================================

version: '3'
services:
  hassio:
    image: homeassistant/armv7-hassio-supervisor
    container_name: hassio_supervisor
    privileged: true
    restart: always
    security_opt:
      - seccomp:unconfined
      - apparmor:unconfined
    environment:
      - HOMEASSISTANT_REPOSITORY=homeassistant/raspberrypi4-homeassistant
      - SUPERVISOR_NAME=hassio_supervisor
      - SUPERVISOR_SHARE=/home/pi/hassio/data
      - DBUS_SYSTEM_BUS_ADDRESS=unix:path=/var/run/dbus/system_bus_socket
    volumes:
      - /etc/localtime:/etc/localtime:ro
      - /home/pi/hassio/data:/data
      - /home/pi/hassio/scripts:/scripts
      - /var/run/docker.sock:/var/run/docker.sock
      - /var/run/dbus/system_bus_socket:/var/run/dbus/system_bus_socket
  portainer:
    image: portainer/portainer
    container_name: portainer
    restart: always
    ports:
      - "9000:9000"
    command: -H unix:///var/run/docker.sock
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /home/pi/hassio/portainer:/data:rw

================================================

一樣把它存成Docker-Compose.yml,並執行:

docker-compose up -d

安裝完畢後,可以透過網頁輸入 127.0.0.1:8123 或 IP:8123

進入Home-Assistant設定。









2021年1月24日 星期日

智慧家庭-Home Assistant - 在Pi OS 上安裝Docker, Docker-Compose

雖然我也只是剛剛才摸索 ,但簡介一下Docker

一般來說在x86 OS 系統上如果要再執行另外一個OS,

不外乎就是使用 Virtual Machine (VM)之類的軟體,模擬出虛擬硬體再掛上OS 執行。

而Docker 則是產生Container (容器),跟VM 最大的不同是Container 仍然在原生OS上執行。

詳細差異可以參考下列網址:

https://docs.microsoft.com/zh-tw/virtualization/windowscontainers/about/containers-vs-vm

Docker-compose 算是 Docker 延伸,它是透過python 的指令配合yam or ymal 來設定要建立

的Container 參數,因此Docker-compose 必預要先安裝Docker。

而它會比起單純使用Docker 下指令、更新設定來得方便許多。


安裝Docker:

可以參照官網的步驟

https://devdojo.com/bobbyiliev/how-to-install-docker-and-docker-compose-on-raspberry-pi

或是

1. Install Docker 指令

  curl -sSL https://get.docker.com | sh

2. Add permission to Pi User to run Docker Commands ( 賦予 pi 使用者執行Dock 指令)

  sudo usermod -aG docker pi

Reboot here or run the next commands with a sudo ( reboot now )

3. Change python alias to python3

  alias python=python3

4. Install dependencies for docker-compose

  sudo apt-get install libffi-dev libssl-dev

  sudo apt-get install -y python python3-pip

  sudo apt-get remove python-configparser

5. Install docker-compose

  sudo pip3 install docker-compose

安裝完畢之後,我們可以先建立一個portainer,它是透過網頁GUI介面來管理Docker

相較於用指令的方式管理又更友善了。

建立的安裝設定檔(yml)如下:

==============================================

version: '3'

services:
  portainer:
    image: portainer/portainer
    container_name: portainer
    restart: always
    ports:
      - "9000:9000"
    command: -H unix:///var/run/docker.sock
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /home/pi/hassio/portainer:/data:rw

==============================================

將此設定檔存成 docker-compose.yml

再將到yml的同目錄底下執行docker-compose建立指令:

docker-compose up -d
完成之後,就可以到portainer網頁去管理docker。

Default Address 為 127.0.0.1:9000 或是 你的系統IP:9000


接下來安裝Home-assistant 也是一樣的做法,寫yml設定再到該目錄下執行 

  docker-compose up -d

或者你也可以跟 portainer 寫入同一個docker-compose.yaml裡再執行指令,一併安裝






2021年1月23日 星期六

智慧家庭-Home Assistant - 前言, Raspberry Pi OS 安裝

前言:
自從買了新家開始裝潢,就著手打算要弄智態家庭的功能。

經過了Survey了一翻,Home-Assistant是一個整合度不錯的選項  

如果不想花大錢直接買Apple Home-Kit 等等有認證的智慧裝置  

就自己研究囉…不過先聲明一下,這條路還蠻花時間要研究 

即使現在google 很方便,但過程難免會遇到一些問題。 

有時候需要會看程式、會自己焊接、改裝硬體。

 如果您沒有太多的精神在上面的話…還是花錢吧@@"。

也因此我就開始想說要來寫一下文章紀錄我走過的路… 

 Raspberry Pi OS 安裝 :
 硬體:Raspberry Pi
             32G SD Card 
             Card Reader

首先到以下網頁下載 Pi OS image


 我是選擇第一個有自帶安裝一些軟體的,雖然會大一點,但省去我另外再找軟體

下載完畢將image 透過  balenaEtcher 經由 Card Reader 燒錄進 SD Card。

SD Card 燒錄完畢,直接插入 Rasberry Pi 的卡槽裡,接上HDMI,Keyboard Mouse。

接下來跟Windows 一差不多,把一些資料輸入完進到桌面大至上就完成安裝了。

當然Home-Assistant (HA)也可以用 跟Pi OS 一樣的安裝方法,

但HA Default沒有帶一些指令,如sudo…在之後如果需要控制到 Rasberry Pi 上的GPIO

就會比較麻煩,甚至無法使用。

因此,我下篇將會介紹透過  Docker 、Docker-Compose 來安裝 HA。