CentOS 7.6 Telnetサービス構築プロセス(Opensshアップグレードバトル第一弾のバックアップトランスポートライン構築)

CentOS 7.6 Telnetサービス構築プロセス(Opensshアップグレードバトル第一弾のバックアップトランスポートライン構築)

不明な点があるときはいつでも、Blog Park にアクセスして、いつでも答えやインスピレーションを見つけることができます。ブログを始めて 3 か月経ちますが、何も投稿していません (管理者がどう思っているかはわかりませんが、私のアカウントをブロックしないことを願います)。何もせずに受け取ることはできません。初心者が Telnet サービスの設定方法を理解するのに長い時間がかかりました (他の人のやり方を真似する場合でも、手順がどこから来ているのかを知る必要があります)。ここでは、それを簡単に整理して、皆さんと共有します。

Linux の ssh はとても使いやすいのに、なぜいまだに古い Telnet を使い続けているのでしょうか? 最近SSHブルートフォース列挙脆弱性に悩まされています。残念ながらCentOS7の最新バージョンは7.7(openssh7.4しか入っていないのでopenssh 8.0にアップグレードしたい)です。rpmの依存関係でyumでのsshアップグレードは不可能です(汗)。 。 。 。 。 。だから、コンパイルしてインストールする方法しか学べません。コンパイルしてインストールするツールを使うのは初めてです。誤って sshd をハングアップさせてしまうのが本当に怖いので、バックアップとして Telnet を用意しています。

文章:

セットアップ 1 システム情報のインストール

システム情報を貼り付けます[図1]

[root@azeroth ~]# cat /etc/redhat-release
CentOS Linux リリース 7.6.1810 (コア)

以下はインストールされている Telnet バージョンのクエリです。インストールされていない場合はパッケージ情報は表示されません。 [図2]

[root@azeroth ~]# rpm -qa|grep telnet
telnet-server-0.17-64.el7.x86_64
telnet-0.17-64.el7.x86_64
[root@azeroth ~]# rpm -qa|grep xinetd
xinetd-2.3.15-13.el7.x86_64

Telnet はリモート ログイン ツールで、Windows のポート テストによく使われます (- .- !)。Xinetd は初めて見ました。百科事典によると、ネットワークのニーズを監視するデーモンだそうです (telnet 以外にこれを使用するネットワーク サービスがあるのでしょうか? 教えてください)。telnet という設定ファイルがあり、後でそこに書き込むことになります。

インストール

間違いなくおいしい!すごい! (ネットワークがない?ISO ドライブと CD-ROM ドライブの少なくとも 1 つが必要です。手動で CentOS-Media.repo ソースをマウントして作成してください) [図 3]

[root@azeroth ~]# yum install telnet telnet-server xinetd -y
読み込まれたプラグイン: fastestmirror
キャッシュされたホストファイルからミラー速度をロードする
 * c7メディア:
......

実行後、[図2]で結果を確認できます。

セットアップ 2 Telnet プロセス構成

設定(ここがポイントです)

インストール後、/etc/xinetd.d/ ディレクトリに多くの設定ファイルが生成されます。 ls を使用して、telnet という名前の設定ファイルがあるかどうかを確認します。 2 つのデバイスを試しました。 1 つはインストール後に telnet のデフォルト設定がありますが、もう 1 つはそうではありません。 具体的な理由は不明で、まだ判明していません。 ただし、重要ではありません。 xinetd 百科事典を参照して作成するか、コピーすることができます。 [図4]

[root@azeroth ~]# ll /etc/xinetd.d/telnet
-rw-r--r--。1 ルート ルート 342 10月21日 21:21 /etc/xinetd.d/telnet
[root@azeroth ~]# cat /etc/xinetd.d/telnet
# デフォルト: オン
# # 説明: TelnetサーバーはTelnetセッションを提供します。\
# # 認証用の暗号化されていないユーザー名/パスワードのペア。
# サービス telnet
# {
# 無効 = はい
# フラグ = 再利用
# socket_type = ストリーム
#待つ = いいえ
# ユーザー = ルート
# サーバー = /usr/sbin/in.telnetd
# ログオン失敗 += ユーザーID
# }

設定の説明(誤りがあれば指摘してください):

この設定ファイルが存在する場合は、変更する必要はありません。通常のユーザーが Telnet サーバーに正常にログインできることがテストされています。

説明: デフォルトでは、Telnet サービスが有効になっており、Telnet サーバーは Telnet セッション (意味不明) のサービスを提供します。認証には暗号化されていないユーザー名/パスワードのペアを使用します (パスワードが割り当てられていないユーザーを作成しようとしましたが、それでもログインできませんでした)。

{ }一部

# 無効化 = yes // { } 内のフィールドはデフォルトでは使用されないことを理解しています (この理解は間違っているようです。元のテキスト: 「サービスを無効にするためにデフォルトの {} で使用されます」、誰かが私に何らかのガイダンスを与えてくれることを願っています)

# flags = REUSE // これが何を意味するのか分かりません。誰か「flags = reusable」の説明を手伝ってくれませんか?

# socket_type = stream // ネットワークソケットタイプ

