web-dev-qa-db-ja.com

ワイヤレスネットワークに自動的に接続するようにヘッドレスサーバーを構成するにはどうすればよいですか?

ヘッドレスサーバーをセットアップしていますが、配置したい場所にイーサネットアクセスがないため、起動時にWiFiネットワークに自動的に接続する必要があります(ワイヤレスカードがあります)。イーサネット接続に接続して設定できますが、それ以降はアクセスポイントに自動的に接続する必要があります。

これをどのように構成できますか?

18
Seth

多くの研究を行った後、私はそれが機能するようになりました。 Intelワイヤレスカードを持っているので、余分なドライバーをインストールする必要はありませんでしたが、持っているカードによっては必要になる場合があります。

最初に、ワイヤレスカードが使用しているインターフェイスを把握する必要があります。これにはiwconfigコマンドを使用します。

iwconfig  

私の場合、私のワイヤレスカードはwlan0インターフェイスなので、それを使用します。次に、ワイヤレスネットワークをスキャンする必要があります。

iwlist wlan0 s  

これにより、多くの出力が得られ、お住まいの地域のさまざまなワイヤレスネットワークの詳細が表示されます。通常、ESSIDでフィルタリングする方が簡単です。 grepはここで役立ちます:

iwlist wlan0 s | grep ESSID  

これにより、お住まいの地域のすべてのワイヤレスネットワークの名前が一覧表示されます。ここで、ネットワークに接続します。

安全でないネットワークとWEPネットワーク

ネットワークがセキュリティで保護されていない場合、または古いWEPでセキュリティが保護されている場合(セキュリティまたはルーターをアップグレードする時間です!)、接続は比較的簡単です。ネットワークが安全でない場合、これで接続できるはずです:

iwconfig wlan0 essid NAME_OF_NETWORK  

ネットワークがWEPで保護されている場合、次のようにkey引数にパスワードを追加するだけです。

iwconfig wlan0 essid NAME_OF_NETWORK key PASSWORD  

実行する必要があるかもしれません

dhclient  

ルーターにIPアドレスを割り当てさせるため。

WPA/WPA2

WPA/WPA2はもう少し複雑です。 wpa_supplicantを使用する必要があります。最初に/etcに設定ファイルを作成します:

Sudo wpa_passphrase NETWORK_NAME NETWORK_PASSWORD > /etc/wpa_supplicant.conf  

次に、接続する必要があります。

Sudo wpa_supplicant -B -iINTERFACE_NAME -cPATH_TO_CONFIG -DDRIVER  

例えば:

Sudo wpa_supplicant -B -iwlan0 -c/etc/wpa_supplicant.conf -Dwext  

-Bはバックグラウンドでwpa_supplicantを実行します。ほとんどの場合、wextドライバーが動作するはずです。他のドライバーを実行するには:

wpa_supplicant  

接続の詳細については、「 ターミナルでネットワークに手動で接続および切断する方法? 」を参照してください。

起動時に接続する

次に/etc/network/interfacesを編集する必要があります。お気に入りのエディター(vimnanoなど)で開きます。 Sudoを使用する必要があります。

以下を除くすべてを削除します。

auto lo
iface lo inet loopback

(ループバックデバイス)。追加します:

auto wlan0  
iface wlan0 inet dhcp  

pre-up <COMMAND> 

wlan0はワイヤレスインターフェースで、<COMMAND>はネットワークへの接続に使用するコマンドです(上記を参照)。たとえば、ネットワークがセキュリティで保護されていない場合は、次を追加します。

pre-up iwconfig wlan0 essid some_network_name  

ネットワークがWPA/2で保護されている場合、次のようなものを追加します。

pre-up Sudo wpa_supplicant -B -iwlan0 -c/etc/wpa_supplicant.conf -Dwext  

wpa_supplicantを使用している場合は、以下も追加する必要があります。

post-down Sudo killall -q wpa_supplicant  

ファイルを保存し、再起動し、イーサネットを取り外して、実行してみてください:

Sudo apt-get update

コマンドが正常に完了すると、おめでとうございます!あなたはオンラインです!コマンドが正常に完了しない場合は、以下にコメントを追加してください。

例と説明

ネットワークがWEPで保護されていないか保護されている場合、/etc/network/interfacesは次のようになります。

auto lo
iface lo inet loopback  

auto wlan0  
iface wlan0 inet dhcp  

pre-up iwconfig wlan0 essid some_network_name 
# note: if WEP secured you would also have a 'key' argument with your password

ネットワークがWPA/2で保護されている場合、/etc/network/interfacesは次のようになります。

auto lo
iface lo inet loopback  

auto wlan0  
iface wlan0 inet dhcp  

pre-up Sudo wpa_supplicant -B -iwlan0 -c/etc/network/wpa_supplicant.conf -Dwext  

post-down Sudo killall -q wpa_supplicant  

今説明。

  • auto wlan0wlan0インターフェースを自動的に開始します。

  • iface wlan0 inet dhcp:DHCPを介してIPアドレスを取得します

  • pre-up:接続を確立するためのコマンドを指定します。

  • post-down:必要に応じて、自分の後にクリーンアップするために使用するコマンドを指定します。

ソース:

19
Seth

サーバーに簡単にsshおよびftpできるように、静的IPアドレスをお勧めします。また、ファイルを大幅に簡素化できます。

auto lo
iface lo inet loopback  

auto wlan0  
iface wlan0 inet static
address 192.168.1.125  
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8 192.168.1.1
wpa-ssid <your_network>
wpa-psk <your_key>

アドレスがDHCPのルーターで使用される範囲外であることを確認し、もちろん、ここで適切な詳細を置き換えてください。

9
chili555