Docker Security
AWS рд╣реИрдХрд┐рдВрдЧ рд╕реАрдЦреЗрдВ рдФрд░ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ:HackTricks рдкреНрд░рд╢рд┐рдХреНрд╖рдг AWS рд░реЗрдб рдЯреАрдо рдПрдХреНрд╕рдкрд░реНрдЯ (ARTE)
GCP рд╣реИрдХрд┐рдВрдЧ рд╕реАрдЦреЗрдВ рдФрд░ рдЕрднреНрдпрд╛рд╕ рдХрд░реЗрдВ:
HackTricks рдкреНрд░рд╢рд┐рдХреНрд╖рдг GCP рд░реЗрдб рдЯреАрдо рдПрдХреНрд╕рдкрд░реНрдЯ (GRTE)
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2F2214728956-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FPfJnr5ak4G3jo9UcZF4y%252Fuploads%252Fgit-blob-78abb7891633b1e8147b4e743e4f00af375d3cd6%252Fimage%2520%2848%29.png%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=258c8c9c&sv=1)
Trickest рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдФрд░ рдЖрд╕рд╛рдиреА рд╕реЗ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдмрдирд╛рдПрдВ рдФрд░ рд╕рдХреНрд░рд┐рдп рдХрд░реЗрдВ рдЬреЛ рджреБрдирд┐рдпрд╛ рдХреЗ рд╕рдмрд╕реЗ рдЙрдиреНрдирдд рд╕рдореБрджрд╛рдп рдЙрдкрдХрд░рдгреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдВрдЪрд╛рд▓рд┐рдд рд╣реИред рдЖрдЬ рд╣реА рдкрд╣реБрдВрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ:
рдореВрд▓ рдбреЙрдХрд░ рдЗрдВрдЬрди рд╕реБрд░рдХреНрд╖рд╛
рдбреЙрдХрд░ рдЗрдВрдЬрди рдиреЗ рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓ рдХреЗ рдиреЗрдорд╕реНрдкреЗрд╕ рдФрд░ рд╕реАрдЧреНрд░реБрдкреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдореВрд▓ рд╕реБрд░рдХреНрд╖рд╛ рд╕реНрддрд░ рдкреНрд░рджрд╛рди рдХрд┐рдпрд╛ рд╣реИред рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реБрд░рдХреНрд╖рд╛ рдХреНрд╖рдорддрд╛рдПрдБ рдЫреЛрдбрд╝рдиреЗ, рд╕реЗрдХреЙрдореНрдк, рдФрд░ SELinux/AppArmor рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рджрд╛рди рдХреА рдЬрд╛рддреА рд╣реИ, рдЬреЛ рдХрдВрдЯреЗрдирд░ рд╡рд┐рднрд╛рдЬрди рдХреЛ рдмрдврд╝рд╛рддрд╛ рд╣реИред рдПрдХ рдСрде рдкреНрд▓рдЧрдЗрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдбреЙрдХрд░ рдЗрдВрдЬрди рддрдХ рд╕реБрд░рдХреНрд╖рд┐рдд рдкрд╣реБрдВрдЪ
рдбреЙрдХрд░ рдЗрдВрдЬрди рдХреЛ рдпрд╛ рддреЛ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдпреВрдирд┐рдХреНрд╕ рд╕реЙрдХреЗрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдпрд╛ HTTP рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рджреВрд░рд╕реНрде рд╕реЗ рдкрд╣реБрдВрдЪрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рджреВрд░рд╕реНрде рдкрд╣реБрдВрдЪ рдХреЗ рд▓рд┐рдП, рдЧреЛрдкрдиреАрдпрддрд╛, рдЕрдЦрдВрдбрддрд╛, рдФрд░ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП HTTPS рдФрд░ TLS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред
рдбреЙрдХрд░ рдЗрдВрдЬрди, рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, unix:///var/run/docker.sock
рдкрд░ рдпреВрдирд┐рдХреНрд╕ рд╕реЙрдХреЗрдЯ рдкрд░ рд╕реБрдирддрд╛ рд╣реИред рдпреВрдмрдВрдЯреВ рд╕рд┐рд╕реНрдЯрдо рдкрд░, рдбреЙрдХрд░ рдХреА рд╕реНрдЯрд╛рд░реНрдЯрдЕрдк рд╡рд┐рдХрд▓реНрдк /etc/default/docker
рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред рдбреЙрдХрд░ API рдФрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЗ рд▓рд┐рдП рджреВрд░рд╕реНрде рдкрд╣реБрдВрдЪ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдЬреЛрдбрд╝рдХрд░ рдбреЙрдХрд░ рдбреЗрдорди рдХреЛ рдПрдХ HTTP рд╕реЙрдХреЗрдЯ рдкрд░ рдЙрдЬрд╛рдЧрд░ рдХрд░реЗрдВ:
рд╣рд╛рд▓рд╛рдВрдХрд┐, HTTP рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ Docker рдбреЗрдорди рдХреЛ рдЕрдиреБрд╕рд╛рд░рд┐рдд рдХрд░рдирд╛ рд╕реБрд░рдХреНрд╖рд╛ рд╕рдВрдмрдВрдзрд┐рдд рдЪрд┐рдВрддрд╛рдУрдВ рдХреЗ рдХрд╛рд░рдг рд╕рд┐рдлрд╛рд░рд┐рд╢ рдирд╣реАрдВ рд╣реИред HTTPS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрдиреЗрдХреНрд╢рди рдХреЛ рд╕реБрд░рдХреНрд╖рд┐рдд рдмрдирд╛рдирд╛ рдЙрддреНрддрдо рд╣реИред рдХрдиреЗрдХреНрд╢рди рдХреЛ рд╕реБрд░рдХреНрд╖рд┐рдд рдмрдирд╛рдиреЗ рдХреЗ рджреЛ рдореБрдЦреНрдп рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИрдВ:
рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рд░реНрд╡рд░ рдХреА рдкрд╣рдЪрд╛рди рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИред
рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд╕рд░реНрд╡рд░ рдПрдХ-рджреВрд╕рд░реЗ рдХреА рдкрд╣рдЪрд╛рди рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВред
рдкреНрд░рдорд╛рдгрдкрддреНрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕рд░реНрд╡рд░ рдХреА рдкрд╣рдЪрд╛рди рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рджреЛрдиреЛрдВ рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рд╡рд┐рд╕реНрддреГрдд рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП, рдЗрд╕ рдЧрд╛рдЗрдб рдХрд╛ рд╕рдВрджрд░реНрдн рджреЗрдВред
рдХрдВрдЯреЗрдирд░ рдЗрдореЗрдЬ рдХреА рд╕реБрд░рдХреНрд╖рд╛
рдХрдВрдЯреЗрдирд░ рдЗрдореЗрдЬ рдХреЛ рдирд┐рдЬреА рдпрд╛ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред Docker рдХрдВрдЯреЗрдирд░ рдЗрдореЗрдЬреЛрдВ рдХреЗ рд▓рд┐рдП рдХрдИ рд╕рдВрдЧреНрд░рд╣рдг рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ:
Docker Hub: Docker рд╕реЗ рдПрдХ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░рдЬрд┐рд╕реНрдЯреНрд░реА рд╕реЗрд╡рд╛ред
Docker Registry: рдПрдХ рдУрдкрди-рд╕реЛрд░реНрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЕрдкрдиреА рд░рдЬрд┐рд╕реНрдЯреНрд░реА рд╣реЛрд╕реНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред
Docker Trusted Registry: Docker рдХрд╛ рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рд░рдЬрд┐рд╕реНрдЯреНрд░реА рдкреНрд░рд╕реНрддрд╛рд╡, рдЬрд┐рд╕рдореЗрдВ рднреВрдорд┐рдХрд╛-рдЖрдзрд╛рд░рд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдФрд░ LDAP рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рдорд╛рд╡реЗрд╢ рд╣реИред
рдЗрдореЗрдЬ рд╕реНрдХреИрдирд┐рдВрдЧ
рдХрдВрдЯреЗрдирд░ рдореЗрдВ рд╕реБрд░рдХреНрд╖рд╛ рджреЛрд╖ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рддреЛ рдЖрдзрд╛рд░ рдЗрдореЗрдЬ рдХреЗ рдХрд╛рд░рдг рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдпрд╛ рдЖрдзрд╛рд░ рдЗрдореЗрдЬ рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХреЗ рдХрд╛рд░рдг рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред Docker рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬрд┐рд╕реЗ рдиреМрдЯрд┐рд▓рд╕ рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬреЛ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреА рд╕реБрд░рдХреНрд╖рд╛ рд╕реНрдХреИрди рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕реБрд░рдХреНрд╖рд╛ рдЦреЛрдЬреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рддрд╛ рд╣реИред рдиреМрдЯрд┐рд▓рд╕ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдХрдВрдЯреЗрдирд░ рдЗрдореЗрдЬ рд▓реЗрдпрд░ рдХреЛ рд╕реБрд░рдХреНрд╖рд╛ рджреЛрд╖ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЗ рд╕рд╛рде рддреБрд▓рдирд╛ рдХрд░рдХреЗ рд╕реБрд░рдХреНрд╖рд╛ рдЦреЛрдЬреЛрдВ рдХреЛ рдкрд╣рдЪрд╛рдиреЗрдВред
рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдпрд╣ рдкрдврд╝реЗрдВ.
docker scan
docker scan
рдХрдорд╛рдВрдб рдЖрдкрдХреЛ рд╡рд┐рджрд┐рдд Docker рдЗрдореЗрдЬреЛрдВ рдХреЛ рд╕реНрдХреИрди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдпрд╛ рдЖрдИрдбреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, hello-world рдЗрдореЗрдЬ рдХреЛ рд╕реНрдХреИрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдВ:
Docker рдЫрд╡рд┐ рд╕рд╛рдЗрдирд┐рдВрдЧ
Docker рдЫрд╡рд┐ рд╕рд╛рдЗрдирд┐рдВрдЧ рдЫрд╡рд┐рдпреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╕реБрд░рдХреНрд╖рд╛ рдФрд░ рдЕрдЦрдВрдбрддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддреА рд╣реИред рдпрд╣рд╛рдБ рдПрдХ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рд╣реИ:
Docker рд╕рд╛рдордЧреНрд░реА рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рдиреЛрдЯрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ The Update Framework (TUF) рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ, рдЫрд╡рд┐ рд╕рд╛рдЗрдирд┐рдВрдЧ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, Notary рдФрд░ TUF рджреЗрдЦреЗрдВред
Docker рд╕рд╛рдордЧреНрд░реА рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП,
export DOCKER_CONTENT_TRUST=1
рд╕реЗрдЯ рдХрд░реЗрдВред рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ Docker рд╕рдВрд╕реНрдХрд░рдг 1.10 рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдмрдВрдж рд╣реИредрдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде, рдХреЗрд╡рд▓ рд╕рд╛рдЗрди рдХреА рдЧрдИ рдЫрд╡рд┐рдпрд╛рдБ рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИрдВред рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЫрд╡рд┐ рдкреБрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореВрд▓ рдФрд░ рдЯреИрдЧрд┐рдВрдЧ рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдкрд╛рд╕рдлрд╝реНрд░реЗрдЬ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕рдХреЗ рд╕рд╛рде Docker рднреА рдЙрдиреНрдирдд рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП Yubikey рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред рдЕрдзрд┐рдХ рд╡рд┐рд╡рд░рдг рдпрд╣рд╛рдБ рдорд┐рд▓ рд╕рдХрддреЗ рд╣реИрдВред
рд╕рд╛рдордЧреНрд░реА рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рдЕрд╕рд╛рдЗрди рдХреА рдЧрдИ рдЫрд╡рд┐ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ "рдиреЛ рдЯреНрд░рд╕реНрдЯ рдбреЗрдЯрд╛ рдлреЙрд░ рд▓реЗрдЯреЗрд╕реНрдЯ" рддреНрд░реБрдЯрд┐ рджреЗрддрд╛ рд╣реИред
рдкрд╣рд▓реЗ рдХреЗ рдмрд╛рдж рдЫрд╡рд┐ рдкреБрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, Docker рдЫрд╡рд┐ рдХреЛ рд╕рд╛рдЗрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреБрдВрдЬреА рдХрд╛ рдкрд╛рд╕рдлрд╝реНрд░реЗрдЬ рдкреВрдЫрддрд╛ рд╣реИред
рдЕрдкрдиреА рдирд┐рдЬреА рдХреБрдВрдЬрд┐рдпреЛрдВ рдХрд╛ рдмреИрдХрдЕрдк рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ:
Docker рд╣реЛрд╕реНрдЯ рдмрджрд▓рддреЗ рд╕рдордп, рд╕рдВрдЪрдп рдФрд░ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреБрдВрдЬреА рдХреЛ рд╕рдВрдЪрд╛рд▓рди рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИред
![](https://book.hacktricks.xyz/~gitbook/image?url=https%3A%2F%2F2214728956-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FPfJnr5ak4G3jo9UcZF4y%252Fuploads%252Fgit-blob-78abb7891633b1e8147b4e743e4f00af375d3cd6%252Fimage%2520%2848%29.png%3Falt%3Dmedia&width=768&dpr=4&quality=100&sign=258c8c9c&sv=1)
Trickest рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдФрд░ рдЖрд╕рд╛рдиреА рд╕реЗ рд╡рд┐рд╢реНрд╡ рдХреЗ рд╕рдмрд╕реЗ рдЙрдиреНрдирдд рд╕рдореБрджрд╛рдп рдЙрдкрдХрд░рдгреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдВрдЪрд╛рд▓рд┐рдд рдХрд╛рд░реНрдпрдкреНрд░рд╡рд╛рд╣ рдирд┐рд░реНрдорд┐рдд рдХрд░реЗрдВред рдЖрдЬ рд╣реА рдкрд╣реБрдВрдЪреЗрдВ:
рдХрдВрдЯреЗрдирд░ рд╕реБрд░рдХреНрд╖рд╛ рд╕реБрд╡рд┐рдзрд╛рдПрдВ
рдиреЗрдорд╕реНрдкреЗрд╕
рдиреЗрдорд╕реНрдкреЗрд╕ рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓ рдХреА рдПрдХ рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИ рдЬреЛ рдХрд░реНрдиреЗрд▓ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рддреА рд╣реИ рддрд╛рдХрд┐ рдПрдХ рд╕реЗрдЯ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдБ рдПрдХ рд╕реЗрдЯ рдХреЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рджреЗрдЦреЗрдВ рдЬрдмрдХрд┐ рджреВрд╕рд░реЗ рд╕реЗрдЯ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдБ рдПрдХ рд╡рд┐рднрд┐рдиреНрди рд╕реЗрдЯ рдХреЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рджреЗрдЦреЗрдВред рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдПрдХ рд╕реЗрдЯ рдХреЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдФрд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рдиреЗрдорд╕реНрдкреЗрд╕ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рд╡реЗ рдиреЗрдорд╕реНрдкреЗрд╕ рд╡рд┐рднрд┐рдиреНрди рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рддреЗ рд╣реИрдВред рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХрдИ рд╕реНрдерд╛рдиреЛрдВ рдкрд░ рдореМрдЬреВрдж рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред
рдбреЙрдХрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓ рдиреЗрдорд╕реНрдкреЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рддрд╛рдХрд┐ рдХрдВрдЯреЗрдирд░ рд╡рд┐рд▓рдпрди рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХреЗ:
pid рдиреЗрдорд╕реНрдкреЗрд╕
рдорд╛рдЙрдВрдЯ рдиреЗрдорд╕реНрдкреЗрд╕
рдиреЗрдЯрд╡рд░реНрдХ рдиреЗрдорд╕реНрдкреЗрд╕
ipc рдиреЗрдорд╕реНрдкреЗрд╕
UTS рдиреЗрдорд╕реНрдкреЗрд╕
рдиреЗрдорд╕реНрдкреЗрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреГрд╖реНрда рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВ:
Namespacescgroups
рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓ рд╕реБрд╡рд┐рдзрд╛ cgroups рдкреНрд░рдХреНрд░рд┐рдпрд╛рдУрдВ рдХреЗ рдПрдХ рд╕реЗрдЯ рдХреЗ рдмреАрдЪ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдЬреИрд╕реЗ cpu, рдореЗрдореЛрд░реА, рдЖрдИрдУ, рдиреЗрдЯрд╡рд░реНрдХ рдмреИрдВрдбрд╡рд┐рдбреНрде рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИред рдбреЙрдХрд░ cgroup рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рджреЗрддрд╛ рд╣реИ рдЬрд┐рд╕рд╕реЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХрдВрдЯреЗрдирд░ рдХреЗ рд▓рд┐рдП рд╕рдВрд╕рд╛рдзрди рдирд┐рдпрдВрддреНрд░рдг рд╕рдВрднрд╡ рд╣реЛред рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдПрдХ рдХрдВрдЯреЗрдирд░ рд╣реИ рдЬрд┐рд╕реЗ рдпреВрдЬрд╝рд░ рд╕реНрдкреЗрд╕ рдореЗрдореЛрд░реА рдХреЛ 500m рддрдХ рд╕реАрдорд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдХрд░реНрдиреЗрд▓ рдореЗрдореЛрд░реА рдХреЛ 50m рддрдХ рд╕реАрдорд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, cpu рд╢реЗрдпрд░ рдХреЛ 512, blkioweight рдХреЛ 400 рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред CPU рд╢реЗрдпрд░ рдПрдХ рдЕрдиреБрдкрд╛рдд рд╣реИ рдЬреЛ рдХрдВрдЯреЗрдирд░ рдХрд╛ CPU рдЙрдкрдпреЛрдЧ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди 1024 рд╣реИ рдФрд░ 0 рдФрд░ 1024 рдХреЗ рдмреАрдЪ рд░реЗрдВрдЬ рд╣реИред рдпрджрд┐ рддреАрди рдХрдВрдЯреЗрдирд░реНрд╕ рдХрд╛ CPU рд╢реЗрдпрд░ 1024 рд╣реИ, рддреЛ рд╣рд░ рдХрдВрдЯреЗрдирд░ CPU рд╕рдВрд╕рд╛рдзрди рд╕рдВрдШрд░реНрд╖ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ 33% рддрдХ рд▓реЗ рд╕рдХрддрд╛ рд╣реИред blkio-weight рдПрдХ рдЕрдиреБрдкрд╛рдд рд╣реИ рдЬреЛ рдХрдВрдЯреЗрдирд░ рдХрд╛ IO рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдорд╛рди 500 рд╣реИ рдФрд░ 10 рдФрд░ 1000 рдХреЗ рдмреАрдЪ рд░реЗрдВрдЬ рд╣реИред
рдХрд┐рд╕реА рдХрдВрдЯреЗрдирд░ рдХрд╛ cgroup рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдк рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
For more information check:
CGroupsрдпреЛрдЧреНрдпрддрд╛рдПрдБ
рдпреЛрдЧреНрдпрддрд╛рдПрдБ рдореВрд▓ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рдЬреЛ рдпреЛрдЧреНрдпрддрд╛рдПрдБ рдЕрдиреБрдордд рд╣реЛ рд╕рдХрддреА рд╣реИрдВ, рдЙрди рдкрд░ рдЕрдзрд┐рдХ рдирд┐рдпрдВрддреНрд░рдг рдкреНрд░рджрд╛рди рдХрд░рддреА рд╣реИрдВред Docker рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓ рдпреЛрдЧреНрдпрддрд╛ рд╕реБрд╡рд┐рдзрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ рдХрд┐рдП рдЬрд╛ рд╕рдХрдиреЗ рд╡рд╛рд▓реЗ рдСрдкрд░реЗрд╢рдиреЛрдВ рдХреЛ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЪрд╛рд╣реЗ рд╡рд╣ рдХрд┐рд╕реА рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣реЛред
рдЬрдм рдПрдХ рдбреЙрдХрд░ рдХрдВрдЯреЗрдирд░ рдЪрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЙрд╕реЗ рдЫреЛрдбрд╝ рджреЗрддреА рд╣реИ рдЬреЛ рд╕рдВрдХреНрд╖реЗрдкрдг рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдпреЛрдЧ рдХрд░ рд╕рдХрддреА рдереА рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдпреЛрдЧреНрдпрддрд╛рдПрдБред рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд░рдиреЗ рдФрд░ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдХреНрд╖рдо рди рд╣реЛ:
Linux CapabilitiesрдбреЙрдХрд░ рдореЗрдВ Seccomp
рдпрд╣ рдПрдХ рд╕реБрд░рдХреНрд╖рд╛ рд╕реБрд╡рд┐рдзрд╛ рд╣реИ рдЬреЛ рдбреЙрдХрд░ рдХреЛ рдпрд╣ рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ рдХрд┐ рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛ рд╕рдХрдиреЗ рд╡рд╛рд▓реЗ рд╕рд┐рд╕рдХреЙрд▓реНрд╕ рдХреЛ:
SeccompрдбреЙрдХрд░ рдореЗрдВ AppArmor
AppArmor рдПрдХ рдХрд░реНрдиреЗрд▓ рдПрдиреНрд╣рд╛рдВрд╕рдореЗрдВрдЯ рд╣реИ рдЬреЛ рдХрдВрдЯреЗрдирд░реЛрдВ рдХреЛ рд╕реАрдорд┐рдд рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рд╕реАрдорд┐рдд рд╕реЗрдЯ рдореЗрдВ рдкреНрд░рддрд┐-рдкреНрд░реЛрдЧреНрд░рд╛рдо рдкреНрд░реЛрдлрд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рд╕реАрдорд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред:
AppArmorрдбреЙрдХрд░ рдореЗрдВ SELinux
рд▓реЗрдмрд▓рд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо: SELinux рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдФрд░ рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдПрдХ рдЕрджреНрд╡рд┐рддреАрдп рд▓реЗрдмрд▓ рд╕реМрдВрдкрддрд╛ рд╣реИред
рдиреАрддрд┐ рдкреНрд░рд╡рд░реНрддрди: рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд▓реЗрдмрд▓ рдХреНрдпрд╛ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЕрдиреНрдп рд▓реЗрдмрд▓реЛрдВ рдкрд░ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рднреАрддрд░ред
рдХрдВрдЯреЗрдирд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд▓реЗрдмрд▓: рдЬрдм рдХрдВрдЯреЗрдирд░ рдЗрдВрдЬрди рдХрдВрдЯреЗрдирд░ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдБ рдкреНрд░рд╛рд░рдВрдн рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЙрдиреНрд╣реЗрдВ рд╕рд╛рдорд╛рдиреНрдпрдд: рдПрдХ рд╕реАрдорд┐рдд SELinux рд▓реЗрдмрд▓ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╕рд╛рдорд╛рдиреНрдпрдд:
container_t
редрдХрдВрдЯреЗрдирд░ рдХреЗ рднреАрддрд░ рдлрд╝рд╛рдЗрд▓ рд▓реЗрдмрд▓рд┐рдВрдЧ: рдХрдВрдЯреЗрдирд░ рдХреЗ рднреАрддрд░ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рд╛рдорд╛рдиреНрдпрдд:
container_file_t
рд▓реЗрдмрд▓ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИредрдиреАрддрд┐ рдирд┐рдпрдо: SELinux рдиреАрддрд┐ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддреА рд╣реИ рдХрд┐
container_t
рд▓реЗрдмрд▓ рд╡рд╛рд▓реА рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдБ рдХреЗрд╡рд▓ рдЙрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рд╡реНрдпрд╡рд╣рд╛рд░ (рдкрдврд╝рдирд╛, рд▓рд┐рдЦрдирд╛, рдХреНрд░рд┐рдпрд╛рдиреНрд╡рдпрди) рдХрд░ рд╕рдХрддреА рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВcontainer_file_t
рд▓реЗрдмрд▓ рд╕реЗ рд▓реЗрдмрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдпрд╣ рддрдВрддреНрд░ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдпрджрд┐ рдХрдВрдЯреЗрдирд░ рдХреЗ рднреАрддрд░ рдХреЛрдИ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреНрд╖рддрд┐рдЧреНрд░рд╕реНрдд рд╣реЛрддреА рд╣реИ, рддреЛ рдЙрд╕реЗ рдХреЗрд╡рд▓ рдЙрд╕реА рд▓реЗрдмрд▓ рд╡рд╛рд▓реЗ рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд╕рд╛рде рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рдиреЗ рдХреА рд╕реАрдорд╛ рд▓рдЧрд╛рдИ рдЬрд╛рддреА рд╣реИ, рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдРрд╕реА рдХреНрд╖рддрд┐ рд╕реЗ рд╣реЛрдиреЗ рд╡рд╛рд▓реА рд╕рдВрднрд╛рд╡рд┐рдд рдиреБрдХрд╕рд╛рди рдХреЛ рд╕реАрдорд┐рдд рдХрд░рддреЗ рд╣реИрдВред
SELinuxAuthZ рдФрд░ AuthN
рдбреЙрдХрд░ рдореЗрдВ, рдПрдХ рдЕрдзрд┐рдХреГрддрд┐ рдкреНрд▓рдЧрдЗрди рд╕реБрд░рдХреНрд╖рд╛ рдореЗрдВ рдорд╣рддреНрд╡рдкреВрд░реНрдг рднреВрдорд┐рдХрд╛ рдирд┐рднрд╛рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдбреЙрдХрд░ рдбреЗрдорди рдХреЛ рдЕрдиреБрдорддрд┐ рджреЗрдиреЗ рдпрд╛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдПред рдпрд╣ рдирд┐рд░реНрдгрдп рджреЛ рдореБрдЦреНрдп рд╕рдВрджрд░реНрднреЛрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдХреЗ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ:
рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╕рдВрджрд░реНрдн: рдЗрд╕рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рд╕реНрддреГрдд рдЬрд╛рдирдХрд╛рд░реА рд╢рд╛рдорд┐рд▓ рд╣реИ, рдЬреИрд╕реЗ рдХрд┐ рд╡реЗ рдХреМрди рд╣реИрдВ рдФрд░ рд╡реЗ рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдХреИрд╕реЗ рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рдХрдорд╛рдВрдб рд╕рдВрджрд░реНрдн: рдпрд╣ рдЕрдиреБрд░реЛрдз рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╕рднреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдбреЗрдЯрд╛ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рддрд╛ рд╣реИред
рдпреЗ рд╕рдВрджрд░реНрдн рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдХреЗрд╡рд▓ рдкреНрд░рдорд╛рдгрд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд╕реЗ рд╡реИрдз рдЕрдиреБрд░реЛрдз рдкреНрд░рд╕рдВрд╕реНрдХреГрдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдбреЙрдХрд░ рдХрд╛рд░реНрд░рд╡рд╛рдИрдпреЛрдВ рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛрддрд╛ рд╣реИред
AuthZ& AuthN - Docker Access Authorization PluginрдХрдВрдЯреЗрдирд░ рд╕реЗ рдбреЙрд╕
рдпрджрд┐ рдЖрдк рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрдВрдЯреЗрдирд░ рдХреЗ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрдиреЗ рд╡рд╛рд▓реЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреА рд╕реАрдорд╛ рдирд╣реАрдВ рд▓рдЧрд╛ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдПрдХ рдХреНрд╖рддрд┐рдЧреНрд░рд╕реНрдд рдХрдВрдЯреЗрдирд░ рдореЗрдЬрд╝рдмрд╛рди рдХреЛ рдбреЙрд╕ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬрд╣рд╛рдБ рд╡рд╣ рдЪрд▓ рд░рд╣рд╛ рд╣реИред
CPU рдбреЙрд╕
рдмреИрдВрдбрд╡рд┐рдбреНрде рдбреАрдУрдПрд╕
рджрд┐рд▓рдЪрд╕реНрдк Docker рдлреНрд▓реИрдЧ
--privileged рдлреНрд▓реИрдЧ
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреГрд╖реНрда рдкрд░ рдЖрдк рдпрд╣ рд╕реАрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ --privileged
рдлреНрд▓реИрдЧ рдХрд╛ рдХреНрдпрд╛ рдорддрд▓рдм рд╣реИ:
--security-opt
no-new-privileges
рдпрджрд┐ рдЖрдк рдПрдХ рдХрдВрдЯреЗрдирд░ рдЪрд▓рд╛ рд░рд╣реЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рдХреЛ рдХрдо рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рд╡рд╛рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╣реБрдВрдЪрдиреЗ рдореЗрдВ рд╕рдлрд▓рддрд╛ рдорд┐рд▓рддреА рд╣реИред рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдЧрд▓рдд рд░реВрдк рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ suid рдмрд╛рдЗрдирд░реА рд╣реИ, рддреЛ рд╣рдорд▓рд╛рд╡рд░ рдЗрд╕рдХрд╛ рджреБрд░реБрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреЛ рдЙрдиреНрдирдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЬрд┐рд╕рд╕реЗ рдЙрд╕реЗ рдЗрд╕рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рд╣реЛ рд╕рдХрддреА рд╣реИред
no-new-privileges
рд╡рд┐рдХрд▓реНрдк рд╕рдХреНрд╖рдо рдХрд░рдХреЗ рдХрдВрдЯреЗрдирд░ рдХреЛ рдЪрд▓рд╛рдирд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреА рдЙрдиреНрдирддрд┐ рдХреЛ рд░реЛрдХреЗрдЧрд╛ред
рдЕрдиреНрдп
рдЕрдзрд┐рдХ --security-opt
рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд╛рдВрдЪ рдХрд░реЗрдВ: https://docs.docker.com/engine/reference/run/#security-configuration
рдЕрдиреНрдп рд╕реБрд░рдХреНрд╖рд╛ рдорд╛рдорд▓реЗ
рд░рд╣рд╕реНрдпреЛрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрди: рд╕рд░реНрд╡реЛрддреНрддрдо рдЕрднреНрдпрд╛рд╕
рдбреЙрдХрд░ рдЗрдореЗрдЬ рдореЗрдВ рд╕реАрдзреЗ рд░рд╣рд╕реНрдпреЛрдВ рдХреЛ рд╕рдорд╛рд╣рд┐рдд рдХрд░рдиреЗ рдпрд╛ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдмрдЪрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпреЗ рд╡рд┐рдзрд┐рдпрд╛рдБ docker inspect
рдпрд╛ exec
рдЬреИрд╕реЗ рдХрдорд╛рдВрдбреЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрдВрдЯреЗрдирд░ рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдЖрдкрдХреА рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рддреА рд╣реИрдВред
рдбреЙрдХрд░ рд╡реЙрд▓реНрдпреВрдореНрд╕ рдПрдХ рдЕрдзрд┐рдХ рд╕реБрд░рдХреНрд╖рд┐рдд рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ, рдЬрд┐рдиреНрд╣реЗрдВ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдЬрд╛рдирдХрд╛рд░реА рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рд▓рд┐рдП рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХреА рдЬрд╛рддреА рд╣реИред рдпреЗ рдПрдХ рдЕрд╕реНрдерд╛рдпреА рдлрд╝рд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ, docker inspect
рдФрд░ рд▓реЙрдЧрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рдЬреБрдбрд╝реЗ рдЬреЛрдЦрд┐рдореЛрдВ рдХреЛ рдХрдо рдХрд░рддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд░реВрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдФрд░ рдЙрди рд▓реЛрдЧреЛрдВ рддрдХ рдЬреЛ рдХрдВрдЯреЗрдирд░ рдореЗрдВ exec
рдкрд╣реБрдВрдЪ рд░рдЦреЗ рд╣реИрдВ, рд░рд╣рд╕реНрдпреЛрдВ рддрдХ рдкрд╣реБрдВрдЪ рд╕рдХрддреЗ рд╣реИрдВред
рдбреЙрдХрд░ рд╕реАрдХреНрд░реЗрдЯреНрд╕ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рдЕрдзрд┐рдХ рд╕реБрд░рдХреНрд╖рд┐рдд рд╡рд┐рдзрд┐ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред рдЗрдореЗрдЬ рдирд┐рд░реНрдорд╛рдг рдЪрд░рдг рдХреЗ рджреМрд░рд╛рди рд░рд╣рд╕реНрдпреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП, BuildKit рдПрдХ рдХреБрд╢рд▓ рд╕рдорд╛рдзрд╛рди рдкреНрд░рд╕реНрддреБрдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдирд┐рд░реНрдорд╛рдг рд╕рдордп рд░рд╣рд╕реНрдпреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдирд┐рд░реНрдорд╛рдг рдХреА рдЧрддрд┐ рдХреЛ рдмрдврд╝рд╛рддрд╛ рд╣реИ рдФрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред
BuildKit рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЗрд╕реЗ рддреАрди рддрд░реАрдХреЛрдВ рд╕реЗ рд╕рдХреНрд░рд┐рдп рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
рдПрдХ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░рдг рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ:
export DOCKER_BUILDKIT=1
рдХрдорд╛рдВрдбреЛрдВ рдХреЛ рдЙрдкрд╕рд░реНрдЧ рд▓рдЧрд╛рдХрд░:
DOCKER_BUILDKIT=1 docker build .
рдбреЙрдХрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдореЗрдВ рдЗрд╕реЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕рдХреНрд╖рдо рдХрд░рдирд╛:
{ "features": { "buildkit": true } }
, рдЗрд╕рдХреЗ рдмрд╛рдж рдбреЙрдХрд░ рдХреЛ рдкреБрдирдГ рдЖрд░рдВрдн рдХрд░реЗрдВред
BuildKit рд░рд╣рд╕реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП --secret
рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдпреЗ рд░рд╣рд╕реНрдп рдЗрдореЗрдЬ рдирд┐рд░реНрдорд╛рдг рдХреИрд╢ рдпрд╛ рдЕрдВрддрд┐рдо рдЗрдореЗрдЬ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрдорд╛рдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ:
рд╕рдВрдЪрд╛рд▓рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд░рд╣рдиреЗ рд╡рд╛рд▓реЗ рд░рд╣рд╕реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП, Docker Compose рдФрд░ Kubernetes рдордЬрдмреВрдд рд╕рдорд╛рдзрд╛рди рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред Docker Compose рдПрдХ secrets
рдХреБрдВрдЬреА рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реЗрд╡рд╛ рдкрд░рд┐рднрд╛рд╖рд╛ рдореЗрдВ рдЧреЛрдкрдиреАрдп рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░рддрд╛ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдПрдХ docker-compose.yml
рдЙрджрд╛рд╣рд░рдг рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ:
рдпрд╣ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди Docker Compose рдХреЗ рд╕рд╛рде рд╕реЗрд╡рд╛рдПрдВ рд╢реБрд░реВ рдХрд░рддреЗ рд╕рдордп рд░рд╣рд╕реНрдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
рдХреБрдмрд░рдиреЗрдЯреНрд╕ рдкрд░рд┐рд╡реЗрд╢реЛрдВ рдореЗрдВ, рд░рд╣рд╕реНрдпреЛрдВ рдХрд╛ рдкреНрд░рд╛рдХреГрддрд┐рдХ рд░реВрдк рд╕реЗ рд╕рдорд░реНрдерди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ Helm-Secrets рдЬреИрд╕реЗ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдФрд░ рдЕрдзрд┐рдХ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдХреБрдмрд░рдиреЗрдЯреНрд╕ рдХрд╛ рд░реЛрд▓ рдЖрдзрд╛рд░рд┐рдд рдкрд╣реБрдВрдЪ рдирд┐рдпрдВрддреНрд░рдг (RBAC) рд░рд╣рд╕реНрдп рдкреНрд░рдмрдВрдзрди рд╕реБрд░рдХреНрд╖рд╛ рдХреЛ рдмрдврд╝рд╛рддрд╛ рд╣реИ, рдЬреИрд╕реЗ Docker Enterprise рдХреЗ рд╕рдорд╛рдиред
gVisor
gVisor рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд░реНрдиреЗрд▓ рд╣реИ, рдЬреЛ рдЧреЛ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рд╣реИ, рдЬреЛ рд▓рд┐рдирдХреНрд╕ рд╕рд┐рд╕реНрдЯрдо рд╕рд░реНрдлреЗрд╕ рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рд╣рд┐рд╕реНрд╕рд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдореЗрдВ рдПрдХ Open Container Initiative (OCI) рд░рдирдЯрд╛рдЗрдо runsc
рд╢рд╛рдорд┐рд▓ рд╣реИ рдЬреЛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдФрд░ рд╣реЛрд╕реНрдЯ рдХрд░реНрдиреЗрд▓ рдХреЗ рдмреАрдЪ рдПрдХ рдЕрд▓рдЧрд╛рд╡ рд╕реАрдорд╛ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред runsc
рд░рдирдЯрд╛рдЗрдо Docker рдФрд░ Kubernetes рдХреЗ рд╕рд╛рде рдПрдХреАрдХреГрдд рд╣реЛрддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рд╕реИрдВрдбрдмреЙрдХреНрд╕ рдХрдВрдЯреЗрдирд░ рдЪрд▓рд╛рдирд╛ рд╕рд░рд▓ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
Kata Containers
Kata Containers рдПрдХ рдУрдкрди рд╕реЛрд░реНрд╕ рд╕рдореБрджрд╛рдп рд╣реИ рдЬреЛ рдПрдХ рд╕реБрд░рдХреНрд╖рд┐рдд рдХрдВрдЯреЗрдирд░ рд░рдирдЯрд╛рдЗрдо рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рд╣рд▓реНрдХреЗ рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрдиреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрдВрдЯреЗрдирд░ рдХреА рддрд░рд╣ рдЕрдиреБрднрд╡ рдФрд░ рдХрд╛рд░реНрдп рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рд╡рд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬреЗрд╢рди рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдордЬрдмреВрдд рдХрд╛рд░реНрдпрднрд╛рд░ рдЕрд▓рдЧрд╛рд╡ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред
рд╕рд╛рд░рд╛рдВрд╢ рдпреБрдХреНрддрд┐рдпрд╛рдБ
--privileged
рдлреНрд▓реИрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВ рдФрд░ рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ рдбреЙрдХрд░ рд╕реЙрдХреЗрдЯ рдорд╛рдЙрдВрдЯ рди рдХрд░реЗрдВред рдбреЙрдХрд░ рд╕реЙрдХреЗрдЯ рдХрдВрдЯреЗрдирд░ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рд╣реЛрд╕реНрдЯ рдХреЗ рдкреВрд░реНрдг рдирд┐рдпрдВрддреНрд░рдг рдореЗрдВ рд▓реЗрдиреЗ рдХрд╛ рдПрдХ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,--privileged
рдлреНрд▓реИрдЧ рдХреЗ рд╕рд╛рде рдПрдХ рдФрд░ рдХрдВрдЯреЗрдирд░ рдЪрд▓рд╛рдиреЗ рдХреЗ рджреНрд╡рд╛рд░рд╛редрдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ рд░реВрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рди рдЪрд▓рд╛рдПрдВред рдПрдХ рд╡рд┐рднрд┐рдиреНрди рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдиреЗрдорд╕реНрдкреЗрд╕** рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред** рдХрдВрдЯреЗрдирд░ рдореЗрдВ рд░реВрдЯ рд╣реЛрд╕реНрдЯ рдХреЗ рд╕рдорд╛рди рд╣реИ рдЬрдм рддрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдиреЗрдорд╕реНрдкреЗрд╕ рдХреЗ рд╕рд╛рде рдкреБрдирд░реНрдорд╛рд░реНрдкрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдХреЗрд╡рд▓, рдореБрдЦреНрдп рд░реВрдк рд╕реЗ, рд▓рд┐рдирдХреНрд╕ рдиреЗрдорд╕реНрдкреЗрд╕, рдХреНрд╖рдорддрд╛рдПрдБ, рдФрд░ рд╕реАрдЧреНрд░реБрдкреНрд╕ рджреНрд╡рд╛рд░рд╛ рд╣рд▓реНрдХреЗ рд╕реЗ рдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рд╣реИред
рд╕рднреА рдХреНрд╖рдорддрд╛рдПрдБ рдЫреЛрдбрд╝реЗрдВ (
--cap-drop=all
) рдФрд░ рдХреЗрд╡рд▓ рд╡рд╣реА рдЬреЛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдЙрдиреНрд╣реЗрдВ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ (--cap-add=...
)ред рдЕрдзрд┐рдХрд╛рдВрд╢ рдХрд╛рд░реНрдпрднрд╛рд░реЛрдВ рдХреЛ рдХреЛрдИ рднреА рдХреНрд╖рдорддрд╛рдПрдБ рдирд╣реАрдВ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд рд╣рдорд▓реЗ рдХреА рджрд╛рдпрд░рд╛ рдмрдврд╝ рдЬрд╛рддреА рд╣реИредтАЬno-new-privilegesтАЭ рд╕реБрд░рдХреНрд╖рд╛ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдЬрд┐рд╕рд╕реЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛рдПрдВ рдЕрдзрд┐рдХ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рди рдХрд░реЗрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП suid рдмрд╛рдЗрдирд░реА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗред
рдХрдВрдЯреЗрдирд░ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреА рд╕реАрдорд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░реЗрдВред рд╕рдВрд╕рд╛рдзрди рд╕реАрдорд╛рдПрдБ рдорд╢реАрди рдХреЛ рдбреАрдирд╛рдЗрд▓ рдСрдл рд╕рд░реНрд╡рд┐рд╕ рд╣рдорд▓реЛрдВ рд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рд░рдЦ рд╕рдХрддреА рд╣реИрдВред
рд╕реЗрдХреНрдХреЙрдореНрдк, AppArmor (рдпрд╛ SELinux) рдкреНрд░реЛрдлрд╛рдЗрд▓ рдХреЛ рд╕рдВрдХреНрд╖реЗрдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрдпрдо рд▓рд╛рдЧреВ рдХрд░реЗрдВ рдЬреЛ рдХрдВрдЯреЗрдирд░ рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдХреНрд░рд┐рдпрд╛рдПрдБ рдФрд░ рд╕рд┐рд╕рдХреЙрд▓реНрд╕ рдХреЛ рдиреНрдпреВрдирддрдо рдЖрд╡рд╢реНрдпрдХ рдХрд░рддреЗ рд╣реИрдВред
рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдбреЙрдХрд░ рдЫрд╡рд┐рдпрд╛рдБ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдФрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдпрд╛ рдЙрди рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдЕрдкрдиреА рдЫрд╡рд┐рдпрд╛рдБ рдмрдирд╛рдПрдВред рдмреИрдХрдбреЛрд░ рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рди рд▓реЗрдВ рдпрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд░реВрдЯ рдХреБрдВрдЬреА, рдкрд╛рд╕рдлреНрд░реЗрдЬ рдХреЛ рдПрдХ рд╕реБрд░рдХреНрд╖рд┐рдд рд╕реНрдерд╛рди рдореЗрдВ рд╕реНрдЯреЛрд░ рдХрд░реЗрдВред рдбреЙрдХрд░ рдХреЗ рдкрд╛рд╕ UCP рдХреЗ рд╕рд╛рде рдХреБрдВрдЬрд┐рдпреЛрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛рдПрдВ рд╣реИрдВред
рдЕрдкрдиреА рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рдирд┐рдпрдорд┐рдд рд░реВрдк рд╕реЗ рдкреБрдирдГ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдВ рддрд╛рдХрд┐ рд╣реЛрд╕реНрдЯ рдФрд░ рдЫрд╡рд┐рдпреЛрдВ рдореЗрдВ рд╕реБрд░рдХреНрд╖рд╛ рдкреИрдЪ рд▓рд╛рдЧреВ рдХрд┐рдП рдЬрд╛ рд╕рдХреЗрдВред
рдЕрдкрдиреЗ рд░рд╣рд╕реНрдпреЛрдВ рдХрд╛ рдмреБрджреНрдзрд┐рдорд╛рдиреА рд╕реЗ рдкреНрд░рдмрдВрдзрди рдХрд░реЗрдВ рддрд╛рдХрд┐ рдЙрдиреНрд╣реЗрдВ рдЕрдзрд┐рдХрд╛рд░реА рдХреЛ рдкрд╣реБрдВрдЪрдирд╛ рдХрдард┐рди рд╣реЛред
рдпрджрд┐ рдЖрдк рдбреЙрдХрд░ рдбреЗрдорди рдХреЛ рдЙрдЬрд╛рдЧрд░ рдХрд░рддреЗ рд╣реИрдВ рддреЛ HTTPS рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдЬрд┐рд╕рдореЗрдВ рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд╕рд░реНрд╡рд░ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рд╣реЛред
рдЕрдкрдиреЗ Dockerfile рдореЗрдВ ADD рдХреА рдмрдЬрд╛рдп COPY рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред ADD рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЬрд╝рд┐рдк рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдирд┐рдХрд╛рд▓рддрд╛ рд╣реИ рдФрд░ рдпреВрдЖрд░рдПрд▓ рд╕реЗ рдлрд╝рд╛рдЗрд▓реЗрдВ рдХреЙрдкреА рдХрд░ рд╕рдХрддрд╛ рд╣реИред COPY рдХреЗ рдкрд╛рд╕ рдпреЗ рдХреНрд╖рдорддрд╛рдПрдБ рдирд╣реАрдВ рд╣реИрдВред рдЬрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реЛ, ADD рдХрд╛ рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВ рддрд╛рдХрд┐ рдЖрдк рджреВрд░рд╕реНрде рдпреВрдЖрд░рдПрд▓ рдФрд░ рдЬрд╝рд┐рдк рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╣рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдВрдХреНрд░рдорд┐рдд рди рд╣реЛрдВред
рдкреНрд░рддреНрдпреЗрдХ рдорд╛рдЗрдХреНрд░реЛ рд╕реЗрд╡рд╛ рдХреЗ рд▓рд┐рдП рдЕрд▓рдЧ рдХрдВрдЯреЗрдирд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
рдХрдВрдЯреЗрдирд░ рдХреА рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рдЫреЛрдЯрд╛ рд░рдЦреЗрдВ
Docker Breakout / Privilege Escalation
рдпрджрд┐ рдЖрдк рдПрдХ рдбреЙрдХрд░ рдХрдВрдЯреЗрдирд░ рдХреЗ рдЕрдВрджрд░ рд╣реИрдВ рдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдбреЙрдХрд░ рд╕рдореВрд╣ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рддрдХ рдкрд╣реБрдВрдЪ рд╣реИ, рддреЛ рдЖрдк рднрд╛рдЧрдиреЗ рдФрд░ рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рдХреЛ рдмрдврд╝рд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
Docker Breakout / Privilege EscalationDocker Authentication Plugin Bypass
рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдбреЙрдХрд░ рд╕реЙрдХреЗрдЯ рддрдХ рдкрд╣реБрдВрдЪ рд╣реИ рдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдбреЙрдХрд░ рд╕рдореВрд╣ рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдкрд╣реБрдВрдЪ рд╣реИ рд▓реЗрдХрд┐рди рдЖрдкрдХреЗ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреЛ рдПрдХ рдбреЙрдХрд░ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдкреНрд▓рдЧрдЗрди рджреНрд╡рд╛рд░рд╛ рд╕реАрдорд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рддреЛ рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдЖрдк рдЗрд╕реЗ рдЕрдирджреЗрдЦрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:
AuthZ& AuthN - Docker Access Authorization PluginDocker рдХреЛ рдордЬрдмреВрдд рдмрдирд╛рдирд╛
рдЙрдкрдХрд░рдг docker-bench-security рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ рдЬреЛ рдЙрддреНрдкрд╛рджрди рдореЗрдВ Docker рдХрдВрдЯреЗрдирд░ рдбрд┐рдкреНрд▓реЙрдп рдХрд░рдиреЗ рдХреЗ рдЖрд╕-рдкрд╛рд╕ рдХреА рджрд░реНрдЬрдиреЛрдВ рд╕рд╛рдорд╛рдиреНрдп рд╢реНрд░реЗрд╖реНрда-рдкреНрд░рдерд╛рдУрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИред рдпреЗ рд╕рднреА рдЯреЗрд╕реНрдЯ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╣реИрдВ, рдФрд░ CIS Docker Benchmark v1.3.1 рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИрдВред рдЖрдкрдХреЛ рдЙрдкрдХрд░рдг рдХреЛ рдбреЙрдХрд░ рдЪрд▓рд╛рдиреЗ рд╡рд╛рд▓реЗ рд╣реЛрд╕реНрдЯ рд╕реЗ рдпрд╛ рдкрд░реНрдпрд╛рдкреНрдд рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░реЛрдВ рд╡рд╛рд▓реЗ рдПрдХ рдХрдВрдЯреЗрдирд░ рд╕реЗ рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред README рдореЗрдВ рдЗрд╕реЗ рдХреИрд╕реЗ рдЪрд▓рд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдиреЗрдВ: https://github.com/docker/docker-bench-security.
рд╕рдВрджрд░реНрдн
[https://blog.trailofbits.com/2019/07/19/understanding-docker рд╕реАрдЦреЗрдВ рдФрд░ рдкреНрд░реИрдХреНрдЯрд┐рд╕ рдХрд░реЗрдВ AWS рд╣реИрдХрд┐рдВрдЧ:
HackTricks рдкреНрд░рд╢рд┐рдХреНрд╖рдг AWS рд░реЗрдб рдЯреАрдо рдПрдХреНрд╕рдкрд░реНрдЯ (ARTE)
рд╕реАрдЦреЗрдВ рдФрд░ рдкреНрд░реИрдХреНрдЯрд┐рд╕ рдХрд░реЗрдВ GCP рд╣реИрдХрд┐рдВрдЧ:
HackTricks рдкреНрд░рд╢рд┐рдХреНрд╖рдг GCP рд░реЗрдб рдЯреАрдо рдПрдХреНрд╕рдкрд░реНрдЯ (GRTE)
Last updated