# user = root //サービスを実行するにはrootユーザーを使用します

# server = /usr/sbin/in.telnetd //実行プロセスパス

# log_on_failure += USERID //ログイン失敗ログ

注: #disable = yes このフィールドは yes でも​​ no でもありません。root としてログインできるかどうかを決定する条件ではありません (Baidu で見つけた投稿に惑わされました)

実際、Setup3 についてたくさん話し、多くの実験とテストを行った結果、この設定ファイルは、root を使用して Telnet にログインできるかどうかとは直接関係がないことがわかりました (root を使用してログインできるかどうかの決定は、以下の Setup 6 で説明する別の設定に関連しています)。この設定ファイルは、Telnet サービス プロセスに関係しています。そこで疑問なのは、この設定ファイルが存在することに意味があるかどうかです。もちろん、ネットワーク プロセスを監視および保護するために Xinet が使用されます。Telnet は Xinetd によって監視および保護されるオブジェクトであり、監視の意味に似ていますが、監視よりも強力な機能があります。上記の構成は、監視方法と監視に使用する権限に使用されます。

セットアップ3を開始できます

上記のインストールとXinetdの設定チェックが完了したら、自己起動および実行サービスを追加します[図5 図6]

[root@azeroth ~]# systemctl xinetd.service を有効にする
[root@azeroth ~]# systemctl xinetd.service を起動します
[root@azeroth ~]# systemctl ステータス xinetd.service
● xinetd.service - Xinetd は Inetd の強力な代替品です
ロード済み: ロード済み (/usr/lib/systemd/system/xinetd.service; 有効; ベンダープリセット: 有効)
アクティブ: 2019-10-22 火曜 22:07:22 CST からアクティブ (実行中)、4 分 29 秒前
メイン PID: 6883 (xinetd)
Cグループ: /system.slice/xinetd.service
└─6883 /usr/sbin/xinetd -stayalive -pidfile /var/run/xinetd.pid

10月22日 22:07:22 azeroth systemd[1]: Xinetdを起動しました。これはInetdの強力な代替品です。
10月22日 22:07:22 azeroth xinetd[6883]: 破棄を削除
10月22日 22:07:22 azeroth xinetd[6883]: 破棄を削除
10月22日 22:07:22 azeroth xinetd[6883]: エコーを削除
10月22日 22:07:22 azeroth xinetd[6883]: エコーを削除
10月22日 22:07:22 azeroth xinetd[6883]: tcpmuxを削除しています
10月22日 22:07:22 azeroth xinetd[6883]: 時間を削除
10月22日 22:07:22 azeroth xinetd[6883]: 時間を削除
10月22日 22:07:22 azeroth xinetd[6883]: xinetdバージョン2.3.15が、libwrap loadavgのラベル付きネットワークオプションがコンパイルされた状態で起動しました。
10月22日 22:07:22 azeroth xinetd[6883]: 作業開始: 利用可能なサービス0件

[root@azeroth ~]# systemctl telnet.socket を有効にする
[root@azeroth ~]# systemctl start telnet.socket
[root@azeroth ~]# systemctl ステータス telnet.socket
● telnet.socket – Telnet サーバーアクティベーションソケット
ロード済み: ロード済み (/usr/lib/systemd/system/telnet.socket; 有効; ベンダープリセット: 無効)
アクティブ: 2019-10-22 火曜 22:07:06 CST からアクティブ (リスニング)、6 分前
ドキュメント: man:telnetd(8)
聞く: [::]:23 (ストリーム)
承認済み: 1; 接続済み: 0

10月22日 22:07:06 azeroth systemd[1]: Telnetサーバーアクティベーションソケットをリッスンしています。

セットアップ 4 ファイアウォールのリリース

最も感じやすいことは、最も忘れやすいことでもあります。長い間いじっていますが、まだログインできません。ファイアウォールが私をログインさせ忘れたのかもしれません。 Selinux がまだ無効になっていないのはなぜですか? (Telnet の設定に関する多くの投稿では、Selinux を無効にする必要があると書かれていますが、その目的がわかりません) そのような投稿は存在しません。ファイアウォールが Selinux の通過を許可している場合、Selinux を無効にする必要がありますか?個人的にテストしたところ、閉じる必要はありません。結局のところ、Selinux セキュリティ コンテキストは Redhat シリーズ システムのセキュリティ保護の焦点です。どのようなアプリケーションが構成されている場合でも、勝手に閉じないことをお勧めします。結局のところ、セキュリティの問題は無視できません。 [図7]

[root@azeroth ~]# ファイアウォール-cmd --add-port=23/tcp --permanent
成功
[root@azeroth ~]# ファイアウォール-cmd --reload
成功

セットアップ5完了

上記の手順を完了すると、Telnet サービスが基本的に確立されます。CMD に移動し、Telnet を使用して接続してみてください。通常のユーザーを使用してください。ルート権限はまだ有効になっていません。動作しない場合は、手順に従って確認するか、再起動してください。 [図8]

