VPNを使いたいので購入してみました。
結果としてはプロバイダがBIGLOBEでIPv6接続の場合は使えませんでした。(これから二重ルータを試してみようとは思いますが)
使えませんでした、では買った意味が無いので色々やってみようかと思います。
色々やってみるのに、パッケージを眺めていたところ、pythonを見つけたので使ってみます。
目次
パッケージをインストール
パッケージセンターからインストールするだけなので、解説は不要
SSHを有効化
- コントロールパネルを開く
- 端末とSNMPをクリック
- ターミナルタブの「SSHサービスを有効化する。」にチェックを入れる(ポート番号は22)
TeraTermでログイン
ホスト | Synology NASのIP Address(192.168.*.*) |
ユーザ名 | AdministratorグループのユーザID |
パスフレーズ | 上のパスワード |
こんな感じでログイン可能
cpuinfo
とりあえずcpuinfoでも見てみましょう。(抜粋)
公式HPに載ってる通りですね。
pythonの実行
test.pyという名前で、以下のファイルを作成します。
1 2 |
# test.py print("aaa") |
上記のファイルは以下に置きます。
/var/services/homes/{ユーザー名}/Drive/python
pythonフォルダはmkdirで作成しました。
何も考えずにやりましたが、vi(vim)が使えます。
1 2 3 4 5 6 7 |
# shell cd Drive mkdir python cd python touch test.py vi test.py |
実行します。
実行できました。
pythonのバージョン確認
忘れてたのでバージョンを確認してみます。
Linuxらしい感じで、python2が動いていたので、python3で実行し直します。
これも実行できました。
python2ってprint("aaa")って実行できましたっけ・・・?
venvを作成します
仮想環境が使えないと不便なんで使えるか確認します。
使えました。
当然ながら、バージョンは同じです。
ファイルにパスを入れてみます
1 2 3 |
# test.py #!/var/services/homes/{ユーザー名}/Drive/python/venv/bin/python print("aaa") |
実行します。
問題なさそうですね。
あとは、pipかな?
pipを使ってみます
(なんとなく)flaskをインストールします。
おー、できた。
Flaskの実行
とりあえずソースコードをでっち上げます。
1 2 3 4 5 6 7 8 9 10 |
#!/var/services/homes/{ユーザー名}/Drive/python/venv/bin/python from flask import Flask app = Flask(__name__) @app.route("/") def hello(): return "Hello World!" if __name__ == '__main__': app.run(debug=False, host='0.0.0.0', port=3000) |
実行します。
ブラウザでアクセスします。
アクセスできました。
DS416Playには(というか、SynologyのNASには)調べた感じブラウザは無いので(当たり前ですが)localhost:portは使え無いと思います。
また、DSM(SynologyのOS)は、アクセスするのにポート5000を使っている様なので、Flaskの標準デバッグポートとかぶっています。
ポートを変えてあげましょう。
これだけ動いてくれればだいたい何でもできそうですね。