自動的にパスワードのDNSのログインファイアウォールの設定をオフにするSSHのシェルスクリプトはselinxを閉じました

#!/ binに/ bashの
#20190606 
#qq450433231の
#list.txtにファイル形式:IPパスワード新規パスワード

createshは、(){ 
エコー"スクリプトauto.sh作成を開始する" 
CATのauto.sh >> << - EOF 
/ binに/ bashのを!
"実行スクリプトを起動し、"エコー
リリース= \ $(CATは/ etc / -releaseシステム| -R&LTセッド'S /.*([0-9] +)\ .. * / \ 1 /')
DNS = \ $( 172.26.4.193 /etc/resolv.conf|wc -lグレップ)
[\ $のDNSの-eq 1] IF;その後、
          "既に存在するDNSの設定"エコー
他には、
          "ネームサーバ172.26.4.193を"エコーを> /etc/resolv.confの
          エコー" 172.26.4.194ネームサーバ">> /etc/resolv.confの
          エコー" DNSの設定は、「更新された
Fiの
リリースでのケースの\ $ 
	7)
       firewalldを無効systemctl。 サービス
       systemctl停止firewalld.serviceサービス
	   エコーは、「ファイアウォールがオフになっている。」
       ;; 
    6)
       -サービスSTOPはiptablesの
	   のchkconfigのiptablesのOFF 
	   エコー"ファイアウォールオフ" 
	   ;; 
	*)
       エコー"ファイアウォールない閉" 
       ;; 
ESAC 
setenforce 0 &&セッド-i 'S /施行/無効/ G'の/ etc / SELinuxの/ configに  
エコー「のSELinuxがオフになっている」
チャゲは0ルート-d 
エコー「ログイン次回にユーザーがパスワードを変更する必要があります」
エコー「成功スクリプトの実行」を終了0 && 
EOF 
エコー「は、スクリプトauto.sh完全作成」
} 

(createexpを){ 
エコー"自動化されたログインスクリプトssh.exp作成を開始し、" 
EOFの- CATのssh.exp >> << 
#を!/ usr / binに/期待
設定passwdの[LINDEXの\する$ ARGV 0]は
ホストを設定し、[LINDEX \ $ ARGV 1] 
セットシェル[LINDEX \ $ ARGV 2] 
newpasswd設定[LINDEX \ $ ARGV 3]
スポーンSCP $シェルのroot @ \ $ホスト:$シェル 
{期待
    "はい/いいえ" {送る"はい\ R"; exp_continue} 
    "パスワード:" {} "\ $のpasswd \ rの"送信
} 
のスポーンsshのルート@ \ $のホスト
{期待する
    "はい/いいえ" {送る"はい\ R"; exp_continue} 
    "パスワード:" { "\ $のpasswd \ rの"送信} 
} 
期待する"] *" 
送信"エコー'\ $ newpasswd' | passwdの--stdinルート|| 1番出口\ rの" 
期待"] *" 
"送りますSH $シェル\ rを" 
期待"] *" 
送信"\ [$シェル\] && RM -f $シェル\ rを-f" 
期待"] *" 
終了\ rを送る"" 
EOF期待
EOF 
エコー"を创建脚本のssh。

		その後のping -c 1 $ IP>を/ dev / null 2>&1 
			であれば[$?-eq 0];その後
 
				エコー」	ログインホストの$ IP「 
				エコー」$のIPホストは、「ネットワーク接続を確認してくださいアクセスすることはできません
			1番出口
			Fiの  
		エコー「$ IPが自動的にログイン$を0.log auto.shスクリプトを実行するホストにコピーされた」| TEEは/root/$0.log -a	 
	他に
		「見つからないauto.shスクリプトファイルを」エコー  
		1番出口
	Fiの
    は/ usr / binに/期待/ルート/ PW ssh.exp $ $ $ IPシェルの$ newpw 
$ ipfile <DONE 

エコー"ローカルスクリプトファイルを削除" 
[-f /root/ssh.exp] && RM -f /root/ssh.exp 
[-f /ルート/ auto.sh] && RM -f /root/auto.sh 

エコー"$(DATE +" Yの%/%のM /%のD%のH:%M.%S ")$ 0端スクリプト実行" |ティー-a /ルート/$0.log 
エコー「ショーログ」
LS /root/*.log  
出口0


おすすめ

転載: blog.51cto.com/junhai/2406155
おすすめ