[root@azeroth ~]# telnet 192.168.11.130
192.168.11.130 を試行しています...
192.168.11.130 に接続しました。
エスケープ文字は '^]' です。
x86_64 上のカーネル 3.10.0-957.5.1.el7.x86_64
ゼロスログイン: zym
パスワード:
最終ログイン: 10月22日火曜日 20:09:08 ::ffff:192.168.11.1 から
[zym@azeroth ~]$

セットアップ6 ルート権限ログイン設定

(root 権限を有効にすることは推奨されません。通常のユーザーでログインした後、su を使用して root に切り替えることができます。これは便利で安全であり、両方の長所を兼ね備えています。) root 権限で Telnet にログインする必要がある場合は、/etc/securetty を構成し、root が telnet を使用してログインできるようにする pts フィールドを構成ファイルに追加する必要もあります。 [図9 図10]

[root@azeroth ~]# echo 'pts/0' >>/etc/securetty
[root@azeroth ~]# echo 'pts/1' >>/etc/securetty
[root@azeroth ~]# tail -f /etc/securetty
HVC4
HVC5
翻訳
翻訳
ヒビ
ヒビシ1
ヒビシ2
翻訳者
0点/0
ポイント/1
[root@azeroth ~]# systemctl telnet.socketを再起動します

上記は、CentOS7.6 システムでの Telnet サービスの構成の紹介です。ありがたい!

エッセイブログ記事を投稿するのは初めてで、少し緊張しています。ブログ記事を書く理由は 2 つあります。1 つは自分の学習をより確かなものにするため、もう 1 つは、通りすがりの専門家や私のような初心者と議論し、お互いに学び合う機会を得られることを期待するためです。テクノロジーは人類の利益のために共有されるべきものです。孤立して活動したり、お金を稼ぐためのツールとして利用したりするのではなく、これは情報共有の本来の目的ではないはずです。第三に、インターネットで目にする投稿の多くは不完全であったり、落とし穴があったりします。私のような初心者で必要な人がいれば、検索すれば回り道が減り、時間を節約できます。

要約する

上記は、CentOS 7.6 Telnet サービスを設定するプロセスです (Openssh アップグレード バトルの最初のタスク: バックアップ トランスポート ラインの設定)。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • Centos7はdockerを使ってgitlabサーバーを構築する
  • CentOS7でGerritコードレビューサービスを構築する方法
  • CentOS 上で PHP サーバー環境を設定するための簡潔なチュートリアル
  • CentOs 7.3 で RabbitMQ 3.6 シングルマシン マルチインスタンス サービスを構築する手順と使用方法
  • CentOS 7.2 で VNC リモート デスクトップ サービスを構築する方法
  • Centos7 sftp サービス プロセスの構築
  • CentOS7でtelnetサービスをインストールする方法

<<:  React 高階コンポーネント HOC 使用方法の概要

>>:  テキストの円形スクロールアニメーションを実装するミニプログラム

推薦する

Vue実装のカウンターケース

この記事では、カウンター表示を実現するためのVueの具体的なコードを例として紹介します。具体的な内容...

Docker で MySQL 接続と設定ファイルの最大数を変更する

1. MySQLイメージを見つける ドッカーps 2. ミラーmysqlイメージを入力する dock...

シンプルなドラッグ効果を実現するJavaScript

この記事では、ドラッグ効果を実現するためのJavaScriptの具体的なコードを参考までに紹介します...

MySQLは間違ったパスワードを入力する試行回数を制御します

1. 本番環境でMySQLのデッドロックを監視し、デッドロックの可能性を減らす方法まず、デッドロック...

IE6/7 で絶対配置された要素が不可解に消えたりブロックされたりする問題を解決する方法

1. 絶対配置レイヤーの隣接フローティング レイヤーの幅が親レイヤーの幅と等しくなく、フロートがクリ...

MySQL テーブルがロックされているかどうかを照会する方法

具体的な方法: (推奨チュートリアル:MySQLデータベース学習チュートリアル)テーブルロックの状態...

Nginx 設定ファイルの詳細な説明と最適化の提案ガイド

目次1. 概要2. nginx.conf 1) 設定ファイルの場所2) ワーカープロセス3) イベン...

Vue+elementを使用してページ上部のタグを実装する方法の詳細な説明

目次1. ページレンダリング2. タグを切り替える3. タグを削除するこのようなタグはどのように記述...

React の調整アルゴリズム Diffing アルゴリズム戦略の詳細な説明

目次アルゴリズム戦略単一ノードの差分配列ノードの差分キー値の使用要件アルゴリズム戦略React の調...

最もよく使われるHTMLエスケープシーケンス

HTML では、<、>、& などは特別な意味を持ち (<、> はリン...

JavaScriptを使用してSMS認証コード間隔を送信する機能を実装する

多くのアプリやウェブサイトでは、ログインやアカウント登録の際にSMS認証コード1を送信する場所があり...

mysql ビュー関数の分析と使用例

この記事では、例を使用して MySQL ビューの機能と使用方法を説明します。ご参考までに、詳細は以下...

React Router V6 のアップデート

目次ReactRouterV6 の変更1. <Switch> が <Routes&...

派手なカルーセル効果を実現するJavaScript

この記事では、JavaScriptで派手なカルーセル効果を実装する2つの方法を紹介します。具体的な内...