ນີ້ແມ່ນຄໍາສັ່ງ lshell ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
lshell - Shell ຈໍາກັດ
ສະຫຼຸບສັງລວມ
ແກະ [OPTIONS]
ລາຍລະອຽດ
ແກະ ໃຫ້ shell ຈໍາກັດທີ່ກໍາຫນົດຄ່າຕໍ່ຜູ້ໃຊ້. ການຕັ້ງຄ່າແມ່ນເຮັດໄດ້ຂ້ອນຂ້າງ
ພຽງແຕ່ໃຊ້ໄຟລ໌ການຕັ້ງຄ່າ. ບວກກັບ ssh ອະນຸຍາດ ຫຼືກັບ / etc / ຫອຍ
ແລະ / etc / passwd , ມັນຈະກາຍເປັນເລື່ອງງ່າຍຫຼາຍທີ່ຈະຈໍາກັດການເຂົ້າເຖິງຂອງຜູ້ໃຊ້ກັບຊຸດຈໍາກັດ
ຄໍາສັ່ງ.
OPTIONS
--config
ລະບຸໄຟລ໌ config
--ບັນທຶກ
ລະບຸໄດເລກະທໍລີບັນທຶກ
--
ຢູ່ໃສ ແມ່ນພາຣາມິເຕີໄຟລ໌ການຕັ້ງຄ່າ *ອັນໃດນຶ່ງ
-ຊ, - ຊ່ວຍ
ສະແດງຂໍ້ຄວາມຊ່ວຍເຫຼືອ
- ການປ່ຽນແປງ
ສະແດງໃຫ້ເຫັນສະບັບ
CONFIGURATION
ທ່ານສາມາດ configure lshell ຜ່ານໄຟລ໌ການຕັ້ງຄ່າຂອງມັນ:
On Linux -> /etc/lshell.conf
On * BSD -> /usr/{pkg,local}/etc/lshell.conf
ແກະ ການຕັ້ງຄ່າມີ 4 ປະເພດຂອງພາກສ່ວນ:
[ທົ່ວໂລກ] -> ແກະ ລະບົບ configuration (ພຽງແຕ່ 1)
[ຄ່າເລີ່ມຕົ້ນ] -> ແກະ Default ຜູ້ໃຊ້ configuration (ພຽງແຕ່ 1)
[foo] -> UNIX ຊື່ຜູ້ໃຊ້ "ຟູ" ສະເພາະ configuration
[grp:bar] -> UNIX ຊື່ກຸ່ມ "ບາ" ສະເພາະ configuration
ລຳດັບຄວາມສຳຄັນໃນເວລາໂຫຼດການຕັ້ງຄ່າແມ່ນຕໍ່ໄປນີ້:
1- ຜູ້ໃຊ້ configuration
2- ກຸ່ມ configuration
3- ມາດຕະຖານ configuration
[ທົ່ວໂລກ]
logpath
config path (ຄ່າເລີ່ມຕົ້ນແມ່ນ /var/log/lshell/)
loglevel
0, 1, 2, 3 ຫຼື 4 (0: ບໍ່ມີບັນທຶກ -> 4: ບັນທຶກທຸກຢ່າງ)
ຊື່ບັນທຶກ
- ຕັ້ງຄ່າ syslog ເພື່ອເຂົ້າສູ່ລະບົບ syslog
- ຕັ້ງຊື່ໄຟລ໌ບັນທຶກ, ຕົວຢ່າງ %u-%y%m%d (ເຊັ່ນ: foo-20091009.log): %u -> ຊື່ຜູ້ໃຊ້
%d -> ມື້ [1..31]
%m -> ເດືອນ [1..12]
%y -> ປີ [00..99]
%h -> ເວລາ [00:00..23:59]
syslogname
ໃນກໍລະນີທີ່ທ່ານກໍາລັງໃຊ້ syslog, ຕັ້ງຊື່ເຂົ້າສູ່ລະບົບຂອງທ່ານ (ຄ່າເລີ່ມຕົ້ນ: lshell)
include_dir
ລວມເອົາໄດເລກະທໍລີທີ່ບັນຈຸໄຟລ໌ການຕັ້ງຄ່າຫຼາຍອັນ. ໄຟລ໌ເຫຼົ່ານີ້ພຽງແຕ່ສາມາດ
ມີການຕັ້ງຄ່າເລີ່ມຕົ້ນ/ຜູ້ໃຊ້/ກຸ່ມ. ການຕັ້ງຄ່າທົ່ວໂລກຈະເປັນພຽງແຕ່
ໂຫລດມາຈາກໄຟລ໌ການຕັ້ງຄ່າເລີ່ມຕົ້ນ. ຕົວແປນີ້ຈະຖືກຂະຫຍາຍ (ຕົວຢ່າງ
/path/*.conf).
[ຄ່າເລີ່ມຕົ້ນ] ແລະ / ຫຼື [ຊື່ຜູ້ໃຊ້] ແລະ / ຫຼື [grp:ຊື່ກຸ່ມ]
alias
ບັນຊີລາຍຊື່ນາມແຝງຄໍາສັ່ງ (ຄ້າຍກັບຄໍາສັ່ງນາມແຝງຂອງ bash)
ອະນຸຍາດໃຫ້
ບັນຊີລາຍຊື່ຂອງຄໍາສັ່ງທີ່ອະນຸຍາດຫຼືຕັ້ງເປັນ 'ທັງຫມົດ' ເພື່ອອະນຸຍາດໃຫ້ຄໍາສັ່ງທັງຫມົດໃນ PATH ຂອງຜູ້ໃຊ້
allow_cmd_path
ບັນຊີລາຍຊື່ຂອງເສັ້ນທາງ; ໄຟລ໌ທີ່ສາມາດປະຕິບັດໄດ້ທັງໝົດຢູ່ໃນເສັ້ນທາງເຫຼົ່ານີ້ຈະຖືກອະນຸຍາດ
env_path
ອັບເດດຕົວແປສະພາບແວດລ້ອມ $PATH ຂອງຜູ້ໃຊ້ (ທາງເລືອກ)
env_vars
ຕັ້ງຄ່າຕົວແປສະພາບແວດລ້ອມ (ທາງເລືອກ)
ຫ້າມ
ບັນຊີລາຍຊື່ຂອງຕົວອັກສອນຫຼືຄໍາສັ່ງຫ້າມ
history_file
ຕັ້ງຊື່ໄຟລ໌ປະຫວັດສາດ. ສາມາດໃຊ້ຕົວແທນໄດ້:
%u -> ຊື່ຜູ້ໃຊ້ (ເຊັ່ນ: '/ home /%u/.lhistory')
history_size
ກໍານົດຂະຫນາດສູງສຸດ (ໃນແຖວ) ຂອງໄຟລ໌ປະຫວັດສາດ
home_path (ຄັດຄ້ານ)
ຕັ້ງໂຟນເດີຫຼັກຂອງຜູ້ໃຊ້ຂອງທ່ານ. ຖ້າບໍ່ໄດ້ລະບຸ, ໄດເລກະທໍລີເຮືອນຖືກຕັ້ງເປັນ
ຕົວປ່ຽນແປງສະພາບແວດລ້ອມ $HOME. ຕົວແປນີ້ຈະຖືກລຶບອອກໃນສະບັບຕໍ່ໄປ
ຂອງ lshell, ກະລຸນາໃຊ້ເຄື່ອງມືຂອງລະບົບຂອງທ່ານເພື່ອຕັ້ງບັນຊີລາຍການຂອງຜູ້ໃຊ້. ກ
ສາມາດໃຊ້ຕົວແທນໄດ້:
%u -> ຊື່ຜູ້ໃຊ້ (ເຊັ່ນ: '/ home /%u')
intro ກໍານົດການແນະນໍາເພື່ອພິມໃນເວລາເຂົ້າສູ່ລະບົບ
login_script
ກໍານົດສະຄິບທີ່ຈະດໍາເນີນການໃນເວລາເຂົ້າສູ່ລະບົບຂອງຜູ້ໃຊ້
passwd ລະຫັດຜ່ານຂອງຜູ້ໃຊ້ສະເພາະ (ຄ່າເລີ່ມຕົ້ນແມ່ນຫວ່າງເປົ່າ)
ເສັ້ນທາງ ບັນຊີລາຍຊື່ຂອງເສັ້ນທາງທີ່ຈະຈໍາກັດຜູ້ໃຊ້ທາງພູມສາດ. ມັນເປັນໄປໄດ້ທີ່ຈະໃຊ້ wildcards
(ເຊັ່ນ: '/var/log/ap*').
ການກະຕຸ້ນເຕືອນ ຕັ້ງຮູບແບບການເຕືອນຂອງຜູ້ໃຊ້ (ຄ່າເລີ່ມຕົ້ນ: ຊື່ຜູ້ໃຊ້)
%u -> ຊື່ຜູ້ໃຊ້
%h -> ຊື່ເຈົ້າພາບ
prompt_short
set sort prompt current directory update - ຕັ້ງເປັນ 1 ຫຼື 0 overssh ບັນຊີລາຍຊື່ຄໍາສັ່ງ
ອະນຸຍາດໃຫ້ດໍາເນີນການຜ່ານ ssh (ເຊັ່ນ: rsync, rdiff-backup, scp, ແລະອື່ນໆ).
scp ອະນຸຍາດໃຫ້ຫຼືຫ້າມການນໍາໃຊ້ການເຊື່ອມຕໍ່ scp - ກໍານົດເປັນ 1 ຫຼື 0
scpforce
ບັງຄັບໄຟລ໌ທີ່ສົ່ງຜ່ານ scp ໄປຫາໄດເລກະທໍລີສະເພາະ
scp_download
ຕັ້ງເປັນ 0 ເພື່ອຫ້າມການດາວໂຫຼດ scp (ຄ່າເລີ່ມຕົ້ນແມ່ນ 1)
scp_upload
ຕັ້ງເປັນ 0 ເພື່ອຫ້າມການອັບໂຫລດ scp (ຄ່າເລີ່ມຕົ້ນແມ່ນ 1)
sftp ອະນຸຍາດໃຫ້ຫຼືຫ້າມການນໍາໃຊ້ການເຊື່ອມຕໍ່ sftp - ກໍານົດເປັນ 1 ຫຼື 0 .
ຄໍາເຕືອນ: ທາງເລືອກນີ້ຈະບໍ່ເຮັດວຽກຖ້າຫາກວ່າທ່ານກໍາລັງໃຊ້ການບໍລິການພາຍໃນຂອງ OpenSSH-sftp
(ເຊັ່ນ: ເມື່ອຕັ້ງຄ່າໃນ chroot)
sudo_commands
ບັນຊີລາຍຊື່ຂອງຄໍາສັ່ງທີ່ອະນຸຍາດໃຫ້ນໍາໃຊ້ກັບ sudo(8). ຖ້າຕັ້ງເປັນ 'ທັງໝົດ', ທັງໝົດ
ຄໍາສັ່ງ 'ອະນຸຍາດ' ຈະສາມາດເຂົ້າເຖິງໄດ້ໂດຍຜ່ານ sudo(8).
ມັນເປັນໄປໄດ້ທີ່ຈະໃຊ້ທຸງ -u sudo ເພື່ອດໍາເນີນການຄໍາສັ່ງທີ່ແຕກຕ່າງກັນ
ຜູ້ໃຊ້ຫຼາຍກວ່າຮາກເລີ່ມຕົ້ນ.
timer ຄ່າເປັນວິນາທີສຳລັບໂມງຈັບເວລາເຊດຊັນ
ຢ່າງເຄັ່ງຄັດ ຄວາມເຂັ້ມງວດຂອງການຕັດໄມ້. ຖ້າຕັ້ງເປັນ 1, ຄໍາສັ່ງທີ່ບໍ່ຮູ້ຈັກຖືກພິຈາລະນາເປັນຂໍ້ຫ້າມ,
ແລະຕົວຕ້ານການເຕືອນໄພຂອງຜູ້ໃຊ້ຫຼຸດລົງ. ຖ້າຕັ້ງເປັນ 0, ຄໍາສັ່ງຖືກພິຈາລະນາເປັນ
ບໍ່ຮູ້ຈັກ, ແລະຜູ້ໃຊ້ໄດ້ຮັບການເຕືອນພຽງແຕ່ (ເຊັ່ນ *** synthax ບໍ່ຮູ້ຈັກ)
warning_counter
ຈໍານວນຂອງການເຕືອນໄພໃນເວລາທີ່ຜູ້ໃຊ້ເຂົ້າໄປໃນຄ່າຫ້າມກ່ອນທີ່ຈະໄດ້ຮັບການອອກຈາກ
ແກະ. ຕັ້ງຄ່າ -1 ເພື່ອປິດການໃຊ້ງານເຄື່ອງນັບຖອຍຫຼັງ, ແລະພຽງແຕ່ເຕືອນຜູ້ໃຊ້.
SHELL ອາຄານ ສາມາດ
ນີ້ແມ່ນຊຸດຂອງຄໍາສັ່ງທີ່ມີຢູ່ສະເຫມີກັບ lshell:
ແຈ້ງ ລ້າງ terminal
ຊ່ວຍເຫຼືອ, ?
ພິມບັນຊີລາຍຊື່ຂອງຄໍາສັ່ງອະນຸຍາດ
ປະຫວັດສາດ
ພິມປະຫວັດຄໍາສັ່ງ
ລີດ ລາຍຊື່ເສັ້ນທາງທີ່ຖືກອະນຸຍາດແລະຫ້າມທັງຫມົດ
ຊູໂດ ລາຍຊື່ທຸກຄໍາສັ່ງທີ່ອະນຸຍາດໃຫ້ sudo
ຕົວຢ່າງ
$ ແກະ
ພະຍາຍາມແລ່ນ lshell ໂດຍໃຊ້ຄ່າເລີ່ມຕົ້ນ ${PREFIX}/etc/lshell.conf ເປັນໄຟລ໌ການຕັ້ງຄ່າ.
ຖ້າມັນລົ້ມເຫລວ ຄຳເຕືອນຈະຖືກພິມອອກແລະ lshell ຖືກລົບກວນ. ຕົວເລືອກ lshell ແມ່ນ
ໂຫລດຈາກໄຟລ໌ການຕັ້ງຄ່າ
$ ແກະ --config /path/to/myconf.file --ບັນທຶກ /path/to/mylog.log
ນີ້ຈະລົບລ້າງຕົວເລືອກເລີ່ມຕົ້ນທີ່ລະບຸໄວ້ສໍາລັບການຕັ້ງຄ່າ ແລະ/ຫຼືໄຟລ໌ບັນທຶກ
ໃຊ້ ກໍລະນີ
ເປົ້າຫມາຍຕົ້ນຕໍຂອງ lshell, ແມ່ນເພື່ອໃຫ້ສາມາດສ້າງບັນຊີ shell ດ້ວຍການເຂົ້າເຖິງ ssh ແລະ
ຈຳ ກັດສະພາບແວດລ້ອມຂອງພວກເຂົາຕໍ່ສອງ ຄຳ ສັ່ງທີ່ຕ້ອງການ. ໃນຕົວຢ່າງນີ້, ຜູ້ໃຊ້ 'foo' ແລະ
ຜູ້ໃຊ້ 'bar' ທັງສອງເປັນຂອງກຸ່ມ 'ຜູ້ໃຊ້' UNIX:
ຜູ້ໃຊ້ ຟູ:
- ຕ້ອງສາມາດເຂົ້າເຖິງໄດ້ / usr ແລະ / var ແຕ່ບໍ່ແມ່ນ / usr / ທ້ອງຖິ່ນ
- ຜູ້ໃຊ້ຄໍາສັ່ງທັງຫມົດໃນ PATH ຂອງລາວແຕ່ 'su'
- ມີຕູ້ເຕືອນໄພຕັ້ງເປັນ 5
- ມີເສັ້ນທາງບ້ານຂອງຕົນກໍານົດເປັນ '/home/users'
ຜູ້ໃຊ້ ແຖບ:
- ຕ້ອງສາມາດເຂົ້າເຖິງໄດ້ / ແລະອື່ນໆ ແລະ / usr ແຕ່ບໍ່ແມ່ນ / usr / ທ້ອງຖິ່ນ
- ອະນຸຍາດໃຫ້ຄໍາສັ່ງເລີ່ມຕົ້ນບວກກັບ 'ping' ລົບ 'ls'
- ຄວາມເຂັ້ມງວດຖືກຕັ້ງເປັນ 1 (ຫມາຍຄວາມວ່າລາວບໍ່ໄດ້ຖືກອະນຸຍາດໃຫ້ພິມຄໍາສັ່ງທີ່ບໍ່ຮູ້ຈັກ)
ໃນກໍລະນີນີ້, ໄຟລ໌ການຕັ້ງຄ່າຂອງຂ້ອຍຈະມີລັກສະນະເຊັ່ນນີ້:
# CONFIURATION START
[ທົ່ວໂລກ]
logpath : /var/log/lshell/
loglevel : 2
[ຄ່າເລີ່ມຕົ້ນ]
ອະນຸຍາດໃຫ້ : ['ls','pwd']
ຫ້າມ : [';', '&', '|']
warning_counter : 2
timer : 0
ເສັ້ນທາງ : ['/ ແລະອື່ນໆ', '/ usr']
env_path : ':/ sbin:/ usr / ຖັງ /'
scp : 1 # or 0
sftp : 1 # or 0
overssh : ['rsync','ls']
alias : {'ls':'ls --color=auto','ll':'ls -l'}
[grp: ຜູ້ໃຊ້]
warning_counter : 5
overssh : - ['ls']
[foo]
ອະນຸຍາດໃຫ້ : 'ທັງໝົດ' - ['su']
ເສັ້ນທາງ : ['/ var', '/ usr'] - ['/ usr / ທ້ອງຖິ່ນ']
home_path : '/home/users'
[ແຖບ]
ອະນຸຍາດໃຫ້ : + ['ping'] - ['ls']
ເສັ້ນທາງ : - ['/ usr / ທ້ອງຖິ່ນ']
ຢ່າງເຄັ່ງຄັດ : 1
scpforce : '/home/bar/uploads/'
# CONFIURATION END
ຫມາຍເຫດ
ເພື່ອບັນທຶກຄຳເຕືອນຂອງຜູ້ໃຊ້ເຂົ້າໃນບັນຊີບັນທຶກ (ຄ່າເລີ່ມຕົ້ນ /var/log/lshell/),
ທ່ານຕ້ອງສ້າງ folder (ຖ້າຫາກວ່າມັນຍັງບໍ່ມີ) ແລະ chown ມັນເປັນກຸ່ມ lshell:
# ກຸ່ມເພີ່ມ --ລະບົບ ແກະ
# mkdir /var/log/lshell
# chown :lshell /var/log/lshell
# chmod 770 /var/log/lshell
ຫຼັງຈາກນັ້ນ, ເພີ່ມຜູ້ໃຊ້ເຂົ້າໃນ ແກະ ກຸ່ມ:
# usermod -aG ແກະ ຊື່ຜູ້ໃຊ້
ເພື່ອຕັ້ງ lshell ເປັນ shell ເລີ່ມຕົ້ນສໍາລັບຜູ້ໃຊ້:
On linux:
# chsh -s /usr/bin/lshell ຊື່ຜູ້ໃຊ້
On *BSD:
# chsh -s /usr/{pkg,local}/bin/lshell ຊື່ຜູ້ໃຊ້
ໃຊ້ lshell ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net