Wiki
Como criar wikis
- Na Helsinque
- Requisitos servidor
Baixar mediawiki no diretório /var/www/wikis/
cd /var/www/wikis
wget http://dumps.wikimedia.org/mediawiki/1.16/mediawiki-1.16.2.tar.gz
- Descompactar e alterar nome
tar -zxf mediawiki-1.16.2.tar.gz
cp -r mediawiki-1.15.0 nome_da_wiki_80 cp -r mediawiki-1.15.0 nome_da_wiki_ssl
- Alterar permissões
chown -R www-data.www-data /var/www/wikis/nome_da_wiki_80 chown -R www-data.www-data /var/www/wikis/nome_da_wiki_ssl
APACHE
- Criar arquivo
cd /etc/apache2/sites-available/
-- http
nano nome_da_wiki_80
Incluir:
<VirtualHost nome_da_wiki.if.ufrgs.br:80> ServerAdmin webadmin@if.ufrgs.br DocumentRoot /var/www/wikis/nome_da_wiki_80 <Directory /var/www/wikis/nome_da_wiki_80> Options Indexes FollowSymLinks AllowOverride None </Directory> ErrorLog /var/log/apache2/nome_da_wiki-error.log LogLevel warn CustomLog /var/log/apache2/nome_da_wiki-access.log combined </VirtualHost>
-- https
nano nome_da_wiki_ssl
Incluir:
<VirtualHost nome_da_wiki.if.ufrgs.br:443> ServerAdmin webadmin@if.ufrgs.br DocumentRoot /var/www/wikis/nome_da_wiki_ssl ServerName helsinque.if.ufrgs.br SSLEngine on RewriteEngine On SSLCertificateFile \ /etc/ssl/cominf.if.ufrgs.br.cert SSLCertificateKeyFile \ /etc/ssl/helsinque.if.ufrgs.br.key.unsecurity <Directory /var/www/wikis/nome_da_wiki_ssl> Options Indexes FollowSymLinks AllowOverride None </Directory> ErrorLog /var/log/apache2/nome_da_wiki-error.log LogLevel warn CustomLog /var/log/apache2/nome_da_wiki-access.log combined </VirtualHost>
- Criar link
cd /etc/apache2/sites-enabled ln -s ../sites-available/nome_da_wiki_ssl nome_da_wiki ln -s ../sites-available/nome_da_wiki_80 nome_da_wiki_80
- Reiniciar Serviço
/etc/init.d/apache2 restart
- Na gaya
DNS
- Editar dns
cd /etc/bind/dns-update/cnames vi cnames.txt
Incluir:
Nome_da_wiki CNAME helsinque (ou servidor de wikis atual)
- Reiniciar serviço
cd .. ./dns-update.sh
BANCO DE DADOS -
- Acessar banco
mysql -p (colocar senha do banco de dados)
- Criar Banco de dados
mysql>show databases; mysql>create database wiki_nome_da_wiki;
- Dar acesso ao usuário wiki_user ao banco criado
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,ALTER ON wiki_nome_da_wiki.* TO wiki_user@143.54.196.45;
- reiniciar serviço
/etc/init.d/mysql restart
- Na rosen
- Incluir arquivo na base LDAP com pessoas autorizadas a modificar a wiki. Ou seja, incluir um novo "entry" na árvore da base de dados do LDAP. Isto pode ser feito através do programa lbe.sh.
dn: cn=w_nome_da_wiki,ou=grupos,ou=dominio, dc=if gidNumber: 2503 memberUid: User userPassword:: e2NyeXB0fSo= objectClass: posixGroup objectClass: top cn: w_nome_da_wiki
ATENÇÃO: Colocar primeira letra em maiúscula no nome do usuário. Isto não é necessário na wiki.if.ufrgs.br, pois ela está utilizando uma nova versão da extensão LDAP Authentication ( >2.0 tem um LDAPLowercaseUsernameScheme).
- No browser
- Abrir o site da wiki feita para fazer a configuração
http://noma_da_wiki.if.ufrgs.br
- Algumas configurações:
wiki name: NOME DA WIKI contact e-mail webadmin@if.ufrgs.br Admin username: wiki_user Password: Object caching: No caching Database type: MySQL Database host: 143.54.196.2 Database name: wiki_nome_da_wiki DB username: wiki_user DB password (senha do usuário do banco de dados) Database table prefix: mw_
- Na helsique
- Após a finalização das configurações, um arquivo chamado LocalSettings.php será criado em /var/www/wikis/nome_da_wiki/config. Mover um diretório acima:
mv /var/www/wikis/nome_da_wiki/config/LocalSettings.php /var/www/wikis/nome_da_wiki/
- Incluir as linhas abaixo no arquivo LocalSettings.php com caminho do LDAP correto:
################################################################# $wgGroupPermissions['*']['edit'] = false; $wgGroupPermissions['*']['createaccount'] = false; require_once( 'LdapAuthentication.php' ); $wgAuth = new LdapAuthenticationPlugin(); #$wgLDAPUseLocal = true; $wgLDAPDomainNames = array( 'IF' ); $wgLDAPServerNames = array( 'IF' => '143.54.40.8' ); $wgLDAPSearchStrings = array( 'IF' => 'uid=USER-NAME,ou=usuarios,ou=dominio,dc=if' ); $wgLDAPEncryptionType = array( 'IF' => 'clear' ); ####################### $wgLDAPRequiredGroups = array( "IF"=>array("cn=w_nome_da_wiki,ou=grupos,ou=dominio,dc=if") ); $wgLDAPGroupUseFullDN = array( "IF"=>false ); $wgLDAPGroupObjectclass = array( "IF"=>"posixgroup" ); $wgLDAPGroupAttribute = array( "IF"=>"memberuid" ); $wgLDAPGroupSearchNestedGroups = array( "IF"=>false ); $wgLDAPGroupNameAttribute = array( "IF"=>"cn" ); $wgLDAPBaseDNs = array( "IF"=>"ou=dominio,dc=if" ); ####################### $wgMinimalPasswordLength = 1; $wgLDAPDebug = 3; $wgDebugLogGroups["ldap"] = "/tmp/debug.log" ; #################################################################
- Copiar o arquivo LdapAuthentication.php:
cp /root/LdapAuthentication.php /var/www/wikis/nome_da_wiki/includes/
- Alterar permissões
chown -R www-data.www-data /var/www/wikis/nome_da_wiki
chmod go-rw LocalSettings.php
Alterar wiki para Login seguro
languages/messages/MessagesPt_br.php linha 555
'loginprompt' => 'É necessário estar com os cookies ativados para poder autenticar-se na Instituto de Física - UFRGS.',
para
'loginprompt' => 'Direcionando para login seguro. Por favor, aguarde... ',
includes/templates/Userlogin.php
Na primeira linha:
<meta HTTP-EQUIV="REFRESH" content="0; url=https://pagina.if.ufrgs.br/index.php?title=Especial:Entrar&returnto=Especial:Entrar">
Ou (versão 1.23.4)
<meta HTTP-EQUIV="REFRESH" content="0; url=https://wiki.if.ufrgs.br/index.php?title=Especial:Autenticar-se&returnto=P%C3%A1gina+principal">
Isto pode variar de acordo com a versão da wiki.
Comentar linhas 36 a 42, 43 a 50, 57 a 65 e 68 a 77
Segunda forma de alterar wiki para Login seguro
Alterar as seguintes variáveis
$wgServer = "//wiki.if.ufrgs.br"; $wgSecureLogin = true;
Que estão em "includes/DefaultSettings.php"
Utilizando-se este método não é necessário dois folders com o código fonte da mediawiki como "nome_da_wiki_80" e "nome_da_wiki_ssl".