質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Q&A

解決済

3回答

1708閲覧

Xserver上でn8nを起動し、アクセスできる方法を知りたい

alicos

総合スコア4

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

0グッド

0クリップ

投稿2021/09/03 05:33

ご覧頂きありがとうございます。

実現したいこと

IFTTTのようなWEB自動化ツールである「n8n」をXserver上で動かしたいと考えています。

現状/発生している問題

下記手順の1~4までは完了しております。(後述の現状のインストール状況等参照)
5の接続の部分がどのようなURLを指定すれば良いのかわからず、手をこまねいている状態です。

  1. XserverへSSH接続
  2. Node.jsのインストール
  3. n8nのインストール
  4. n8nの実行
  5. n8nへの接続

n8nへの接続で試した内容

  1. http://localhost:5678 へのアクセス
  2. http://0.0.0.0:5678 へのアクセス
  3. http://xxx.xxx.xx.xx:5678 へのアクセス(※)

※「xxx」の部分へはXserverのレンタルスペースのサーバーIPを入力しております。
レンタルスペースのサーバーIPはこちらのサイトを参考に調べたものをいれております。

上記いずれのアドレスでも、n8nにはアクセスできませんでした。(ERR_CONNECTION_REFUSED)

現状のインストール状況等(不足があればご教示ください)

[xxxxx@svxxxxx ~]$ npm -v 7.21.0 [xxxxx@svxxxxx ~]$ n8n -v 0.136.0 [xxxxx@svxxxxx ~]$ n8n start Initializing n8n process n8n now checks for new versions and security updates. You can turn this off using the environment variable N8N_VERSION_NOTIFICATIONS_ENABLED to "false" For more information, please refer to https://docs.n8n.io/getting-started/installation/advanced/configuration.html n8n ready on 0.0.0.0, port 5678 Version: 0.136.0 Editor is now accessible via: http://localhost:5678/ Press "o" to open in Browser.

以上になります。
サーバー知識が1mm程しかないため、
情報に不足がございましたらお申し付けください。

お力添えいただけますと幸いでございます。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

いただいたご回答を元に試行錯誤してみた結果、
GCE上でn8nを動かすことに成功しました。

セキュリティリスクやポートに対する知識等、ご丁寧にご教示いただきありがとうございました。

n8nのDBがデフォルトでSQLiteを利用しているのですが、定期的にvaccumコマンドを叩かないと、1ヶ月ほどでクラウドサーバーのストレージ容量を食いつぶしてしまうため、DBの外出しに挑戦しております。

また目も当てられないような初心者な質問をしてしまうかもしれませんが、お時間の許すときにご教示いただけますと幸いです。

目的は達成できたので、取り急ぎご報告まで。
ご協力いただきありがとうございました。

投稿2021/10/15 02:37

alicos

総合スコア4

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

Xserverでは不可能です。
そもそも利用ターゲットが1ミリも掠っていないので別の方向性を検討しましょう。

この辺の解説やら取るべき手段を検討していきます。
後はセキュリティ面の話。


Xserverは所謂レンタルサーバです。
「レンタル出来るサーバ」って何でも出来そうなイメージがありますがそうではありません。

一般的にレンタルサーバというのは
既にApacheやNginx等のWebサーバとして振る舞うアプリが起動しっぱなしのLinuxマシンを指します。
Webサーバは80(443)番ポートを専有しており、全世界からのHTTPアクセスを受け付けます。

利用者はFTP等の手段でレンタルサーバのハードディスク上に
HTMLやCSS、画像ファイル等の静的ファイルをアップロードする形で保存します。
そしてApache等の機能を間借りして自分のコンテンツを公開して配信して貰うわけです。
(PHPやCGIのモジュールを組み込んで、ちょっとしたブログとかは作れるようになってますけどね)

今回利用を検討しているn8nはNode.js製のWebサーバアプリです。
存在意義のレベルで真っ向からApache等のWebサーバと相反する存在です。
n8nを使いたければApacheのソフトを落とせ!

レンタルサーバサービスは勝手なポートで公開されても困る為
Xserver等のサービスは80(443)番ポート以外は
自社のファイアウォール等の設定により使わせないような設定になっているはずです。
そして残った80(443)番ポートは自前のApacheに専有させて塞がっている。

手詰まりです。


質問を満たす為には
「Webにぶら下がっているLinuxマシンを貸し出すだけのサービス」
こういうシンプルなサービスを検討しましょう。

AWSは多種多様なサービスを展開していますが、
仮想マシンの時間貸しに特化したEC2というサービスが分かりやすいですね。
超しょぼいスペックのマシンならば無償で借りる事が出来ます。

VPSという1台のマシンを仮想的に分割して貸し出すサービスならば
安くLinuxマシンを借りる事が可能です。
AWSでもVPSサービスは利用出来ますが、ConoHaは個人的にお世話になっているのでリンク張っておきます。

設定含めると長い道のりになりますが、
サービスのファイアウォールとLinuxの操作により件の5678番ポートを公開出来るようにすることで
n8nが利用出来るようになるはずです。


セキュリティ等の話。

n8nを利用しようと企んでいる事から
スクレイピングなんかもやりたいのでは?
岡崎市立中央図書館事件は読んでおくべきですね。
他人のサービスを壊すような迷惑な運用をしてはいけないよという話です。

