Chạy tomcat trong tài khoản dịch vụ tomcat trong CentOS


2

Tôi đang cài đặt tomcat trên hộp CentOS để sử dụng làm máy chủ ứng dụng. Quản trị viên hệ thống của tôi đã tạo một tài khoản dịch vụ người dùng tomcat để chạy tomcat. Tôi thường làm theo hướng dẫn trên trang này nhưng khi tôi đến bước tôi điều chỉnh tập lệnh khởi động để chạy lệnh khởi động và tắt máy tomcat như người dùng tomcat (Bước 6, mục 4) Tôi đang được hỏi mật khẩu cho tài khoản tomcat. Vì đây là tài khoản dịch vụ nên tôi có thể /bin/su tomcatchạy một số lệnh nhất định với tư cách là người dùng tomcat mà không cần nhập mật khẩu?

Tôi thường không quen với việc thiết lập tomcat để chạy trong tài khoản dịch vụ. Nếu bất cứ ai có thực hành tốt nhất cho điều này xin vui lòng cho tôi biết.

Cập nhật : Tôi tìm thấy một bài viết hay về cài đặt tomcat như một dịch vụ dưới một người dùng đặc quyền thấp ở đây . Sau bài viết đó, cuối cùng tôi đã cài đặt được.

Câu trả lời:


0

Nếu bạn chưa đăng nhập / nâng cao như root và là người dùng "thông thường", bạn sẽ cần cung cấp mật khẩu cho tài khoản người dùng khác.

Tuy nhiên, bạn có thể muốn xem xét sudođể đạt được những gì bạn đang cố gắng thực hiện. Bạn có thể sẽ cần tham khảo ý kiến ​​với sysadmin của mình để thiết lập chính xác bạn trong sudoerstệp để cấp cho bạn quyền truy cập mà bạn yêu cầu.


Tài khoản người dùng của tôi được cấp quyền sudo nhưng khi tôi sử dụng sudo để chạy tập lệnh khởi động, tôi nhận được thông báo: "Tài khoản này hiện không có sẵn."
Tom

Điều đó thường là do thiếu vỏ được chỉ định cho tài khoản người dùng. Đôi khi các sysadins làm điều đó cho mục đích bảo mật.
Chipster

0

Không có tài khoản dịch vụ như thế này thường không được cấu hình để đăng nhập. Bạn có thể thấy điều này nếu bạn nhìn vào tập tin /etc/passwd. Bạn cũng có thể nhìn thấy nó bằng cách sử dụng getentlệnh.

Thí dụ

$ getent passwd saml
saml:x:1000:1000:saml:/home/saml:/bin/bash

Lưu ý rằng tài khoản của tôi được thiết lập để sử dụng shell , /bin/bash. Trong khi đó một tài khoản dịch vụ thì không.

$ getent passwd nginx
nginx:x:987:978:Nginx web server:/var/lib/nginx:/sbin/nologin

Để thay đổi bất kỳ tệp nào liên quan đến dịch vụ này, bạn sẽ cần sử dụng các sudođặc quyền để chỉnh sửa chúng. Chỉ cần thực hiện một sudo vim </path/to/file>sẽ cho phép bạn chỉnh sửa chúng bảo vệ người dùng ban đầu của các tệp này.

Nếu bạn cần tạo các tệp mới, bạn cũng cần quan tâm đến chown <user>.<group>các tệp mới vào tài khoản dịch vụ và nhóm Unix mặc định của nó.


Tôi đã không thực sự cố gắng đăng nhập vào tài khoản này ... chỉ cố gắng chạy các lệnh như người dùng này mà tôi có thể làm được.
Tom

@Tom - bạn cũng có thể chạy các lệnh như một người dùng thông qua sudo : sudo -u tomcat <cmd>.
slm
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.