mirror of
https://github.com/go-gitea/gitea.git
synced 2026-07-16 04:42:51 -05:00
[DOC] Add some hints to enable gitea on selinux/Ubuntu/Fedora #4788
Open
opened 2025-11-02 06:02:52 -06:00 by GiteaMirror
·
13 comments
No Branch/Tag Specified
main
release/v1.25
release/v1.24
release/v1.23
release/v1.22
release/v1.21
release/v1.20
release/v1.19
release/v1.18
release/v1.17
release/v1.16
release/v1.15
release/v1.14
release/v1.13
release/v1.12
release/v1.11
release/v1.10
release/v1.9
release/v1.8
v1.25.3
v1.25.2
v1.25.1
v1.25.0
v1.24.7
v1.25.0-rc0
v1.26.0-dev
v1.24.6
v1.24.5
v1.24.4
v1.24.3
v1.24.2
v1.24.1
v1.24.0
v1.23.8
v1.24.0-rc0
v1.25.0-dev
v1.23.7
v1.23.6
v1.23.5
v1.23.4
v1.23.3
v1.23.2
v1.23.1
v1.23.0
v1.23.0-rc0
v1.24.0-dev
v1.22.6
v1.22.5
v1.22.4
v1.22.3
v1.22.2
v1.22.1
v1.22.0
v1.23.0-dev
v1.22.0-rc1
v1.21.11
v1.22.0-rc0
v1.21.10
v1.21.9
v1.21.8
v1.21.7
v1.21.6
v1.21.5
v1.21.4
v1.21.3
v1.21.2
v1.20.6
v1.21.1
v1.21.0
v1.21.0-rc2
v1.21.0-rc1
v1.20.5
v1.22.0-dev
v1.21.0-rc0
v1.20.4
v1.20.3
v1.20.2
v1.20.1
v1.20.0
v1.19.4
v1.21.0-dev
v1.20.0-rc2
v1.20.0-rc1
v1.20.0-rc0
v1.19.3
v1.19.2
v1.19.1
v1.19.0
v1.19.0-rc1
v1.20.0-dev
v1.19.0-rc0
v1.18.5
v1.18.4
v1.18.3
v1.18.2
v1.18.1
v1.18.0
v1.17.4
v1.18.0-rc1
v1.19.0-dev
v1.18.0-rc0
v1.17.3
v1.17.2
v1.17.1
v1.17.0
v1.17.0-rc2
v1.16.9
v1.17.0-rc1
v1.18.0-dev
v1.16.8
v1.16.7
v1.16.6
v1.16.5
v1.16.4
v1.16.3
v1.16.2
v1.16.1
v1.16.0
v1.15.11
v1.17.0-dev
v1.16.0-rc1
v1.15.10
v1.15.9
v1.15.8
v1.15.7
v1.15.6
v1.15.5
v1.15.4
v1.15.3
v1.15.2
v1.15.1
v1.14.7
v1.15.0
v1.15.0-rc3
v1.14.6
v1.15.0-rc2
v1.14.5
v1.16.0-dev
v1.15.0-rc1
v1.14.4
v1.14.3
v1.14.2
v1.14.1
v1.14.0
v1.13.7
v1.14.0-rc2
v1.13.6
v1.13.5
v1.14.0-rc1
v1.15.0-dev
v1.13.4
v1.13.3
v1.13.2
v1.13.1
v1.13.0
v1.12.6
v1.13.0-rc2
v1.14.0-dev
v1.13.0-rc1
v1.12.5
v1.12.4
v1.12.3
v1.12.2
v1.12.1
v1.11.8
v1.12.0
v1.11.7
v1.12.0-rc2
v1.11.6
v1.12.0-rc1
v1.13.0-dev
v1.11.5
v1.11.4
v1.11.3
v1.10.6
v1.12.0-dev
v1.11.2
v1.10.5
v1.11.1
v1.10.4
v1.11.0
v1.11.0-rc2
v1.10.3
v1.11.0-rc1
v1.10.2
v1.10.1
v1.10.0
v1.9.6
v1.9.5
v1.10.0-rc2
v1.11.0-dev
v1.10.0-rc1
v1.9.4
v1.9.3
v1.9.2
v1.9.1
v1.9.0
v1.9.0-rc2
v1.10.0-dev
v1.9.0-rc1
v1.8.3
v1.8.2
v1.8.1
v1.8.0
v1.8.0-rc3
v1.7.6
v1.8.0-rc2
v1.7.5
v1.8.0-rc1
v1.9.0-dev
v1.7.4
v1.7.3
v1.7.2
v1.7.1
v1.7.0
v1.7.0-rc3
v1.6.4
v1.7.0-rc2
v1.6.3
v1.7.0-rc1
v1.7.0-dev
v1.6.2
v1.6.1
v1.6.0
v1.6.0-rc2
v1.5.3
v1.6.0-rc1
v1.6.0-dev
v1.5.2
v1.5.1
v1.5.0
v1.5.0-rc2
v1.5.0-rc1
v1.5.0-dev
v1.4.3
v1.4.2
v1.4.1
v1.4.0
v1.4.0-rc3
v1.4.0-rc2
v1.3.3
v1.4.0-rc1
v1.3.2
v1.3.1
v1.3.0
v1.3.0-rc2
v1.3.0-rc1
v1.2.3
v1.2.2
v1.2.1
v1.2.0
v1.2.0-rc3
v1.2.0-rc2
v1.1.4
v1.2.0-rc1
v1.1.3
v1.1.2
v1.1.1
v1.1.0
v1.0.2
v1.0.1
v1.0.0
v0.9.99
Labels
Clear labels
$20
$250
$50
$500
backport/done
💎 Bounty
docs-update-needed
good first issue
hacktoberfest
issue/bounty
issue/confirmed
issue/critical
issue/duplicate
issue/needs-feedback
issue/not-a-bug
issue/regression
issue/stale
issue/workaround
lgtm/need 2
modifies/api
modifies/translation
outdated/backport/v1.18
outdated/theme/markdown
outdated/theme/timetracker
performance/bigrepo
performance/cpu
performance/memory
performance/speed
pr/breaking
proposal/accepted
proposal/rejected
pr/wip
pull-request
reviewed/wontfix
💰 Rewarded
skip-changelog
status/blocked
topic/accessibility
topic/api
topic/authentication
topic/build
topic/code-linting
topic/commit-signing
topic/content-rendering
topic/deployment
topic/distribution
topic/federation
topic/gitea-actions
topic/issues
topic/lfs
topic/mobile
topic/moderation
topic/packages
topic/pr
topic/projects
topic/repo
topic/repo-migration
topic/security
topic/theme
topic/ui
topic/ui-interaction
topic/ux
topic/webhooks
topic/wiki
type/bug
type/deprecation
type/docs
type/enhancement
type/feature
type/miscellaneous
type/proposal
type/question
type/refactoring
type/summary
type/testing
type/upstream
Mirrored from GitHub Pull Request
Milestone
No items
No Milestone
Projects
Clear projects
No project
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/gitea#4788
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @guillep2k on GitHub (Feb 4, 2020).
Users that attempt to install Gitea from binary on Fedora/Ubuntu/etc. may encounter several problems due to selinux. I'm not an expert on that, but I think we should add a couple of hints to the docs around this scenario.
Notes that might be useful:
setcap cap_net_bind_service=+ep /path/to/binary/giteawill allow the exact version of gitea's executable to bind to privileged ports; this permits Gitea to bind directly to 443 without running as root. Upgrading Gitea (i.e. replacing the executable) will remove this capability and force the admin to run the command again.There's a number of considerations for running the service from
systemdif selinux is active; if we can't provide a full recipe for enabling Gitea, we may leave some pointers about these limitations.(I might do this myself if I ever get time to investigate this setup).
@bagasme commented on GitHub (Feb 6, 2020):
Disabling selinux for now?
@rmbleeker commented on GitHub (Feb 10, 2020):
I've having no issues running Gitea under its own user account on a host with selinux set to enforcing. To bind to ports 80 and 443 set
CapabilityBoundingSet=CAP_NET_BIND_SERVICEandAmbientCapabilities=CAP_NET_BIND_SERVICEin the systemd unit file, they are commented out in the example unit file.Other than that I'm running from a directory in
/optand haven't even looked at the selinux security contexts on the files in that directory.@stale[bot] commented on GitHub (Apr 11, 2020):
This issue has been automatically marked as stale because it has not had recent activity. I am here to help clear issues left open even if solved or waiting for more insight. This issue will be closed if no further activity occurs during the next 2 weeks. If the issue is still valid just add a comment to keep it alive. Thank you for your contributions.
@stale[bot] commented on GitHub (Apr 25, 2020):
This issue has been automatically closed because of inactivity. You can re-open it if needed.
@vwbusguy commented on GitHub (Jul 20, 2021):
I would really appreciate this. It's the worst game of whack a mole on CentOS 8.
@zeripath commented on GitHub (Jul 20, 2021):
The problem is someone needs to play that game of whackamole and write the documentation for us...
So if you have just done this - please consider documenting what you needed to do.
@vwbusguy commented on GitHub (Jul 20, 2021):
I would if setroubleshoot gave meaningful things and not
touch /.autorelabelandausearch -c 'gitea' --raw | audit2allow -M my-gitea && semodule -X 300 -i my-gitea.ppI simply don't have the time to sort through all of that, sadly, especially if it's complicated enough that setroubleshoot isn't going to even give more meaningful hints.
I think that running
restoreconon the binary and recursively on the gitea data path may have solved part of it.@rmbleeker commented on GitHub (Jul 21, 2021):
@vwbusguy can you perhaps elaborate a little more on what parts of Gitea are not working for you due to selinux? As I've stated before in this issue, I'm running Gitea on a RHEL7 host with selinux set to
enforcingand have not run into any issues.I have an Ansible role that I use for the installation and configuration of Gitea but it's also based around RHEL7 so I'm not sure if that would be of any help to you.
@vwbusguy commented on GitHub (Jul 23, 2021):
It seems the biggest issue is proper labelling for the data directory/binary for file system writes. I doubt the SELInux policy would be any different between EL7 and EL8 for Gitea.
@vwbusguy commented on GitHub (Sep 4, 2021):
I think I've figured out an SELinux policy that works, though it could be more granular. I suspect much of my problem may have been that I'm running the data directory in an alternative path where others are likely using /var/lib, etc.
But these two things fixed most (maybe all?) of the issues for me:
chcon -v -t bin_t gitea-1.15.2-linux-amd64)chcon -Rv -t var_lib_t /local/gitea/)@sebeaumont commented on GitHub (Jan 30, 2025):
@vwbusguy Thank you indeed for that. Did it make it into any documentation?
@lunny commented on GitHub (Jan 31, 2025):
Since the documentation has been relocated to https://gitea.com/gitea/docs , this issue should be moved there for further discussion or resolution. The file https://gitea.com/gitea/docs/src/branch/main/docs/installation/from-binary.md should be updated.
@Poikilos commented on GitHub (Apr 20, 2025):
Ok, I created the issue selinux no longer allows setcap to let Gitea to run on privileged port such as 80 or 443 #211 on gitea.com/gitea/docs