全世界の誰でもアクセス出来るようなマシンを借りて公開して、
n8nの設定内容を好き勝手に書き換えられるようなのは
かなり怖いと言わざるを得ません。

AWS何かでマシンを借りてログを監視すると
誰にも教えてないのに30分もしたらBotが飛んできて
「セキュリティホールは無いかな?乗っ取れないかな?」とガチャガチャアクセスしにやってくるような世界です。

何かの表紙にn8nの設定内容を書き換えられ「岡崎市立中央図書館事件」のような迷惑行為をし始めて
警察は貴方に向かって「どういうことだ!?逮捕する!」とやってくる。
そういうリスクがあるんですよね。

全世界に公開するなら自分しか使えないように
IPアドレスで制限するとか、IDやパスワードの認証システムを導入するとか
そういった対策が必要になります。

クソ安いLinuxノートPCを用意してきて
自宅内で動かした方がリスクが少ないのでオススメです。

もしくはVPSは借りるけど、SSHのコマンドラインツールのみで作業する
ちょっとだけn8nの設定変更の為にサーバは立ち上げるけどすぐに落としてアクセスできなくする
普段の巡回はn8nのWebサーバではない形で巡回させる
こんな感じでしょうか。

投稿2021/09/03 06:25

miyabi-sun

総合スコア21158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

alicos

2021/09/03 07:22

ご回答いただきありがとうございます。 > Xserverでは不可能です どうして不可能なのか、またどのようにすれば解決できるのかをご記載いただきありがとうございます。 WEB用のレンタルサーバではそもそも難しいこと、Linuxマシンを借りて(自身で作って)諸々設定が必要だということもよくわかりました。 > セキュリティ等の話 リンク先の事件拝読しました。 まさに情報集約のためにn8nを利用しようと考えていたので、 無茶な運用をしないよう気をつけたいと思います。 また、自身が気をつけていてもアクセスできる環境にサービスを置いてしまうと 自分以外の誰かがアクセスできる可能性もあり、知らないうちに誰かに危害を及ぼすリスクがあることも初めて知りました。 自宅内にサーバーを立てるのか、セキュリティ面も勉強しつつ外部のマシンを利用するのか 今一度考えたいと思います。
guest

0

ベストアンサー

Xserverのプランはなんでしょうか? おそらく共用プラン(レンタルサーバ)だと思うのですが、であれば限られたポートしか利用できないので、おそらく外部から5678番ポートへのアクセスは無理じゃないかな?と思います(ファイアーウォール等で外部からアクセスできないようにしてるのがほとんど)。レンタルサーバに関してすべてそうかは把握はしてませんが、基本は無理じゃないでしょうか。

参考)
https://teratail.com/questions/70565
(「レンタル」で検索してみてください)

やるのであればVPSなどを契約するなり、AWSでEC2を使うなりだと思います。Linux全般の知識が必要になるので、けっこう覚えることがあると思いますので大変かと思いますが。

投稿2021/09/03 05:54

AbeTakashi

総合スコア4594

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

alicos

2021/09/03 06:25 編集

ご回答いただきありがとうございます。 > Xserverのプランはなんでしょうか? X10になります。(https://www.xserver.ne.jp/functions/) > 共用プラン(レンタルサーバ)だと思うのですが、であれば限られたポートしか利用できないので、おそらく外部から5678番ポートへのアクセスは無理じゃないかな? 参考資料ありがとうございます。 レンタルサーバーはウェルノウンポートという限られたポートしか利用できないというのも初めて知りました。 > やるのであればVPSなどを契約するなり、AWSでEC2を使うなりだと思います 代替案につきましてもアドバイスありがとうございます。 こちらは「Heroku」でも代用可能なものでしょうか? discord botを動かしているので、利用可能なのであればこちらを利用してみようかと思いまして。 お時間が許すようであれば、ご回答いただけますと幸いです。
AbeTakashi

2021/09/03 06:38 編集

まぁ、X10プランのような共有レンタルサーバのようなサービスではポートは自由に扱えないと思った方が賢明です(というか、元々稼働しているサービスしか使えないの方が適切かな)。同じサーバを複数人で使い回すので、各人がポートを自由に扱えちゃうと収集がつかないですね。miyabi-sunさんが詳しい説明を書いてくれてるようですので、そちらも参考にされると良いでしょう。 Herokuは使ったことがないので分かりませんが、さらっとドキュメントを眺めてみたところでは使えそうではあります。何かしら手を入れる必要はありそうですが。 参考) https://devcenter.heroku.com/ja/articles/preparing-a-codebase-for-heroku-deployment#4
alicos

2021/09/03 07:28 編集

> 共有レンタルサーバのようなサービスではポートは自由に扱えないと思った方が賢明 各々が好き勝手使えてしまったら、管理者側も収集つかないですね。 自身で調べていても明確に「できない」理由を探すのが難しかったので、大変勉強になりました。 >Heroku 参考資料もいただきありがとうございます。 Xserverで無理なことがわかったので、次はこちらで(もしくは自宅サーバをつくって)実装できないかどうか試してみたいと思います。 先にご回答いただいた内容をベストアンサーにさせてください。 ご回答いただきありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問