自宅のSSHサーバにDDNSを利用して外出先からアクセスしたいと思っていろいろ設定をしているのですが、なかなかうまくいきません。
以下、必要と思われる情報を整理しますので、何が問題なのか特定していただければ幸いです(他にも必要な情報があれば、補足欄で対応させていただきます)。
どうぞよろしくお願い致します。
●マシン環境
サーバ: Linux (CentOS 5ベース)
クライアント: MacBook Air OS X 19.8.3
●利用しているDDNSサービス
DynamicDO!.jp http://ddo.jp/
したがって、ホスト名は XXXX.ddo.jp (XXXXは登録したもの)。
●問題の症状
端末から
$ ssh -p 22 -i ~/.ssh/id_rsa ログインID@ホスト名
とすると、
ssh: connect to host ホスト名 port 22: Connection refused
というエラーメッセージが出ました。
一方、ホスト名の部分をグローバルIPアドレスに換えて
$ ssh -p 22 -i ~/.ssh/id_rsa ログインID@グローバルIPアドレス
とすると、
ssh: connect to host グローバルIPアドレス port 22: Operation timed out
とタイムアウトの表示が出ました。
ちなみに、ここでのグローバルIPアドレスは
$ ping ホスト名
としたときに出力されるIPアドレスです。もちろん、WEB上の正引きサービスで出力されるIPと同じです。
●ネットワークの構造
----光回線----[ルータ内蔵式モデム]----[ルータ(ブリッジモード)]----(サーバ)
という感じで、
ルータ内蔵式モデムはNTTのRS-V340NE、
ルータはELECOM Logitec LAN-WH300N/DGRU
になっていて、二重ルータの構造を避けるため、後者をブリッジモード(アクセスポイント化)にしています。
実際、端末から
$traceroute www.google.com
と入力すると、NTTルータのIPアドレス(192.168.1.1)が表示されることから、ちゃんとブリッジモードになっています。
●NTTルータに置けるポート開放
NTTルータの設定においてポート開放の設定は完了してあります。
具体的には、TCPの22番を開放し、宛先として、サーバのIPアドレス(192.168.1.10)を指定しています。
設定方法:http://www.akakagemaru.info/port/RV-S340NE.html
●サーバ機の/etc/sysconfig/iptables
[root@spitz /]# cat /etc/sysconfig/iptables
*nat
-A POSTROUTING -o eth1 -j MASQUERADE
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
# Preamble
-A FORWARD -i eth1 -o eth0 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i eth0 -j ACCEPT
-A INPUT -i eth0 -j ACCEPT
-A INPUT -i lo -j ACCEPT
# Allow these ports
-A INPUT -m state --state NEW -p tcp --dport ssh -j ACCEPT
# http and https is allowed for all nodes on the public subnet
-A INPUT -m state --state NEW -p tcp --dport https --source 192.168.0.0/255.255.255.0 -j ACCEPT
-A INPUT -m state --state NEW -p tcp --dport www --source 192.168.0.0/255.255.255.0 -j ACCEPT
# Standard rules
-A INPUT -p icmp --icmp-type any -j ACCEPT
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# Uncomment the line below to log incoming packets.
#-A INPUT -j LOG --log-prefix "Unknown packet:"
# Deny section
-A INPUT -p udp --dport 0:1024 -j REJECT
-A INPUT -p tcp --dport 0:21 -j REJECT
-A INPUT -p tcp --dport 23:1024 -j REJECT
-A INPUT -p tcp --dport 22 -j ACCEPT
# Block incoming ganglia packets on public interface.
-A INPUT -p udp --dport 8649 -j REJECT
# Block mysql
-A INPUT -p tcp --dport 3306 -j REJECT
-A INPUT -p tcp --dport 40000 -j REJECT
# For a draconian "drop-all" firewall, uncomment the line below.
#-A INPUT -j DROP
COMMIT
●サーバ機の/etc/ssh/sshd_config
http://oshiete.goo.ne.jp/qa/8008522.html の回答No.1への補足を参照。
●サーバ機のその他ネットワークの設定(一部抜粋)
# ifconfig -a
eth1 Link encap:Ethernet HWaddr MACアドレス
inet addr:192.168.1.10 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: xxxxxxxxx Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1856 errors:0 dropped:0 overruns:0 frame:0
TX packets:751 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:207132 (202.2 KiB) TX bytes:73950 (72.2 KiB)
Memory:fbde0000-fbe00000
# cat /etc/sysconfig/network
HOSTNAME=XXXX
NETWORKING=yes
NETWORKING_IPV6=no
GATEWAY=192.168.1.1
# cat /etc/hosts
127.0.0.1 localhost.localdomain localhost
192.168.0.3 XXXX(/etc/sysconfig/networkにあるHOSTNAMEと同じ.DDNSサービスのホスト名とは無関係)
# cat /etc/resolv.conf
search local ドメイン名(XXXXのドメイン)
nameserver 192.168.1.1
No.1ベストアンサー
- 回答日時:
>$ ssh -p 22 -i ~/.ssh/id_rsa ログインID@ホスト名
>$ ssh -p 22 -i ~/.ssh/id_rsa ログインID@グローバルIPアドレス
実行した端末はどこにある端末です?
まさかサーバと同じLAN内からWAN側IPアドレスを…なんてことはないですよね?
LAN内部からWAN側IPアドレスへのアセスは失敗するってパターンがそれなりにありますけど。
「ヘアピンNAT」とか「NATループバック」とか、そういうのに対応したルータでない限りは。
この回答への補足
回答ありがとうございます。
>まさかサーバと同じLAN内からWAN側IPアドレスを…なんてことはないですよね?
そのまさか、です。
同じLAN内から実験しました。プライベートIPアドレスの場合、問題なくsshでログインできます。
明日外部からログインチェックしてみます。
外出先で実験したら無事ログインできました。
やはり、ご指摘の通りだったんですね。ありがとうございます。
ただ、
$ ping ホスト名
とすると
Request timeout for icmp_seq 0
とタイムアウトが表示されるのがいまいちよくわかりませんでした。これはsshのためにポート22だけを開放しているから、ssh以外はサーバ側が反応しないということでしょうか。
No.2
- 回答日時:
>$ ping ホスト名
>とすると
>Request timeout for icmp_seq 0
>とタイムアウトが表示されるのがいまいちよくわかりませんでした。これはsshのためにポート22だけを開放しているから、ssh以外はサーバ側が反応しないということでしょうか。
単純にWAN側からのICMPに応答しない設定になっているだけかと。
http://router.ipq.jp/rv-s340ne/post_4.html
の下の方に「PING応答機能」なんてのありますが。
# NECのATermのOEM…なのか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- UNIX・Linux Ubuntuサーバーでメールを受信できない 7 2022/08/23 20:55
- UNIX・Linux iptablesを設定するとメール送信処理が遅くなる!? 6 2022/06/07 01:11
- Windows 10 インストールしたてのVirtualBoxの仮想マシンにDHCPで割り振られるIPアドレスにつきまして 1 2023/05/03 14:46
- ルーター・ネットワーク機器 YAMAHAルータ設定について 1 2022/09/03 16:31
- HTML・CSS CSSが効かずどのように指定すれば良いか分からないのでアドバイスお願い致します 2 2023/06/07 12:25
- サーバー 別サーバに構築したApache+Tomcatの連携について 2 2023/03/06 23:23
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- UNIX・Linux Linux(fedora)でホスト名について 2 2022/06/21 14:24
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
webサーバーのhttp://hoge/foo/...
-
PMail Serverをイントラで使用...
-
PR-S300NEでLAN側DNS設定で困っ...
-
HSRPとスタック接続のどちらを...
-
SAKURAインターネット専用サー...
-
1台のPCから複数のDHCPサーバを...
-
DHCPの適切なリース期間を教え...
-
SMTPから送信履歴を取得する
-
二つのPCでサンダーバードを使...
-
メールアドレスで大文字、小文...
-
ActiveDirectoryのドメインにク...
-
AD統合DNS ゾーン転送
-
DVDを作る際、メニュー、オート...
-
グループポリシーのスクリプト...
-
DNS未設定なのにインターネット...
-
nslookupでIPが見つからない
-
DNSでHOSTが「正引き」と「逆引...
-
共有フォルダへ特定のユーザの...
-
DNS設定をコピーしたい
-
停止中のメールサーバへメール...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Localhostでは動くのにIP指定...
-
平成21年ネットワークスペシャ...
-
送信先の変更
-
HSRPとスタック接続のどちらを...
-
PMail Serverをイントラで使用...
-
webサーバーのhttp://hoge/foo/...
-
キャッシュサーバとはどこにあ...
-
ルーターの代替DNSサーバーの入...
-
IEでJSONが読み込めない
-
富士通Si-R80brin IPアドレス
-
メールを送るFreeソフトWin...
-
DNSサーバ
-
Outlook2000 Exchange Server ...
-
DHCPリレー
-
社内ネットワークに設置したWEB...
-
PPPoE Unnumbered設定
-
LAN内の一部のPCのIPアドレス変...
-
Dreamweverでのベーシック認証...
-
FFFTPで500:Access is denied
-
なぜヤフー知恵袋は無法地帯を...
おすすめ情報