質問: ### Ubuntuにはできるがラズパイにできない. 普段,家のUbuntuマシンに外部アクセス(ssh)することがあるのですが,同様なことを最近購入したラズパイでも行いたいのです. しかし,ルータのポートマッピングの設定,そしてsshd_configでの秘密鍵やポート指定などの設定は同様に行ったのにもかかわらず,外部アクすることができません. ちなみに,ローカルからは両者ともにsshでアクセスできます. 私としては,もうどこに違いがあるのかもよくわからないので,ご教授いただければ幸いです. 少しでも気になる事があればコメントいただけるとありがたいです. よろしくおねがいします. ### 発生している問題・エラーメッセージ タイムアウトが発生します. USERNAME, PORTなどの大文字は値を置き換えたものです. ``` $ ssh USERNAME@GLOBALIP -p PORT -vvv OpenSSH_7.6p1, LibreSSL 2.6.2 debug1: Reading configuration data /Users/MACUSERNAME/.ssh/config debug1: Reading configuration data /etc/MACUSERNAME/ssh_config debug1: /etc/ssh/ssh_config line 48: Applying options for * debug2: ssh_connect_direct: needpriv 0 debug1: Connecting to GLOBALIP port PORT. ssh: connect to host GLOBALIP port PORT: Operation timed out ``` ### 試したこと 意味があるかわかりませんが,ローカルでsshして`ss -atn`した結果です. こちらではwell known以外のポートの値は一応変えてます. ラズパイ ``` USERNAME@raspberrypi:~ $ ss -atn State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 *:10100 *:* LISTEN 0 128 127.0.0.1:52698 *:* ESTAB 0 140 192.168.0.10:10100 192.168.0.2:52592 LISTEN 0 128 :::10100 :::* LISTEN 0 128 ::1:52698 :::* ``` Ubuntu ``` username@ubuntu-System:~$ ss -atn State Recv-Q Send-Q Local Address:Port Peer Address:Port LISTEN 0 128 *:10500 *:* LISTEN 0 5 127.0.1.1:53 *:* LISTEN 0 5 127.0.0.1:631 *:* LISTEN 0 128 127.0.0.1:52698 *:* ESTAB 0 0 192.168.0.30:10500 192.168.0.2:54645 LISTEN 0 128 :::10500 :::* LISTEN 0 5 ::1:631 :::* LISTEN 0 128 ::1:52698 :::* ``` ### ポートマッピングの設定 ポートマッピングですが,以下のようにUbuntuとラズパイを同様に設定しています.IPアドレスやポートの衝突は起きない数値になっています. ラズパイ用 ``` LAN側ホスト:192.168.0.10 プロトコル:TCP ポート番号:10100-10100 優先度:1 ``` Ubuntu用 ``` LAN側ホスト:192.168.0.30 プロトコル:TCP ポート番号:10500-10500 優先度:2 ``` という設定になっています. 下の設定のUbuntuでは外部からアクセスできるのですが,上ではできません. ---※追記したらteratailでなぜか改行が効かなくなってしまいました.見にくくなってしまったかもしれませんがよろしくおねがいします.
回答: 自己解決しました. 原因は固定IPの設定ミスのようでした. ``` $ sudo nano /etc/dhcpcd.conf interface wlan0 #ここをコメントアウトしていた static ip_address=192.168.0.10/24 static routers=192.168.0.1 #ここをコメントアウトしていた ``` 固定IP設定の際に,`ip_address`のコメントアウトを外し設定したのですが,同時に`interface`と`static routers`も設定しなければいけないようでした. なぜローカルからのsshや`apt`,`curl https://www.google.com`が出来たのかに関してはわかりません. 腑に落ちない箇所はありますが,当問題に関しては解決できました.