telnetセッションを介したファイルのダウンロードとアップロード


15

出席デバイスを実行していLinux OSます。このデバイスをtelnetセッション経由で接続できます。デバイスには、新しいファイルをダウンロードしてアップロードしたいファイルがいくつかあります。どうやってやるの?Linux OSの知識が非常に少ない。助けてください!

ここに画像の説明を入力してください


いくつのファイルを転送しますか?busybox --helpand ls -l /binとの出力をどこかに貼り付けてls -l /usr/binください。
ジョフェル14

実際、この出席デバイスのデスクトップの背景を変更したいので、デバイスに会社のロゴをアップロードしたいです。このようなオプションはデバイスメニューでは使用できません(このオプションはベンダーに既に求めています)。そのため、telnetセッションを介して接続し、デバイスにdesktop.jpgおよびその他の画像ファイルを見つけました。次に、これらのファイルをローカルシステムで取得します。そして、同じことを確認した後、デバイスに希望の画像をアップロードします。そのため、望ましいイメージに応じてデバイスイメージが更新されます。/ mnt / mtdblock / imageのデバイスで利用可能なデスクトップイメージを少なくとも変更したい
PRdeep Kumawat 14

次回情報を追加する場合は、コメントを追加する代わりに質問を編集してください。
ジョフェル14

回答:


12

これは、どのツールがクライアントデバイスにインストールされているか、カーネルによってサポートされているかによって異なります。

ファイル転送の可能な方法(順序なし):

  • ssh / sftp
  • base64 / uuencodeを使用してバイナリファイルを表示可能な形式にエンコードし、Telnetターミナルウィンドウから/にコピーします。
  • netcatまたはsocatorまたはwith bashおよび/ dev / tcpを使用した単純なtcp接続経由
  • Webサーバーを使用したアップロードwgetまたはcurlWebサーバーからのダウンロード
  • コマンドラインFTPクライアントを備えたFTPサーバー
  • sambaまたはnfsマウント

単純なファイル転送、シリアルコンソールさえあればホストにファイルを取得する方法をお読みくださいより多くの可能性について。


desktop.jpgnetcat / ncメソッドを使用して、デバイスからPCにコピーします。

PCで、ファイアウォールを一時的に無効(または可能であれば再構成)し、実行します

netcat -l -p 10000 > desktop.jpg

そしてデバイス上

busybox nc A.B.C.D -p 10000 < desktop.jpg

ABCDをPCのIPアドレスに置き換える必要がある場所。転送が成功するとすぐに、PCのnetcatプロセスが自動的に停止します。そうでない場合は、何かが間違っているとあなたはそれを止めることができますCtrl+C

他の方向については、単に交換<および>両側に。最初に元のバックアップを作成しますdesktop.jpgcp desktop.jpg desktop_orig.jpg)。


WinSCPユーティリティを試し、ftp / sftp / scpプロトコルを使用してデバイスを接続しようとしました。しかし、接続されていません。telnetコマンドを使用してデバイスを接続し、取得したいファイルを表示してデバイスに再度アップロードすることができます。
PRdeep Kumawat 14

お使いのデバイスでは、sshまたはftpサーバーが実行されていない可能性があります。
ジョフェル14

よくわかりません。そのデバイスからファイルを取得/アップロードする他の方法はありますか?
PRdeep Kumawat 14

szターミナルを使用してファイルを送信することもできます。両側で必要になります。
slm

@PRdeepKumawat私は答えを例で拡張しました。
ジョフェル14

5

デバイスにsshまたはftp(またはその他)がありません。

だから、私は次のことをします:

  1. telnet a.b.c.d | tee telnet.log
  2. ログインしてファイルに移動します
  3. cat file.txt
  4. セッションを閉じる(tmuxペインを閉じる)
  5. telnet.logゴミからクリア

Telnet経由でファイルをダウンロード/アップロードするユーティリティを簡単に作成できるはずです。


1

rcpコマンドで試してください。

man rcp転送を自動化する場合の詳細情報に使用します。

ところで、これは非常に安全ではないことを知っていますか?


0

@jofelと他のすべての皆さん、親切な支援に感謝します。特定のLinuxコマンドのみを認識するため、デバイスにはカスタマイズされたOSがインストールされていると思います。netcatはデバイスによって認識されません。しかし、今日、tftpコマンドを使用してファイルを転送することに成功しました。desktop.jpgファイルをこのコマンドで正常に置き換えました。私がやったことは、ウィンドウシステム上にtftpサーバーを作成したことです。デバイスのtelnet経由でログインし、次のコマンドを実行します。

ダウンロードファイルtftp -l -p tftp -l desktop.jpg-192.168.0.249 69

アップロードファイルtftp -l desktop.jpg -g 192.168.0.249 69


0

私は今、これらの方法でこれを行っています:

ウィンドウシステムにFTPサーバーを作成します(solerwindsをインストールします)。デバイスのtelnet経由でログインし、次のコマンドを実行します。

ファイルをダウンロードするには:

tftp -l <FileName> -p <TFTP Server IP> <Port No of TFTP>

例:

tftp -l desktop.jpg -p 192.168.0.249 69

またはファイルをアップロードするには:

tftp -l <FileName> -g <TFTP Server IP> <Port No of TFTP>

例:

tftp -l desktop.jpg -g 192.168.0.249 69

tftpファイルのデフォルトの場所は C:\TFTP-Root


0

〜7 Kbファームウェアファイルをシリアルポート経由でBusyBoxベースのLinux組み込みシステムにアップロードしました。

ネットワーキングもファイル転送ユーティリティもありません。Base64 utilsまたはデバイス上でリモートで役立つものはありません。

ホストでは、ファームウェアを次の形式に簡単にエンコードしました。printfコマンドと組み合わせたシェルリテラルで構成される一種の16進ダンプ:

printf "\xDE\xAD\xBE\xEF\x...\xF0"
printf "\xCA\xFE\x33\xE1\x...\xD3"

基本的に、解釈printfする\xエスケープシーケンスを使用したシェルコマンドprintf。私がしたデバイスで:

device $ cat > firmware.sh

次に、minicomのASCIIファイル送信を使用しました(Ctrl-AS)をこのファイルをホストに送信しました。データ量が少ないため、コピーアンドペーストを使用することもできます。

次に、実行可能とマークし、printfスクリプトを実行しました。

device $ chmod a+x firmware.sh
device $ ./firmware.sh > firmware.bin

BusyBoxの使用のチェックmd5sumというfirmware.binして、デバイス上チェックサムがホスト上の元のファームウェアイメージと一致するました。

PSシェルの二重引用符構文\xは、認識されたエスケープシーケンスではないため、逐語的に通過します。したがって、バックスラッシュを2倍にする必要はありません。


-1

次の方法を使用して、Telnet経由で小さなバイナリファイルをWindowsボックスにダウンロードします。

  1. hexdump -v -e '16 / 1 "%02x" 'myfile.binを実行します
  2. 画面から16進ダンプをコピー
  3. このオンラインツールに16進ダンプを貼り付けてバイナリファイルを作成します:http : //tomeko.net/online_tools/hex_to_file.php?lang=en

#3のリンクがわからない!

3
@Goroこの場合のリンクは、引用できる説明ではなく、答えに不可欠なオンラインツールです。そのタスクのためにローカルプログラムを持っている方が良いでしょう。
-RalfFriedl

ありがとう@RalfFriedl。説明を明確にするために回答を編集しました。
イゴール・セラヤ
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.