運営者プロフィール

Windows/Linuxでパスワードをコマンドワンライナーで設定する方法

ども。あいしんくいっと(@ithinkitnet)です。

プライベートでWindowsやLinuxを使っていると、定期的にOSユーザのパスワードを変更する運用をすることがあります。
そんなとき、例えばLinuxであれば、

# passwd <ユーザ名>

で変更すると思いますが、これだとキーボード入力でパスワードを応答する必要があって面倒だったりします。


root@ithinkit:~# passwd test
新しいUNIXパスワードを入力してください:<任意のパスワード入力>
新しいUNIX パスワードを再入力してください:<任意のパスワード再入力>
passwd: パスワードは正しく更新されました

また、WindowsであればGUIでポチポチと変更する必要があるのでとっても面倒です。
1台、2台ならともかく、何十台ものサーバのパスワードを変更して回るのは大変な労力を要します。

そんな時に役立つのが、今回の「パスワードをワンライナーで設定する方法」になります。
コレをスクリプトに仕込んだりすれば、多少なりとも楽になるかも知れません。

ただし、パスワードを平文で設定することになるので、正直セキュリティ上はヤバいです。
なので、あくまでスクリプト内での使用にとどめることをオススメします。

パスワードをワンライナーで設定する方法(CentOS編)

使いどころは限定されるのですが、「定期的にパスワード変更を行う場合のスクリプトで使う」といった時は役立つと思います。
使い方はカンタン♪

# echo <任意のパスワード> | passwd –stdin <ユーザ名>

これで指定したユーザのパスワードが変更されます。

コマンド実行例)


[root@cent7 ~]# echo hogehoge | passwd --stdin root
ユーザー root のパスワードを変更。
passwd: すべての認証トークンが正しく更新できました。
[root@cent7 ~]# ssh localhost
root@localhost's password:
Last login: Sun Nov 15 07:54:50 2015 from localhost
[root@cent7 ~]# ログアウト
Connection to localhost closed.
[root@cent7 ~]#

このようにrootであってもパスワードが変更出来てしまいます。
まぁ、コマンド単体で使うのはセキュリティ上で問題が大ありなので止めたほうが良いかと思います(笑)
と言うのも、コマンド履歴に ”設定したパスワード文字列がバッチリ残ってしまう” ので、本当に危険だということは認識しておいてください。


[root@cent7 ~]# history
1 yum install open-vm-tools -y
2 shutdown -r now
3 echo hogehoge | passwd --stdin root
4 ssh localhost
5 history
6 echo hogehoge | passwd --stdin root
7 ssh localhost
8 history
[root@cent7 ~]#

パスワードをワンライナーで設定する方法(Ubuntu編)

我が家にはラズパイ様もいるのでコチラでも試してみました。ちなみにUbuntuもこのやり方でイケると思います。
ちなみにCentOSのコマンドとは若干異なります。

# echo <ユーザ名>:<任意のパスワード> | /usr/sbin/chpasswd

コマンド実行例)


root@ithinkit:~# echo test:hogehoge | /usr/sbin/chpasswd
root@ithinkit:~# ssh test@localhost
test@localhost's password:
Linux ithinkit 4.0.9-v7+ #807 SMP PREEMPT Fri Jul 24 15:21:02 BST 2015 armv7l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Sun Nov 15 08:18:36 2015 from localhost
test@ithinkit:~$ ログアウト
Connection to localhost closed.
root@ithinkit:~#

パスワードをワンライナーで設定する方法(Windows)

net user <ユーザ名> <任意のパスワード>

コマンド実行例)


C:WINDOWSsystem32>net user hoge hogehoge
コマンドは正常に終了しました。

C:WINDOWSsystem32>

いかがだったでしょうか。
セキュリティ上はよろしくないのですが、定期的にパスワードを変更する際のスクリプトに使うと良い感じかも知れませんね。

以上、あいしんくいっとでした。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)