root以外のユーザーとしてログとデータベースをダウンロードする

root以外のユーザーとしてログとデータベースをダウンロードする

私は永遠にLinuxのWebホスティングについて愚かです。端末の幅/高さ/長さの問題を処理するエラーを見つけるのではなく、Ubuntu 20.04ローカルコンピュータに複数のbashエイリアスコマンドを設定してscpダウンロードするコマンドを実行します。私のgedit GUIにローカルにログインして開きます。

質問:
これで root 以外のユーザーを使用し、root SSH 機能を無効にするベスト プラクティスを学んだので、root ではないユーザーとしてサーバーに SSH を接続するため、機能しないいくつかの bash エイリアス コマンドがあります.ルートになってsudo su何でもできます(安全とセキュリティのために妥協する価値があります)。

質問:
root以外のユーザーが実行できるように、次のコマンドを変更する方法を知っている人はいますか?

alias pae="scp root@prodserver:/var/log/apache2/error.log ~/Downloads/logs/prod/error-access-logs/prod-apache-error.log && gedit ~/Downloads/logs/prod/error-access-logs/prod-apache-error.log"


alias dbdl="rsnyc -aHAXSv root@prodserver:/dbbackdir ~/Downloads/dbbackups"

上記の各コマンドについて...

root@prodserverbashエイリアスが以前のエンドユーザーの利便性を維持できるように、それらを交換してコマンドを渡してから、自動的にadminuser@prodserver管理sudo su者のパスワードを渡してrootにする必要があります。

私はその点で私の体給よりはるかに優れていました。

どのようなヒントがありますか?

修正する:

ファイルにルートではなくアクセスを追加する方法を示す便利なチュートリアルが見つかりました。残念ながら、書かれた指示に従うことは効果がありません。

root 以外のユーザー apache2 ログへのアクセス許可
https://gist.github.com/angela-d/8a2416034ea7ed89ecde37147e8711ba

注:このチュートリアルでは、Debian 10.5で動作するかどうかを明示しておらず、機能しない理由について説明します。

私は指示通りに走った。setfacl -m g:adminuser:rx /var/log/apache2/*

ただし、getfacl /var/log/apache2/出力を実行すると確かにこれは、adminuserにrxアクセス権があり、/var/log/apache2/*rootユーザーのみがアクセスできることを示しています。

また、グループからユーザーに変更しようとしましたが(「g」ではなく「u」を使用)、setfacl -m g:adminuser:rx /var/log/apache2/* まだ運がありませんでした。

ええと..

ベストアンサー1

ログファイルを読み取るには、サーバーのルートである必要があるようです。たぶん、次のようなものがあります。

alias pae="ssh prodserver sudo cat /var/log/apache2/error.log" > ~/Downloads/logs/prod/error-access-logs/prod-apache-error.log && gedit ~/Downloads/logs/prod/error-access-logs/prod-apache-error.log"

より多くのファイルが必要な場合は、1つtarの転送可能ファイルに分割する方法を使用しますが、変更のみを転送する方法(これを行うなどrsync)については、一般ユーザーを配置できるグループがあることを確認することをお勧めします。その人がファイルを読むことができるように。

おすすめ記事