我試圖在服務器的部署中儘可能自動化,總體目標是以用戶身份登錄,上傳bashscript並讓它配置我的服務器如何配置。Bash腳本禁用root登錄
要開始我試圖禁用root登錄,我知道我需要編輯/etc/ssh/sshd_config
到PermitRootLogin no
我想知道是否有辦法通過一個bash腳本來做到這一點?
我試圖在服務器的部署中儘可能自動化,總體目標是以用戶身份登錄,上傳bashscript並讓它配置我的服務器如何配置。Bash腳本禁用root登錄
要開始我試圖禁用root登錄,我知道我需要編輯/etc/ssh/sshd_config
到PermitRootLogin no
我想知道是否有辦法通過一個bash腳本來做到這一點?
如果你想只追加文本到的sshd_config文件,你可以使用printf
這樣的:
printf '\n%s\n' 'PermitRootLogin no' >>/etc/ssh/sshd_config
,或者如果你想改變已經有一個值集的文件,但你想要設置爲否,可以使用sed
這樣的:
sed -i '/^PermitRootLogin[ \t]\+\w\+$/{ s//PermitRootLogin no/g; }' /etc/ssh/sshd_config
如果您正在部署服務器,則應該使用此工具。我提醒你「Ansible」。它會更容易(也更「優雅」)。
在這裏,你有一個關於如何與Ansible http://ryaneschinger.com/blog/securing-a-server-with-ansible/
我希望我的回答可以幫助你禁用root登錄教程!